Explorar o código

企业微信通讯录导出转译

yurk %!s(int64=2) %!d(string=hai) anos
pai
achega
5c9baaecd6

+ 3 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/User.java

@@ -242,6 +242,9 @@ public class User extends Model<User> {
     @TableField("corpwx_deptid")
     private Integer corpwxDeptid;
 
+    @TableField(exist = false)
+    private String type;
+
 
     @Override
     protected Serializable pkVal() {

+ 1 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/vo/DepartmentMasterVO.java

@@ -14,4 +14,5 @@ public class DepartmentMasterVO extends Department {
     private Double costTime;
     private BigDecimal costMoney;
     private boolean hasSubDept;
+    private String type;
 }

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/WxCorpInfoService.java

@@ -38,7 +38,7 @@ public interface WxCorpInfoService extends IService<WxCorpInfo> {
 
     public String getTranslationMediaId(String fileName) throws Exception;
 
-    public String syncTranslation(String mediaId,String outPutFileName,String outputFileFormat) throws Exception;
+    public String syncTranslation(String authCorpid,String mediaId,String outPutFileName,String outputFileFormat) throws Exception;
 
     public String getSyncTranslationResult(String jobId) throws Exception;
 }

+ 3 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/DepartmentServiceImpl.java

@@ -425,6 +425,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
                 totalCostMoney = totalCostMoney.add(money);
                 departmentMasterVO.setCostTime(time);
                 departmentMasterVO.setCostMoney(money);
+                departmentMasterVO.setType("departmentName");
                 //检查是否有子部门
                 if (allDeptList.stream().anyMatch(dept->department.getDepartmentId().equals(dept.getSuperiorId()))) {
                     departmentMasterVO.setHasSubDept(true);
@@ -522,6 +523,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
                     user.setId((String)map.get(("id")));
                     user.setName((String)map.get("user"));
                     user.setJobNumber((String)map.get("jobNumber"));
+                    user.setType("userName");
                     userList.add(user);
                     //这个名字尚未装进数组中
                     List<Map<String, Object>> tempList = new ArrayList<>();
@@ -544,6 +546,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
                 Map<String, Object> map = new HashMap<>();
                 map.put("name", key);
                 map.put("project", tempMap.get(key));
+                map.put("type","userName");
                 finalList.add(map);
             }
             finalMap.put("totalCostMoney", totalCostMoney);

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/UserServiceImpl.java

@@ -1499,7 +1499,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
             fos.close();
             if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
                 String mediaId = wxCorpInfoService.getTranslationMediaId(fileUrlSuffix);
-                String jobId = wxCorpInfoService.syncTranslation(mediaId,fileUrlSuffix, null);
+                String jobId = wxCorpInfoService.syncTranslation(wxCorpInfo.getCorpid(),mediaId,fileUrlSuffix, null);
             /*if(jobId!=null&&!jobId.equals("")){
                 File file=new File(path + fileUrlSuffix);
                 if(file.exists()){

+ 5 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/WxCorpInfoServiceImpl.java

@@ -146,7 +146,7 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
 
     //异步通讯录id转译
     @Override
-    public String syncTranslation(String mediaId,String outPutFileName,String outputFileFormat) throws Exception {
+    public String syncTranslation(String authCorpid, String mediaId,String outPutFileName,String outputFileFormat) throws Exception {
         String url = "https://qyapi.weixin.qq.com/cgi-bin/service/contact/id_translate?provider_access_token=ACCESS_TOKEN".replaceAll("ACCESS_TOKEN",getProviderAccessToken());
         HttpHeaders headers = new HttpHeaders();
         List<String> list=new ArrayList<>();
@@ -154,9 +154,9 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
         String jobid="";
         headers.setContentType(MediaType.APPLICATION_JSON);
         JSONObject jsonObject=new JSONObject();
-        jsonObject.put("auth_corpid",corpId);
+        jsonObject.put("auth_corpid",authCorpid);
         jsonObject.put("media_id_list",list);
-        jsonObject.put("output_file_name",outPutFileName);
+        /*jsonObject.put("output_file_name",outPutFileName);*/
         /*jsonObject.put("output_file_format",outputFileFormat);*/
         HttpEntity<String> requestEntity = new HttpEntity<String>(jsonObject.toJSONString(), headers);
         ResponseEntity<String> responseEntity = this.restTemplate.exchange(url,
@@ -184,6 +184,7 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
         ResponseEntity<String> responseEntity = this.restTemplate.exchange(url,
                 HttpMethod.GET, requestEntity, String.class);
         String resp = responseEntity.getBody();
+        System.out.println(resp);
         JSONObject json = JSONObject.parseObject(resp);
         if(json.getIntValue("errcode")==0){
             JSONObject result = (JSONObject) json.get("result");
@@ -192,6 +193,7 @@ public class WxCorpInfoServiceImpl extends ServiceImpl<WxCorpInfoMapper, WxCorpI
         }else {
             throw new Exception(json.toJSONString());
         }
+        System.out.println(resultUrl);
         return resultUrl;
     }
     @Override