|
@@ -28,6 +28,8 @@ import org.springframework.stereotype.Service;
|
|
|
import java.net.URL;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@@ -47,7 +49,7 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
|
|
|
//获取宜搭审批实例详情(项目预算档案-根据项目负责人id判断)
|
|
|
@Override
|
|
|
- public List getXiangMuXX(String userid){
|
|
|
+ public List getXiangMuXX(String userid,String xmmcEQ){
|
|
|
// System.out.println("连接器传参过来的项目负责人id:" + userid);
|
|
|
//
|
|
|
// //list集合装载最终的集合
|
|
@@ -156,10 +158,50 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
// return list;
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
/*通过高级查询条件获取表单实例数据(不包括子表单组件数据)*/
|
|
|
System.out.println("连接器传参过来的项目负责人id:" + userid);
|
|
|
+ System.out.println("连接器传参过来的项目名称模糊搜索内容:" + xmmcEQ);
|
|
|
+
|
|
|
+ //封装查询条件
|
|
|
+ List listAll = new ArrayList();
|
|
|
+ //是否结算
|
|
|
+ Map map1 = new HashMap();
|
|
|
+ map1.put("key","selectField_lbf3y920");
|
|
|
+ map1.put("value","未结算");
|
|
|
+ map1.put("type","TEXT");
|
|
|
+ map1.put("operator","eq");
|
|
|
+ map1.put("componentName","selectField");
|
|
|
+ listAll.add(map1);
|
|
|
+
|
|
|
+ //判断模糊搜索内容是否包含中文(项目名称),包含为true,反之为false
|
|
|
+ Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
|
|
|
+ Matcher m = p.matcher(xmmcEQ);
|
|
|
+ if (m.find()) {
|
|
|
+ System.out.println("模糊搜索内容【包含中文】,进行【项目名称】查询~~~");
|
|
|
+
|
|
|
+ //项目名称
|
|
|
+ Map map2 = new HashMap();
|
|
|
+ map2.put("key","textField_lajb96s9");
|
|
|
+ map2.put("value",xmmcEQ);
|
|
|
+ map2.put("type","TEXT");
|
|
|
+ map2.put("operator","like");
|
|
|
+ map2.put("componentName","textField");
|
|
|
+ listAll.add(map2);
|
|
|
+ }else {
|
|
|
+ System.out.println("模糊搜索内容【不包含中文】,进行【项目编号】查询~~~");
|
|
|
+ //项目编号
|
|
|
+ Map map3 = new HashMap();
|
|
|
+ map3.put("key","textField_lakr1jwy");
|
|
|
+ map3.put("value",xmmcEQ);
|
|
|
+ map3.put("type","TEXT");
|
|
|
+ map3.put("operator","like");
|
|
|
+ map3.put("componentName","textField");
|
|
|
+ listAll.add(map3);
|
|
|
+ }
|
|
|
+
|
|
|
+ String jsonStr = JSON.toJSONString(listAll);
|
|
|
+ System.out.println("封装的查询参数:" + jsonStr);
|
|
|
+
|
|
|
|
|
|
//list集合装载最终的集合
|
|
|
List list = new ArrayList();
|
|
@@ -218,13 +260,7 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
//宜搭表单ID
|
|
|
.setFormUuid("FORM-CP766081DPN573HYBQCWJADYI6SB232G0RKALL")
|
|
|
//TODO 查询条件内容
|
|
|
- .setSearchCondition("[{\n" +
|
|
|
- " \"key\": \"selectField_lbf3y920\",\n" +
|
|
|
- " \"value\": \"未结算\",\n" +
|
|
|
- " \"type\": \"TEXT\",\n" +
|
|
|
- " \"operator\": \"eq\",\n" +
|
|
|
- " \"componentName\": \"selectField\"\n" +
|
|
|
- "}]")
|
|
|
+ .setSearchCondition(jsonStr)
|
|
|
// //宜搭应用编码
|
|
|
.setAppType("APP_UTWSE5WCXGWTUOEJ9E1D")
|
|
|
//宜搭应用秘钥
|
|
@@ -727,12 +763,13 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
public String createJBXX(String jbrid,
|
|
|
String kssj, String jssj,String jbsc,
|
|
|
String xmbh, String xmmc,
|
|
|
- String jbsy, String djbh){
|
|
|
+ String jbsy, String djbh, String xqpp){
|
|
|
|
|
|
System.out.println("创建人员ID(钉钉ID):" + jbrid +
|
|
|
"开始时间:" + kssj + "结束时间:" + jssj + "加班时长:" + jbsc +
|
|
|
"项目编号:" + xmbh + "项目名称:" + xmmc +
|
|
|
- "加班事由:" + jbsy + "单据编号:" + djbh);
|
|
|
+ "加班事由:" + jbsy + "单据编号:" + djbh +
|
|
|
+ "星期匹配:" + xqpp);
|
|
|
|
|
|
//将连接器传参过来的创建时间字符串转成毫秒级时间戳
|
|
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
|
@@ -784,6 +821,9 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
//报销状态
|
|
|
map.put("selectField_lbdkq8rj","未报销");
|
|
|
|
|
|
+ //星期选择
|
|
|
+ map.put("textField_lj3xhqv1",xqpp);
|
|
|
+
|
|
|
String mapJson = JSON.toJSONString(map);
|
|
|
System.out.println("mapJson:" + mapJson);
|
|
|
|
|
@@ -1589,4 +1629,39 @@ public class DingOaServiceImpl implements DingOaService {
|
|
|
|
|
|
return "同步【项目预算档案】完成!";
|
|
|
}
|
|
|
+
|
|
|
+ //延时申请单选择加班日期,匹配获取该日期是周几,填充到固定的文本控件
|
|
|
+ @Override
|
|
|
+ public Map getWeek(String jbsj){
|
|
|
+ System.out.println("获取的传参加班时间:" + jbsj);
|
|
|
+
|
|
|
+ Map map = new HashMap();
|
|
|
+
|
|
|
+ if (jbsj == null || jbsj.equals("")){
|
|
|
+ map.put("week",null);
|
|
|
+ }else {
|
|
|
+ String[] weekDays = {"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
|
|
|
+ //获取当前时间(yyyy-MM-dd)格式
|
|
|
+ String date = jbsj;
|
|
|
+ //转换为Date类型
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ Date date1 = null;
|
|
|
+ try {
|
|
|
+ date1 = sdf.parse(date);
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ //判断日期是星期几
|
|
|
+ Calendar cal = Calendar.getInstance();
|
|
|
+ cal.setTime(date1);
|
|
|
+ int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
|
|
|
+ if (w < 0)
|
|
|
+ w = 0;
|
|
|
+ System.out.println("获取当前时间对应的星期:" + weekDays[w]);
|
|
|
+
|
|
|
+ map.put("week",weekDays[w]);
|
|
|
+ }
|
|
|
+
|
|
|
+ return map;
|
|
|
+ }
|
|
|
}
|