3 Ревизии f04b66a0a3 ... d23ee540d8

Автор SHA1 Съобщение Дата
  lfx d23ee540d8 1 преди 1 седмица
  lfx 3f8e17f3b5 1 преди 2 седмици
  lfx 579f1a45fb 1 преди 2 седмици

+ 21 - 14
mjava-hangshi/src/main/java/com/malk/hangshi/service/Impl/PayServiceImpl.java

@@ -254,12 +254,12 @@ public class PayServiceImpl implements PayService {
 
             dataList = ydService.queryFormData_all(_initLYParam()
                     .formUuid("FORM-651D1713A25E423FB4EC1A5A06A7A741QWEY")
-                    .searchFieldJson(JSON.toJSONString(UtilMap.map("selectField_mjgj9non", "下属公司")))
+                    .searchFieldJson(JSON.toJSONString(UtilMap.map("selectField_mjgj9non, radioField_mjgsdrat", "下属公司","开启")))
                     .build());
         }else {
             dataList = ydService.queryFormData_all(_initLYParam()
                     .formUuid("FORM-651D1713A25E423FB4EC1A5A06A7A741QWEY")
-                    .searchFieldJson(JSON.toJSONString(UtilMap.map("departmentSelectField_mjgqcjsw", department.get(0))))
+                    .searchFieldJson(JSON.toJSONString(UtilMap.map("departmentSelectField_mjgqcjsw, radioField_mjgsdrat", department.get(0),"开启")))
                     .build());
         }
         dataList.forEach(e->{
@@ -274,6 +274,8 @@ public class PayServiceImpl implements PayService {
             formData.put("employeeField_mji9tann",UtilMap.getList(formData, "employeeField_mji9tann_id"));
             formData.put("employeeField_mji9tany",UtilMap.getList(formData, "employeeField_mji9tany_id"));
             formData.put("employeeField_mji9tao9",UtilMap.getList(formData, "employeeField_mji9tao9_id"));
+            formData.put("departmentSelectField_mkkjlg1x",UtilMap.getList(formData, "departmentSelectField_mkkjlg1x_id"));
+            formData.put("departmentSelectField_mkkjlg1y",UtilMap.getList(formData, "departmentSelectField_mkkjlg1y_id"));
             formData.put(EMPLOYEE_ENUM.get(UtilMap.getString(e,"selectField_mjgj9non")),issueEmployee);
             /*发起流程*/
             if (depType.equals("班组")){
@@ -285,7 +287,7 @@ public class PayServiceImpl implements PayService {
 
                 final String[] content = {""};
                 if (mapList1.size()>0 && ObjectUtil.isNotNull(mapList1)){
-                    content[0] = content[0] + "(一)运行控制 ";
+                    content[0] = content[0] + "(一)运行控制 \n";
                     mapList1.forEach(e1->{
                         e1.forEach((k,v)->{
                             content[0] = content[0] + v;
@@ -293,7 +295,7 @@ public class PayServiceImpl implements PayService {
                     });
                 }
                 if (mapList2.size()>0 && ObjectUtil.isNotNull(mapList2)) {
-                    content[0] = content[0] + "(二)安全生产 ";
+                    content[0] = content[0] + "\n(二)安全生产 \n";
                     mapList2.forEach(e1 -> {
                         e1.forEach((k, v) -> {
                             content[0] = content[0] + v;
@@ -301,7 +303,7 @@ public class PayServiceImpl implements PayService {
                     });
                 }
                 if (mapList3.size()>0 && ObjectUtil.isNotNull(mapList3)) {
-                    content[0] = content[0] + "(三)质量控制 ";
+                    content[0] = content[0] + "\n(三)质量控制 \n";
                     mapList3.forEach(e1 -> {
                         e1.forEach((k, v) -> {
                             content[0] = content[0] + v;
@@ -318,6 +320,11 @@ public class PayServiceImpl implements PayService {
                         .formDataJson(JSON.toJSONString(formData))
                         .build(), YDConf.FORM_OPERATION.start);
             }else {
+                if(depType.equals("下属公司")){
+                    formData.put("departmentSelectField_mkkjlg1x",issueDepartment);
+                }else if(depType.equals("一线部门")){
+                    formData.put("departmentSelectField_mkkjlg1y",issueDepartment);
+                }
                 ydClient.operateData(_initLYParam()
                         .formUuid("FORM-609926407D9D4CABB771228200AEE57EKGSE")
                         .formDataJson(JSON.toJSONString(formData))
@@ -335,13 +342,13 @@ public class PayServiceImpl implements PayService {
         log.info("开始执行插入AI表格");
         LocalDate today = LocalDate.now();
         String dateStr = today.format(formatter);
-        List<Map> mapList1 = (List<Map>) formData.get(OPERATION_CONTROL.get("投资公司"));
-        List<Map> mapList2 = (List<Map>) formData.get(WORK_SAFETY.get("投资公司"));
-        List<Map> mapList3 = (List<Map>) formData.get(QUALITY_CONTROL.get("投资公司"));
+        List<Map> mapList1 = UtilMap.getList(formData,OPERATION_CONTROL.get("投资公司"));
+        List<Map> mapList2 = UtilMap.getList(formData,WORK_SAFETY.get("投资公司"));
+        List<Map> mapList3 = UtilMap.getList(formData,QUALITY_CONTROL.get("投资公司"));
 
         final String[] content = {""};
         if (mapList1.size()>0 && ObjectUtil.isNotNull(mapList1)){
-            content[0] = content[0] + "(一)运行控制 ";
+            content[0] = content[0] + "(一)运行控制 \n";
             mapList1.forEach(e->{
                 e.forEach((k,v)->{
                     content[0] = content[0] + v;
@@ -349,7 +356,7 @@ public class PayServiceImpl implements PayService {
             });
         }
         if (mapList2.size()>0 && ObjectUtil.isNotNull(mapList2)) {
-            content[0] = content[0] + "(二)安全生产 ";
+            content[0] = content[0] + "\n(二)安全生产 \n";
             mapList2.forEach(e -> {
                 e.forEach((k, v) -> {
                     content[0] = content[0] + v;
@@ -357,7 +364,7 @@ public class PayServiceImpl implements PayService {
             });
         }
         if (mapList3.size()>0 && ObjectUtil.isNotNull(mapList3)) {
-            content[0] = content[0] + "(三)质量控制 ";
+            content[0] = content[0] + "\n(三)质量控制 \n";
             mapList3.forEach(e -> {
                 e.forEach((k, v) -> {
                     content[0] = content[0] + v;
@@ -406,17 +413,17 @@ public class PayServiceImpl implements PayService {
                 if (sonList.size() > 0 && ObjectUtil.isNotNull(sonList)){
                     if("运行控制".equals(type)){
                         sonList.forEach(s->{
-                            s.put("textareaField_mjavj2r7",UtilMap.getString(s,"textareaField_mj9dnvr8"));
+                            s.put("textareaField_mjavj2r7",UtilMap.getString_default(s,"textareaField_mj9dnvr8","-"));
                         });
                         formData.put("tableField_mjavj2r6",sonList);
                     }else if ("安全生产".equals(type)) {
                         sonList.forEach(s->{
-                            s.put("textareaField_mjgiipmy",UtilMap.getString(s,"textareaField_mj9dnvr8"));
+                            s.put("textareaField_mjgiipmy",UtilMap.getString_default(s,"textareaField_mj9dnvr8","-"));
                         });
                         formData.put("tableField_mjgiipn0",sonList);
                     } else if ("质量控制".equals(type)) {
                         sonList.forEach(s->{
-                            s.put("textareaField_mjgiipn2",UtilMap.getString(s,"textareaField_mj9dnvr8"));
+                            s.put("textareaField_mjgiipn2",UtilMap.getString_default(s,"textareaField_mj9dnvr8","-"));
                         });
                         formData.put("tableField_mjgiipn4",sonList);
                     }

+ 1 - 1
mjava-hangshi/src/main/resources/application-dev.yml

@@ -1,6 +1,6 @@
 # 环境配置
 server:
-  port: 8108
+  port: 9000
   servlet:
     context-path: /api/hangshi
 

+ 54 - 6
mjava-hangshi/src/test/java/test.java

@@ -1,9 +1,12 @@
+import com.alibaba.fastjson.JSONObject;
 import com.malk.hangshi.Boot;
 import com.malk.hangshi.service.Impl.PayServiceImpl;
+import com.malk.server.aliwork.YDConf;
+import com.malk.server.aliwork.YDParam;
 import com.malk.server.dingtalk.DDConf;
-import com.malk.service.dingtalk.DDClient;
-import com.malk.service.dingtalk.DDClient_Event;
-import com.malk.service.dingtalk.DDClient_Workflow;
+import com.malk.service.aliwork.YDClient;
+import com.malk.service.dingtalk.*;
+import com.malk.utils.UtilMap;
 import lombok.extern.slf4j.Slf4j;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -12,7 +15,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
-import java.util.Map;
+import java.util.*;
 
 @Slf4j
 @RunWith(SpringRunner.class)
@@ -33,11 +36,56 @@ public class test {
     private String APP_EKY;
     @Value("${dingtalk.appSecret}")
     private String APP_SECRET;
+    @Autowired
+    private YDClient ydClient;
+
+    @Autowired
+    private DDClient_Contacts ddClient_contacts;
+
     @Test
     public void sonUpdateTest(){
 
-        Map processData = ddClient_workflow.getProcessInstanceId(ddClient.getAccessToken(APP_EKY, APP_SECRET), "Zd7HDIdGTkiGFFtsoHkg3A03891763390051");
+//        Map processData = ddClient_workflow.getProcessInstanceId(ddClient.getAccessToken(APP_EKY, APP_SECRET), "Zd7HDIdGTkiGFFtsoHkg3A03891763390051");
+//
+//        System.out.println(processData);
+
+        syncDept(98531089,false);
+
+    }
 
-        System.out.println(processData);
+    public void syncDept(long deptId,boolean isNeedKS){
+        List<Map> list = ddClient_contacts.listSubDepartmentDetail(ddClient.getAccessToken(), deptId);
+        for (Map map : list) {
+            System.out.println(map.toString());
+            long subDeptId = UtilMap.getLong(map,"dept_id");
+            String subDeptName = UtilMap.getString(map,"name");
+            String selectField_mjgj9non = "班组";
+            Map formData=new HashMap();
+            if(isNeedKS){
+                syncDept(subDeptId,false);
+                selectField_mjgj9non = "室";
+            }else {
+                formData.put("radioField_mke10pcc",subDeptName.contains("外包")?"外包":"班组");
+            }
+            List<String> strings = ddClient_contacts.listDepartmentUserId(ddClient.getAccessToken(), subDeptId);
+            List<String> admins =new ArrayList<>();
+            for(String string : strings){
+                Map userInfo = ddClient_contacts.getUserInfoById(ddClient.getAccessToken(), string);
+                List<Map> leader_in_dept = UtilMap.getList(userInfo,"leader_in_dept");
+                for(Map leader : leader_in_dept){
+                    if(UtilMap.getString(leader,"dept_id").equals(String.valueOf(subDeptId))&&UtilMap.getBoolean(leader,"leader")){
+                        admins.add(string);
+                    }
+                }
+            }
+            formData.put("selectField_mjgj9non",selectField_mjgj9non);
+            formData.put("employeeField_mjgj9noh",admins);
+            formData.put("departmentSelectField_mjgj9noi", Arrays.asList(String.valueOf(subDeptId)));
+            formData.put("departmentSelectField_mjgqcjsw",Arrays.asList(String.valueOf(deptId)));
+            formData.put("radioField_mjgsdrat","开启");
+            System.out.println(formData.toString());
+            ydClient.operateData(YDParam.builder().appType("APP_PG9VWQVT23CRFBOOOG6Y")
+                    .systemToken("73D66971EQO1KI40NT9M96FHV3BK3CZNBQGJMWX1").formUuid("FORM-651D1713A25E423FB4EC1A5A06A7A741QWEY").formDataJson(JSONObject.toJSONString(formData)).build(), YDConf.FORM_OPERATION.create);
+        }
     }
 }