Procházet zdrojové kódy

项目增加主项目名称字段 修改主项目名称 同步到项目
威派格同步接口修改

yurk před 2 roky
rodič
revize
de2bbde5e0

+ 13 - 8
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/Project.java

@@ -1,9 +1,14 @@
 package com.management.platform.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.time.LocalDate;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.List;
+import java.util.Map;
+
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.management.platform.config.PropertyMsg;
 import lombok.Data;
@@ -11,18 +16,13 @@ import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.springframework.format.annotation.DateTimeFormat;
 
-import java.io.Serializable;
-import java.time.LocalDate;
-import java.util.List;
-import java.util.Map;
-
 /**
  * <p>
  * 
  * </p>
  *
  * @author Seyason
- * @since 2022-08-08
+ * @since 2022-09-30
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -290,6 +290,11 @@ public class Project extends Model<Project> {
     @TableField("project_main_id")
     private Integer projectMainId;
 
+    /**
+     * 主项目名称
+     */
+    @TableField("project_main_name")
+    private String projectMainName;
 
     /**
      * 供应商id

+ 12 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectMainServiceImpl.java

@@ -2,12 +2,16 @@ package com.management.platform.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.management.platform.entity.Project;
 import com.management.platform.entity.ProjectCategory;
 import com.management.platform.entity.ProjectMain;
+import com.management.platform.entity.ProjectSeparate;
 import com.management.platform.mapper.ProjectCategoryMapper;
 import com.management.platform.mapper.ProjectMainMapper;
+import com.management.platform.mapper.ProjectMapper;
 import com.management.platform.mapper.UserMapper;
 import com.management.platform.service.ProjectMainService;
+import com.management.platform.service.ProjectService;
 import com.management.platform.util.HttpRespMsg;
 import com.management.platform.util.MessageUtils;
 import org.springframework.stereotype.Service;
@@ -33,6 +37,10 @@ public class ProjectMainServiceImpl extends ServiceImpl<ProjectMainMapper, Proje
     private UserMapper userMapper;
     @Resource
     private ProjectCategoryMapper projectCategoryMapper;
+    @Resource
+    private ProjectMapper projectMapper;
+    @Resource
+    private ProjectService projectService;
     @Override
     public HttpRespMsg addOrMod(HttpServletRequest request,ProjectMain projectMain) {
         HttpRespMsg httpRespMsg=new HttpRespMsg();
@@ -56,6 +64,10 @@ public class ProjectMainServiceImpl extends ServiceImpl<ProjectMainMapper, Proje
                 return httpRespMsg;
             }
             projectMainMapper.updateById(projectMain);
+            //修改主项目名称  更新项目表
+            List<Project> projectList = projectMapper.selectList(new QueryWrapper<Project>().eq("project_main_id", projectMain.getId()));
+            projectList.forEach(pl->pl.setProjectMainName(projectMain.getName()));
+            projectService.updateBatchById(projectList);
         }else {
             Integer count2 = projectMainMapper.selectCount(new QueryWrapper<ProjectMain>().eq("company_id", projectMain.getCompanyId())
                     .eq("code", projectMain.getCode()));

+ 31 - 21
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -6738,7 +6738,6 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         String token = String.valueOf(header.get("token"));
         String changeType = String.valueOf(header.get("changeType"));
         List<Project> projectList = JSON.parseArray(String.valueOf(jsonObject.get("projectArrays")), Project.class);
-        List<ProjectSeparate> projectSeparateList = JSON.parseArray(String.valueOf(jsonObject.get("projectSeparateArrays")), ProjectSeparate.class);
         HttpRespMsg msg=new HttpRespMsg();
         List<ThirdPartyInterface> thirdPartyInterfaceList = thirdPartyInterfaceService.list(new QueryWrapper<ThirdPartyInterface>().eq("token", token));
         if(thirdPartyInterfaceList.size()==0){
@@ -6773,11 +6772,15 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 }
                 for (Project project : inertProjectList) {
                     List<TaskGroup> taskGroupList = project.getTaskGroupList();
-                    if(taskGroupList==null){
-                        continue;
+                    if(taskGroupList!=null){
+                        taskGroupList.forEach(tl->tl.setProjectId(project.getId()));
+                        taskGroupService.saveBatch(taskGroupList);
+                    }
+                    ProjectSeparate projectSeparate = project.getProjectSeparate();
+                    if(projectSeparate!=null){
+                        projectSeparate.setId(project.getId());
+                        projectSeparateService.save(projectSeparate);
                     }
-                    taskGroupList.forEach(tl->tl.setProjectId(project.getId()));
-                    taskGroupService.saveBatch(taskGroupList);
                 }
             }
         }else if(changeType.equals("update_project")){
@@ -6797,21 +6800,27 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 List<Integer> idList = changeProjectList.stream().map(Project::getId).collect(Collectors.toList());
                 idList.add(-1);
                 List<TaskGroup> groupList = taskGroupMapper.selectList(new QueryWrapper<TaskGroup>().in("project_id", idList));
+                List<ProjectSeparate> projectSeparateList = projectSeparateMapper.selectList(new QueryWrapper<ProjectSeparate>().in("project_id", idList));
                 for (Project project : changeProjectList) {
                     List<TaskGroup> taskGroupList = project.getTaskGroupList();
-                    if(taskGroupList==null){
-                        continue;
-                    }
-                    for (TaskGroup taskGroup : taskGroupList) {
-                        taskGroup.setProjectId(project.getId());
-                        if(groupList!=null){
-                            Optional<TaskGroup> first = groupList.stream().filter(gl -> gl.getTaskGroupCode() != null && gl.getTaskGroupCode().equals(taskGroup.getTaskGroupCode())).findFirst();
-                            if(first.isPresent()){
-                                taskGroup.setId(first.get().getId());
+                    if(taskGroupList!=null){
+                        for (TaskGroup taskGroup : taskGroupList) {
+                            taskGroup.setProjectId(project.getId());
+                            if(groupList!=null){
+                                Optional<TaskGroup> first = groupList.stream().filter(gl -> gl.getTaskGroupCode() != null && gl.getTaskGroupCode().equals(taskGroup.getTaskGroupCode())).findFirst();
+                                if(first.isPresent()){
+                                    taskGroup.setId(first.get().getId());
+                                }
                             }
                         }
+                        taskGroupService.saveOrUpdateBatch(taskGroupList);
+                    }
+                    ProjectSeparate projectSeparate = project.getProjectSeparate();
+                    Optional<ProjectSeparate> first = projectSeparateList.stream().filter(pl -> pl.getId().equals(project.getId())).findFirst();
+                    if(first.isPresent()) {
+                        projectSeparate.setId(first.get().getId());
                     }
-                    taskGroupService.saveOrUpdateBatch(taskGroupList);
+                    projectSeparateService.saveOrUpdate(projectSeparate);
                 }
             }
         }else if(changeType.equals("delete_project")){
@@ -6821,13 +6830,14 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                     project.setId(first.get().getId());
                     deleteProjectList.add(project);
                 }else continue;
-                List<Integer> idList = deleteProjectList.stream().map(Project::getId).collect(Collectors.toList());
-                if(deleteProjectList.size()>0&&removeByIds(idList)){
-                    //message+="成功删除"+idList.size()+"条项目数据";
-                    message+=MessageUtils.message("project.deleteDate",idList.size());
-                }
-                taskGroupMapper.delete(new QueryWrapper<TaskGroup>().in("project_id",idList));
             }
+            List<Integer> idList = deleteProjectList.stream().map(Project::getId).collect(Collectors.toList());
+            if(deleteProjectList.size()>0&&removeByIds(idList)){
+                //message+="成功删除"+idList.size()+"条项目数据";
+                message+=MessageUtils.message("project.deleteDate",idList.size());
+            }
+            taskGroupMapper.delete(new QueryWrapper<TaskGroup>().in("project_id",idList));
+            projectSeparateMapper.delete(new QueryWrapper<ProjectSeparate>().in("id",idList));
         }
         msg.data=message;
         return msg;

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml