Jelajahi Sumber

1.新增为项目添加所有ebg成员

WoNiu 5 tahun lalu
induk
melakukan
191cae9e7d

+ 7 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunCompanyDao.java

@@ -11,4 +11,11 @@ import org.springframework.stereotype.Repository;
  */
 @Repository
 public interface ChuanyunCompanyDao extends GalaxisRepository<ChuanyunCompanyDO,String> {
+
+    /**
+     * 根据id获取详情
+     * @param id
+     * @return
+     */
+    ChuanyunCompanyDO findByObjectId(String id);
 }

+ 19 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunGroupProjectDO.java

@@ -94,6 +94,25 @@ public class ChuanyunGroupProjectDO extends BasicDO {
     private String ebgProjectManager;
 
     /**
+     * 项目组成员(前端传数据用)
+     */
+    @Transient
+    @JsonProperty("F0000034")
+    private String[] projectMemberlist;
+
+    /**
+     * 项目组成员
+     */
+    private String projectMember;
+
+    /**
+     * 项目组成员对象
+     */
+    @Transient
+    @JsonProperty("F0000034Object")
+    private List<ChuanyunObject> projectMemberObject;
+
+    /**
      * 项目总监数据对象
      */
     @Transient

+ 22 - 0
src/main/java/com/galaxis/manatee/task/ChuanyunBasicDataScheduledTask.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.galaxis.capsule.bo.ChuanyunObject;
 import com.galaxis.manatee.constant.ChuanYunConstant;
 import com.galaxis.manatee.dao.*;
 import com.galaxis.manatee.entity.chuanyun.data.object.*;
@@ -133,6 +134,14 @@ public class ChuanyunBasicDataScheduledTask {
                     if(!StringUtils.isEmpty(chuanyunGroupProjectDO.getProjectOwner())){
                         chuanyunGroupProjectDO.setProjectOwner(chuanyunGroupProjectDO.getProjectOwnerObject().getObjectId());
                     }
+                    //将项目组成员projectMember替换为主键
+                    if (chuanyunGroupProjectDO.getProjectMemberlist()!= null) {
+                        var idlist = "";
+                        for (ChuanyunObject chuanyunObject: chuanyunGroupProjectDO.getProjectMemberObject()) {
+                            idlist += chuanyunObject.getObjectId()+";";
+                        }
+                        chuanyunGroupProjectDO.setProjectMember(idlist);
+                    }
                     //通过更新集团项目中的EBG项目经理、IBG项目经理
                     //TODO 测试结束后需要扩大范围到所有项目
                     if ("实施".equals(chuanyunGroupProjectDO.getProjectType())&&"EBG".equals(chuanyunGroupProjectDO.getBusinessGroup())){
@@ -149,6 +158,19 @@ public class ChuanyunBasicDataScheduledTask {
                             e.printStackTrace();
                         }
                     }
+                    //如果项目组成员为空,则自动为项目添加所有EBG成员作为项目组成员
+                    if ("EBG".equals(chuanyunGroupProjectDO.getBusinessGroup())&&chuanyunGroupProjectDO.getProjectMemberlist().length==0&&
+                            ("实施".equals(chuanyunGroupProjectDO.getProjectType())||"维保".equals(chuanyunGroupProjectDO.getProjectType())||
+                            "研发二开".equals(chuanyunGroupProjectDO.getProjectType())||"售后".equals(chuanyunGroupProjectDO.getProjectType()))) {
+                        var idlist = "";
+                        for (ChuanyunUserCompanyDO chuanyunUserCompanyDO : chuanyunUserCompanyDao.findAll()) {
+                            if (chuanyunCompanyDao.findByObjectId(chuanyunUserCompanyDO.getCompanyId()).getBusinessGroup().equals("EBG")) {
+                                idlist += chuanyunUserCompanyDO.getUserId()+";";
+                            }
+                        }
+                        chuanyunGroupProjectDO.setProjectMember(idlist);
+                        log.info("成员已更新");
+                    }
                 });
                 chuanyunGroupProjectDao.saveAll(result);
             }catch (Exception e){