Sfoglia il codice sorgente

终止流程接口开发

wzy 6 mesi fa
parent
commit
36ec68d140

+ 10 - 0
mjava-lingmingguangzi/src/main/java/com/malk/lingmingguangzi/controller/LingmingguangziController.java

@@ -191,4 +191,14 @@ public class LingmingguangziController {
         lingmingguangziService.updateTaxRate();
         return McR.success();
     }
+
+    /**
+     * 终止流程
+     * @param map
+     * @return
+     */
+    @PostMapping("/stopProcess")
+    public McR stopProcess(@RequestBody Map map) {
+        return lingmingguangziService.stopProcess(map);
+    }
 }

+ 2 - 0
mjava-lingmingguangzi/src/main/java/com/malk/lingmingguangzi/service/LingmingguangziService.java

@@ -47,4 +47,6 @@ public interface LingmingguangziService {
     McR createTbProject(Map map);
 
     McR addContacts(Map map);
+
+    McR stopProcess(Map map);
 }

+ 31 - 5
mjava-lingmingguangzi/src/main/java/com/malk/lingmingguangzi/service/LingmingguangziServiceImpl.java

@@ -1213,12 +1213,12 @@ public class LingmingguangziServiceImpl implements LingmingguangziService {
         }
 
         if (Strings.isNullOrEmpty(projectId)){
-            Map map = new HashMap();
+            /*Map map = new HashMap();
             map.put("url","https://open.teambition.com/api/v3/project/query");
             map.put("headers",initHeaderToken());
             map.put("params",UtilMap.map("name", projectName));
-            Map map1 = (Map) JSON.parse(UtilHttp.doPost("http://127.0.0.1:9900/api/mc/query/get",null,null,map));
-
+            Map map1 = (Map) JSON.parse(UtilHttp.doPost("https://mc.cloudpure.cn/api/mc/request/get",null,null,map));
+            List<Map> projectList = (List<Map>)map1.get("result");*/
 
 
             TBR projectTbr = (TBR) UtilHttp.doGet("https://open.teambition.com/api/v3/project/query", initHeaderToken(), UtilMap.map("name", projectName), TBR.class);
@@ -1363,6 +1363,32 @@ public class LingmingguangziServiceImpl implements LingmingguangziService {
         return McR.success();
     }
 
+    @Override
+    public McR stopProcess(Map map) {
+        if (Objects.isNull(map.get("formInstId"))){
+            return McR.errorParam("formInstId不能为空");
+        }
+        String formInstId = map.get("formInstId").toString();
+        //查询发起人信息
+        DDR_New ddrNew = ydClient.queryData(YDParam.builder()
+                .formInstId(formInstId)
+                .build(), YDConf.FORM_QUERY.retrieve_id);
+
+        Map originator = ddrNew.getOriginator();
+        String userId = originator.get("userId").toString();
+        //中止流程
+        Map params = new HashMap();
+        params.put("processInstanceId", formInstId);
+        params.put("userId", userId);
+        params.put("appType", ydConf.getAppType());
+        params.put("systemToken", ydConf.getSystemToken());
+
+
+        String result = UtilHttp.doPut("https://api.dingtalk.com/v1.0/yida/processes/instances/terminate", ddClient.initTokenHeader(),params, (Map) null);
+
+        return McR.success(result);
+    }
+
     @Override
     public McR getTbStageDetails(String projectName,String projectId,String parentTaskId) {
         Map<String,Object> stageDetail = new HashMap<>();
@@ -1371,11 +1397,11 @@ public class LingmingguangziServiceImpl implements LingmingguangziService {
             return McR.errorParam("项目名称或父任务id不能为空!");
         }
         if (Strings.isNullOrEmpty(projectId)){
-            Map map = new HashMap();
+            /*Map map = new HashMap();
             map.put("url","https://open.teambition.com/api/v3/project/query");
             map.put("headers",initHeaderToken());
             map.put("params",UtilMap.map("name", projectName));
-            Map map1 = (Map) JSON.parse(UtilHttp.doPost("127.0.0.1:9900/api/mc/query/get",null,null,map));
+            Map map1 = (Map) JSON.parse(UtilHttp.doPost("127.0.0.1:9900/api/mc/query/get",null,null,map));*/
             TBR projectTbr = (TBR) UtilHttp.doGet("https://open.teambition.com/api/v3/project/query", initHeaderToken(), UtilMap.map("name", projectName), TBR.class);
             List<Map> projectList = (List<Map>) projectTbr.getResult();
             if (projectList.isEmpty()){

+ 1 - 1
mjava-mc/src/main/resources/application.yml

@@ -1,6 +1,6 @@
 spring:
   profiles:
-    active: dev
+    active: prod
   servlet:
     multipart:
       max-file-size: 100MB