Browse Source

1.更新集团总表项目组成员

WoNiu 4 years ago
parent
commit
321ca7cb52

+ 37 - 9
src/main/java/com/galaxis/manatee/task/ChuanyunBasicDataScheduledTask.java

@@ -202,6 +202,7 @@ public class ChuanyunBasicDataScheduledTask {
                         chuanyunGroupProjectDO.setIsCreate(projectDO.getIsCreate());
                         chuanyunGroupProjectDao.delete(tmpGroupProjectDO.get());
                     });
+                    projectMemberString(chuanyunGroupProjectDO);
                     //处理项目对象中的项目成员数据
                     projectMemberListCheck(chuanyunGroupProjectDO);
                     //处理项目对象中的项目经理、项目负责人数据
@@ -216,25 +217,42 @@ public class ChuanyunBasicDataScheduledTask {
         log.info("集团项目信息保存保存"+totalCount+"项目映射更新完成");
     }
 
-
+    public void projectMemberString(ChuanyunGroupProjectDO chuanyunGroupProjectDO){
+        var objectMapper=new ObjectMapper();
+        if(chuanyunGroupProjectDO.getProjectMemberList()!=null&&chuanyunGroupProjectDO.getProjectMemberList().length>0&&chuanyunGroupProjectDO.getProjectMemberList().length<500){
+            try {
+                ProjectMemberDTO groupProjectMemberListUpdateDTO=new ProjectMemberDTO();
+                //将项目组成员名称拼成字符串
+                String memberString = "";
+                for(int i=0;i<chuanyunGroupProjectDO.getProjectMemberList().length;i++){
+                    memberString+=chuanyunGroupProjectDO.getProjectMemberList()[i]+ StringConstant.SEMICOLON;
+                }
+                groupProjectMemberListUpdateDTO.setProjectMemberString(memberString);
+                var groupProjectMemberListUpdateString = objectMapper.writeValueAsString(groupProjectMemberListUpdateDTO);
+                ChuanyunSaveDTO chuanyunSaveDTO=chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),groupProjectMemberListUpdateString);
+                if (chuanyunSaveDTO.getSuccessful()){
+//                    log.info("更新项目组成员名称成功");
+                }
+            }catch (Exception e){
+                e.printStackTrace();
+                log.error(e.getMessage());
+            }
+        }
+    }
     /**
      * 更新项目成员方法
      * @param chuanyunGroupProjectDO    项目对象
      */
     private void projectMemberListCheck(ChuanyunGroupProjectDO chuanyunGroupProjectDO){
         var objectMapper=new ObjectMapper();
-        //将项目组成员名称拼成字符串
-        String memberString = "";
-        for(int i=0;i<chuanyunGroupProjectDO.getProjectMemberList().length;i++){
-            memberString+=chuanyunGroupProjectDO.getProjectMemberList()[i]+ StringConstant.SEMICOLON;
-        }
         //第一步,清除项目负责人、项目经理数据。保证能够触发权限修改流程
         GroupProjectMemberListUpdateDTO groupProjectMemberListUpdateDTO=new GroupProjectMemberListUpdateDTO(chuanyunGroupProjectDO);
-        groupProjectMemberListUpdateDTO.setProjectMemberString(memberString);
+
         if(groupProjectMemberListUpdateDTO.getProjectMemberList()!=null&&groupProjectMemberListUpdateDTO.getProjectMemberList().length>0){
+            //添加项目组成员权限
             groupProjectMemberListUpdateDTO.add();
             try {
-                chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),objectMapper.writeValueAsString(groupProjectMemberListUpdateDTO));
+                ChuanyunSaveDTO newChuanyunSaveDTO=chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),objectMapper.writeValueAsString(groupProjectMemberListUpdateDTO));
             } catch (Exception e) {
                 e.printStackTrace();
                 log.warn(chuanyunGroupProjectDO.getObjectId()+"更新项目成员失败"+e.getMessage());
@@ -977,6 +995,16 @@ public class ChuanyunBasicDataScheduledTask {
     }
 
     @Data
+    class ProjectMemberDTO{
+
+        @JsonProperty("F0000052")
+        private String projectMemberString;
+
+        @JsonProperty("F0000051")
+        private String projectMemberStringTest;
+    }
+
+    @Data
     static class GroupProjectMemberListUpdateDTO{
         /**
          * 项目组成员(前端传数据用)
@@ -984,7 +1012,7 @@ public class ChuanyunBasicDataScheduledTask {
         @JsonProperty("F0000034")
         private String[] projectMemberList;
 
-        @JsonProperty("F0000049")
+        @JsonProperty("F0000050")
         private String projectMemberString;
 
         public void add(){