Pārlūkot izejas kodu

职业技能根据部门名称查询部门

wzy 1 mēnesi atpakaļ
vecāks
revīzija
7fcf345c80

+ 3 - 1
src/main/java/com/malk/pro/zyjn/controller/TongbuController.java

@@ -33,9 +33,11 @@ public class TongbuController {
         return richeng;
     }
 
+    //查询会议申请”汇总参会部门“
     @PostMapping("/getUsersDepts")
     public McR getUsersDepts(@RequestBody Map map){
         List<String> userIds = (List<String>) map.get("userIds");
-        return tongbuService.getUsersDepts(userIds);
+        List<String> deptNames = (List<String>) map.get("deptNames");
+        return tongbuService.getUsersDepts(userIds,deptNames);
     }
 }

+ 1 - 1
src/main/java/com/malk/pro/zyjn/service/TongbuService.java

@@ -13,5 +13,5 @@ public interface TongbuService {
     //宜搭删除会议纪要后同步删除钉钉日程
     McR deleteRicheng(String formInstId, String createUserId, String dingdingRichengID);
 
-    McR getUsersDepts(List<String> userIds);
+    McR getUsersDepts(List<String> userIds,List<String> deptNames);
 }

+ 29 - 1
src/main/java/com/malk/pro/zyjn/service/impl/TongbuServiceImpl.java

@@ -734,9 +734,37 @@ public class TongbuServiceImpl implements TongbuService {
     }
 
     @Override
-    public McR getUsersDepts(List<String> userIds) {
+    public McR getUsersDepts(List<String> userIds,List<String> deptNames) {
         List<Map<String,String>> deptList = new ArrayList<>();
 
+        //根据部门名称查询部门
+        for (String deptName : deptNames) {
+            Map<String,Object> headers = new HashMap();
+            headers.put("x-acs-dingtalk-access-token",getAccessToken());
+
+            Map<String,Object> body = new HashMap<>();
+            body.put("queryWord",deptName);
+            body.put("offset",0);
+            body.put("size",1);
+
+            //查询部门id
+            String jsonString = UtilHttp.doPost("https://api.dingtalk.com/v1.0/contact/departments/search", headers,null , body);
+
+            Map result = (Map) JSONObject.parse(jsonString);
+
+            List<Integer> list = (List<Integer>) result.get("list");
+
+            if (!list.isEmpty()){
+                Map<String,String> dept = new HashMap<>();
+
+                dept.put("text",deptName);
+                dept.put("value",list.get(0) + "");
+
+                deptList.add(dept);
+            }
+        }
+
+        //根据汇总全部参会成员查询部门
         for (String userId : userIds) {
             Map<String,Object> param = new HashMap();
             param.put("access_token",getAccessToken());