pruple_boy 1 年之前
父节点
当前提交
033f4c91de

+ 8 - 2
mjava-aiwei/src/main/java/com/malk/aiwei/controller/TBxYDController.java

@@ -270,12 +270,18 @@ public class TBxYDController {
         log.info("test, {}", data);
 
         awClint.test();
+
+//        ydClient.operateData(YDParam.builder()
+//                .formInstanceId("9d204da7-b01e-4bd9-a673-acb9b64b0e61")
+//                .updateFormDataJson(JSON.toJSONString(UtilMap.map("radioField_lu9yf7vg", "否")))
+//                .useLatestVersion(true)
+//                .build(), YDConf.FORM_OPERATION.update);
         return McR.success();
     }
 
     @GetMapping("tmp")
     McR tmp(String programIds) {
-
-        return McR.success(tbClient.queryProgramList_all());
+        
+        return McR.success();
     }
 }

+ 15 - 4
mjava-aiwei/src/main/java/com/malk/aiwei/service/impl/AWImplClient.java

@@ -85,7 +85,7 @@ public class AWImplClient implements AWClint {
         String pCode = UtilMap.getString(data, "projectId");
         String creatorId = UtilMap.getString(data, "creatorId");
         String taskId = UtilMap.getString(data, "taskId");
-        Map taskData = _getTaskFieldMap(UtilMap.getString(data, "taskId"), AWServer.TASK_CODE, AWServer.TASK_APPROVE_ATTACHMENT, AWServer.TASK_APPROVE_DESC);
+        Map taskData = _getTaskFieldMap(UtilMap.getString(data, "taskId"), AWServer.TASK_CODE, AWServer.TASK_APPROVE_ATTACHMENT, AWServer.TASK_APPROVE_DESC, AWServer.TASK_PRODUCT, AWServer.TASK_PRODUCT_VERSION);
         String tCode = UtilMap.getString(taskData, AWServer.TASK_CODE);
         // 工作流tb虽然配置了流转逻辑, 冗余稳定性
         List<Map> formList = (List<Map>) ydClient.queryData(YDParam.builder()
@@ -126,7 +126,9 @@ public class AWImplClient implements AWClint {
                 formData.put("textField_lqxuc9m4", UtilMap.getString(rProject, "textareaField_lrj7vnxl"));          // 项目描述
                 formData.put("employeeField_ltzn872j", UtilMap.getString(rProject, "employeeField_ltzn872j_id"));   // 项目经理 0402 控制矩阵角色为空, 流转到PM
                 formData.put("textField_ltwcq7s6", UtilMap.getString(rProject, "textField_ltwcq7s6"));              // 项目类型
-                formData.put("textareaField_lw0nmvko", UtilMap.getString(taskData, AWServer.TASK_APPROVE_DESC));    // 交付件描述
+                formData.put("textareaField_lw0nmvko", UtilMap.getString(taskData, AWServer.TASK_APPROVE_DESC));         // 交付件描述
+                formData.put("textField_lvbrueqs", UtilMap.getString(taskData, AWServer.TASK_PRODUCT));                  // 产品型号
+                formData.put("textField_lvbrueqt", UtilMap.getString(taskData, AWServer.TASK_PRODUCT_VERSION));          // 产品版本
                 // 匹配任务编码与项目角色
                 List<Map<String, String>> compIds = Arrays.asList(  // 任务表角色, 交付物评审表: 角色, 审批人
                         UtilMap.map("tsRole, prRole, prEmp", "multiSelectField_lrokzlo7, multiSelectField_lrokzlo7, employeeField_lqxtebtw"),
@@ -598,8 +600,17 @@ public class AWImplClient implements AWClint {
             updateProjectRole(projectId, Arrays.asList("全部", "自动更新"));
         }
         // prd 5.23 更新项目概览信息
-        tbClient.updateProjectStatusField(projectId, tbConf.getOperatorId(), TBConf.assembleCustomFieldName("项目描述", UtilMap.getString(formData, "textareaField_lrj7vnxl")));
-        tbClient.updateProjectStatusField(projectId, tbConf.getOperatorId(), TBConf.assembleCustomFieldName("项目重要等级", UtilMap.getString(formData, "textField_lwj1r7n6")));
+        if (isCreate) {
+            tbClient.updateProjectStatusField(projectId, tbConf.getOperatorId(), TBConf.assembleCustomFieldName("项目描述", UtilMap.getString(formData, "textareaField_lrj7vnxl")));
+            tbClient.updateProjectStatusField(projectId, tbConf.getOperatorId(), TBConf.assembleCustomFieldName("项目重要等级", UtilMap.getString(formData, "textField_lwj1r7n6")));
+        }
+        // 项目添加到项目集
+        List<Map> groupList = tbClient.queryProgramList_all();
+        Optional optional = groupList.stream().filter(item -> groupName.equals(item.get("name"))).findAny();
+        if (optional.isPresent()) {
+            tbClient.upsertProgramProject(UtilMap.getString((Map) optional.get(), "id"), Arrays.asList(projectId), tbConf.getOperatorId());
+        }
+        
         log.info("TB项目信息, {}, {}", projectId, roleIds.size());
     }
 

+ 1 - 0
mjava-cloudpure/src/main/java/com/malk/cloudpure/controller/GTZZController.java

@@ -107,6 +107,7 @@ public class GTZZController {
         return McR.success(vkClient.getRecords("dst6ip677mZUxCnLiS", data));
     }
 
+
 }
 
 

+ 4 - 1
mjava-fengkaili/src/main/java/com/malk/fengkaili/service/impl/FKLImplService.java

@@ -208,7 +208,6 @@ public class FKLImplService implements FKLService {
                         columnIds.put(column.get("id").toString(), column.get("name"));
                         return false;
                     }
-
                     return column.get("alias").equals("leave_");
                 }
         ).map(column -> String.valueOf(column.get("name"))).collect(Collectors.toList());
@@ -232,6 +231,10 @@ public class FKLImplService implements FKLService {
                         index++;
                         String date = val.get("date").replace(" 00:00:00", "").replace(LocalDate.now().getYear() + "-", "");
                         String result = val.get("value").replace("休息并打卡,", "").replace("休息,", ""); // 休息有外出/出差;
+                        // prd 5.27 人员到岗后, 未办理入职但已经有出差
+                        if (result.contains("不在考勤组并打卡") && !result.equals("不在考勤组并打卡")) {
+                            result = result.replace("不在考勤组并打卡,", "");
+                        }
                         log.info("人员明细, {} - {}, {}", date, po.getName(), val.get("value"));
                         String day_1 = "zc", day_2 = "zc", type = "zc"; // 异常类型
                         if (result.contains("休息") || result.contains("加班") || (val.get("value").contains("休息,") && (!result.contains("出差") && !result.contains("婚假") && !result.contains("产假")))) {

+ 25 - 0
mjava-hake/src/main/java/com/malk/hake/controller/HKController.java

@@ -150,4 +150,29 @@ public class HKController {
                 .build(), YDConf.FORM_OPERATION.update);
         return McR.success();
     }
+
+
+    //////////// ----------------------------------------------------------------
+
+    @GetMapping("version")
+    McR version() {
+
+        /// 哈克
+//        String instanceId = "31e7bd1a-7f06-444e-af56-90f8ffa1c8d3";
+//        String appType = "APP_ERBDTFS82HOVBPL3NFH0";
+//        String systemToken = "RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP";
+
+        String instanceId = "31e7bd1a-7f06-444e-af56-90f8ffa1c8d3";
+        String appType = "APP_ERBDTFS82HOVBPL3NFH0";
+        String systemToken = "RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP";
+
+        ydClient.operateData(YDParam.builder()
+                .appType(appType)
+                .systemToken(systemToken)
+                .formInstanceId(instanceId)
+                .updateFormDataJson(JSON.toJSONString(UtilMap.map("textareaField_lr383i3y", "")))
+                .useLatestVersion(true)
+                .build(), YDConf.FORM_OPERATION.update);
+        return McR.success();
+    }
 }

+ 2 - 2
mjava/src/main/java/com/malk/service/teambition/TBClient.java

@@ -245,7 +245,7 @@ public interface TBClient {
     List<Map> queryProgramList(String programIds);
 
     /**
-     * 查询项目集 [ppExt: post请求, 获取全量项目集后, 通过name匹配. get请求内id必填, 名称查询无实际用途]
+     * 查询项目集 [ppExt: post请求, 获取全量项目集后, 通过name匹配. get请求内id必填, 名称查询无实际用途] - 分页返回上限数量为50
      *
      * @apiNote https://open.teambition.com/docs/apis/64e810fe912d20d3b58f9ff9
      */
@@ -256,7 +256,7 @@ public interface TBClient {
      *
      * @apiNote https://open.teambition.com/docs/apis/64e810fe912d20d3b58f9ff9
      */
-    List<Map> upsertProgramProject(String programId, List<String> projectIds);
+    List<Map> upsertProgramProject(String programId, List<String> projectIds, String operatorId);
 
     /**
      * 查询项目概览自定义字段列表

+ 3 - 4
mjava/src/main/java/com/malk/service/teambition/impl/TBClientImpl.java

@@ -351,14 +351,13 @@ public class TBClientImpl implements TBClient {
 
     @Override
     public List<Map> queryProgramList_all() {
-        Map param = UtilMap.map("programIds", "662a786a901e5230b989b54d");
-        TBR tbr = (TBR) UtilHttp.doPost(tbConf.getApiHost() + "/v3/program/query", initHeaderToken(), param, null, TBR.class);
+        TBR tbr = (TBR) UtilHttp.doPost(tbConf.getApiHost() + "/v3/program/query", initHeaderToken(), null, null, TBR.class);
         return (List<Map>) tbr.getResult();
     }
 
     @Override
-    public List<Map> upsertProgramProject(String programId, List<String> projectIds) {
-        TBR tbr = (TBR) UtilHttp.doPost(tbConf.getApiHost() + "v3/program/" + programId + "/project/create", initHeaderToken(), UtilMap.map("projectIds", projectIds), TBR.class);
+    public List<Map> upsertProgramProject(String programId, List<String> projectIds, String operatorId) {
+        TBR tbr = (TBR) UtilHttp.doPost(tbConf.getApiHost() + "v3/program/" + programId + "/project/create", initHeaderToken(operatorId), UtilMap.map("projectIds", projectIds), TBR.class);
         return (List<Map>) tbr.getResult();
     }