Prechádzať zdrojové kódy

项目列表基本增删改查

qianxb 1 rok pred
rodič
commit
bd396ed0d3

+ 4 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ControlProjectInfoDTO.java

@@ -22,4 +22,8 @@ public class ControlProjectInfoDTO extends ControlProjectInfo {
     //模糊查询
     @ApiModelProperty(value = "搜索值")
     private String queryValue;
+
+    //模糊查询
+    @ApiModelProperty(value = "查询时间")
+    private String queryDate;
 }

+ 16 - 28
blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/ControlProjectInfo.java

@@ -30,8 +30,8 @@ public class ControlProjectInfo extends BaseEntity {
     @ApiModelProperty(value = "项目名称")
     private String name;
 
-    @ApiModelProperty(value = "项目进程")
-    private String process;
+    @ApiModelProperty(value = "建设单位")
+    private String constructUnit;
 
     @DateTimeFormat(
             pattern = "yyyy-MM-dd"
@@ -40,16 +40,7 @@ public class ControlProjectInfo extends BaseEntity {
             pattern = "yyyy-MM-dd"
     )
     @ApiModelProperty(value = "项目开始日期")
-    private LocalDate projectStartTime;
-
-    @ApiModelProperty(value = "项目类型")
-    private Integer projectType;
-
-    @ApiModelProperty(value = "合同类型")
-    private Integer contractType;
-
-    @ApiModelProperty(value = "合同金额")
-    private BigDecimal contractAmount;
+    private LocalDate startTime;
 
     @DateTimeFormat(
             pattern = "yyyy-MM-dd"
@@ -57,25 +48,22 @@ public class ControlProjectInfo extends BaseEntity {
     @JsonFormat(
             pattern = "yyyy-MM-dd"
     )
-    @ApiModelProperty(value = "合同开始时间")
-    private LocalDate contractStartTime;
+    @ApiModelProperty(value = "项目结束日期")
+    private LocalDate endTime;
 
-    @DateTimeFormat(
-            pattern = "yyyy-MM-dd"
-    )
-    @JsonFormat(
-            pattern = "yyyy-MM-dd"
-    )
-    @ApiModelProperty(value = "合同停止日期")
-    private LocalDate contractEndTime;
+    @ApiModelProperty(value = "项目类型")
+    private Integer projectType;
+
+    @ApiModelProperty(value = "项目服务类型")
+    private Integer projectServerType;
 
-    @ApiModelProperty(value = "已回款")
-    private BigDecimal returnedMoney;
+    @ApiModelProperty(value = "项目负责人")
+    private Long projectPrincipal;
 
-    @ApiModelProperty(value = "合同pdf")
-    private String contractPdf;
+    @ApiModelProperty(value = "实施负责人")
+    private Long implementPrincipal;
 
-    @ApiModelProperty(value = "负责人")
-    private Long dutyUser;
+    @ApiModelProperty(value = "维护负责人")
+    private Long maintainPrincipal;
 
 }

+ 1 - 1
blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/ProjectProcess.java

@@ -18,7 +18,7 @@ import java.time.LocalDateTime;
  * @Date 2023/5/12 11:42
  **/
 @Data
-@TableName("c_control_project_process")
+@TableName("c_project_process")
 @EqualsAndHashCode(callSuper = true)
 @ApiModel(value = "项目进程表", description = "项目进程表")
 public class ProjectProcess extends BaseEntity {

+ 8 - 2
blade-service-api/blade-control-api/src/main/java/org/springblade/control/vo/ControlProjectInfoVO.java

@@ -16,8 +16,14 @@ import java.util.List;
 public class ControlProjectInfoVO extends ControlProjectInfo {
     //项目类型值
     private String projectTypeValue;
-    //合同类型值
-    private String contractTypeValue;
+    //项目服务类型值
+    private String projectServerTypeValue;
+    //项目负责人名称
+    private String projectPrincipalName;
+    //实施负责人名称
+    private String implementPrincipalName;
+    //维护负责人名称
+    private String maintainPrincipalName;
     //项目进程集合
     private List<ProjectProcessVO> projectProcessList;
 }

+ 1 - 1
blade-service/blade-archive/pom.xml

@@ -145,7 +145,7 @@
                     <target>${java.version}</target>
                     <encoding>${project.build.sourceEncoding}</encoding>
                     <compilerArguments>
-                        <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar:${java.home}/lib/jsse.jar
+                        <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar;${java.home}/lib/jsse.jar
                         </bootclasspath>
                     </compilerArguments>
                 </configuration>

+ 1 - 1
blade-service/blade-business/pom.xml

@@ -179,7 +179,7 @@
                     <target>${java.version}</target>
                     <encoding>${project.build.sourceEncoding}</encoding>
                     <compilerArguments>
-                        <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar:${java.home}/lib/jsse.jar
+                        <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar;${java.home}/lib/jsse.jar
                         </bootclasspath>
                     </compilerArguments>
                 </configuration>

+ 8 - 8
blade-service/blade-control/src/main/java/org/springblade/control/controller/ProjectInfoController.java

@@ -67,13 +67,12 @@ public class ProjectInfoController {
         return R.success("删除成功");
     }
 
-
     /**
-     * 根据id获取项目和流程
+     * 编辑-根据id获取项目和流程
      */
     @GetMapping("/getProjectInfoById")
     @ApiOperationSupport(order = 2)
-    @ApiOperation(value = "根据id获取项目和流程")
+    @ApiOperation(value = "编辑-根据id获取项目和流程")
     public R getProjectInfoById(Long id) {
         return R.data(projectInfoService.getProjectInfoById(id));
     }
@@ -89,13 +88,14 @@ public class ProjectInfoController {
     }
 
     /**
-     * 获取合同类型字典
+     * 获取项目服务类型字典
      */
-    @GetMapping("/getContractTypeDict")
+    @GetMapping("/getProjectServerTypeDict")
     @ApiOperationSupport(order = 2)
-    @ApiOperation(value = "获取合同类型字典")
-    public R getContractTypeDict() {
-        return R.data(projectInfoService.getContractTypeDict());
+    @ApiOperation(value = "获取项目服务类型字典")
+    public R getProjectServerTypeDict() {
+        return R.data(projectInfoService.getProjectServerTypeDict());
     }
 
+
 }

+ 2 - 1
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ProjectInfoMapper.java

@@ -22,5 +22,6 @@ public interface ProjectInfoMapper extends BaseMapper<ControlProjectInfo> {
 
     List<DictBiz> getProjectTypeDict();
 
-    List<DictBiz> getContractTypeDict();
+    List<DictBiz> getProjectServerTypeDict();
+
 }

+ 22 - 13
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ProjectInfoMapper.xml

@@ -4,36 +4,45 @@
 
 
     <select id="selectByPage" resultType="org.springblade.control.vo.ControlProjectInfoVO">
-        select pi.*,d1.dict_value as projectTypeValue,d2.dict_value as contractTypeValue
+        select
+        pi.*,
+        (select dict_name  from c_dict_info WHERE code = 'project_type' AND dict_value = pi.project_type) as projectTypeValue,
+        (select dict_name  from c_dict_info WHERE code = 'project_server_type' AND dict_value = pi.project_server_type) as projectServerTypeValue
         from c_control_project_info pi
-        LEFT JOIN ( SELECT * FROM blade_dict_biz WHERE CODE = 'project_type' ) d1 ON pi.project_type = d1.dict_key
-        LEFT JOIN ( SELECT * FROM blade_dict_biz WHERE CODE = 'contract_type' ) d2 ON pi.contract_type = d2.dict_key
         where pi.is_deleted = 0
         <if test="dto.projectType != null and dto.projectType != ''">
             and pi.project_type = #{dto.projectType}
         </if>
-        <if test="dto.contractType != null and dto.contractType != ''">
-            and pi.contract_type = #{dto.contractType}
+        <if test="dto.projectServerType != null and dto.projectServerType != ''">
+            and pi.project_server_type = #{dto.projectServerType}
         </if>
-        <if test="dto.process != null and dto.process != ''">
-            and pi.process = #{dto.process}
+        <if test="dto.implementPrincipal != null and dto.implementPrincipal != ''">
+            and pi.implement_principal = #{dto.implementPrincipal}
+        </if>
+        <if test="dto.queryDate != null and dto.queryDate != ''">
+            and #{dto.queryDate} BETWEEN pi.start_time AND pi.end_time
         </if>
         <if test="dto.queryValue != null and dto.queryValue != ''">
             and pi.name like concat('%', #{dto.queryValue}, '%')
         </if>
-
-
     </select>
+
     <select id="getProjectInfoById" resultType="org.springblade.control.vo.ControlProjectInfoVO">
-        select pi.*
+        select
+            pi.*,
+            (select dict_name  from c_dict_info WHERE code = 'project_type' AND dict_value = pi.project_type) as projectTypeValue,
+            (select dict_name  from c_dict_info WHERE code = 'project_server_type' AND dict_value = pi.project_server_type) as projectServerTypeValue
         from c_control_project_info pi
         where pi.is_deleted = 0 and pi.id = #{id}
     </select>
+
     <select id="getProjectTypeDict" resultType="org.springblade.system.entity.DictBiz">
-        SELECT * FROM blade_dict_biz WHERE CODE = 'project_type' and parent_id > 0
+        SELECT * FROM c_dict_info WHERE CODE = 'project_type' order by sort
     </select>
-    <select id="getContractTypeDict" resultType="org.springblade.system.entity.DictBiz">
-        SELECT * FROM blade_dict_biz WHERE CODE = 'contract_type' and parent_id > 0
+
+    <select id="getProjectServerTypeDict" resultType="org.springblade.system.entity.DictBiz">
+        SELECT * FROM c_dict_info WHERE CODE = 'project_server_type' order by sort
     </select>
 
+
 </mapper>

+ 7 - 7
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ProjectProcessMapper.xml

@@ -4,14 +4,14 @@
 
 
     <select id="getBaseProcess" resultType="org.springblade.control.vo.ProjectProcessVO">
-        SELECT bdb.dict_value as name, bdb.sort as sort
-        FROM blade_dict_biz bdb
-        WHERE bdb.code = 'project_process'
-          AND bdb.parent_id > 0
-        ORDER BY bdb.sort
+        SELECT dict_name as name, sort
+        FROM c_dict_info
+        WHERE code = 'project_process'
+        ORDER BY sort
     </select>
     <select id="getProjectProcess" resultType="org.springblade.control.vo.ProjectProcessVO">
-        SELECT * FROM c_control_project_process ccpp
-        WHERE ccpp.project_id = #{id}
+        SELECT * FROM c_project_process
+        WHERE project_id = #{id}
+        order by sort
     </select>
 </mapper>

+ 2 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/IProjectInfoService.java

@@ -28,5 +28,6 @@ public interface IProjectInfoService extends BaseService<ControlProjectInfo> {
 
     List<DictBiz> getProjectTypeDict();
 
-    List<DictBiz> getContractTypeDict();
+    List<DictBiz> getProjectServerTypeDict();
+
 }

+ 23 - 5
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ProjectInfoServiceImpl.java

@@ -1,5 +1,6 @@
 package org.springblade.control.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.AllArgsConstructor;
@@ -54,9 +55,15 @@ public class ProjectInfoServiceImpl extends BaseServiceImpl<ProjectInfoMapper, C
     public void addProjectInfo(ControlProjectInfoDTO dto) {
         Long id = SnowFlakeUtil.getId();
         dto.setId(id);
-        ControlProjectInfo info = new ControlProjectInfo();
-        BeanUtils.copyProperties(dto, info);
-        infoMapper.insert(info);
+        Long count = infoMapper.selectCount(new LambdaQueryWrapper<>());
+        if (count == 0){
+            dto.setNumber("GS-01");
+        }else if (count < 9){
+            dto.setNumber("GS-0"+(count+1));
+        }else {
+            dto.setNumber("GS-"+(count+1));
+        }
+        infoMapper.insert(dto);
         processService.addProjectProcess(dto);
     }
 
@@ -100,13 +107,24 @@ public class ProjectInfoServiceImpl extends BaseServiceImpl<ProjectInfoMapper, C
         return vo;
     }
 
+    /**
+     * 获取项目类型字典
+     * @return
+     */
     @Override
     public List<DictBiz> getProjectTypeDict() {
         return infoMapper.getProjectTypeDict();
     }
 
+    /**
+     * 获取项目服务类型字典
+     * @return
+     */
     @Override
-    public List<DictBiz> getContractTypeDict() {
-        return infoMapper.getContractTypeDict();
+    public List<DictBiz> getProjectServerTypeDict() {
+        return infoMapper.getProjectServerTypeDict();
     }
+
+
+
 }

+ 16 - 12
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ProjectProcessServiceImpl.java

@@ -33,11 +33,13 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessMap
     @Override
     public void addProjectProcess(ControlProjectInfoDTO dto) {
         List<ProjectProcess> list = dto.getProjectProcessList();
-        for (ProjectProcess process : list) {
-            process.setProjectId(dto.getId());
-            process.setId(SnowFlakeUtil.getId());
+        if (list != null && list.size() > 0) {
+            for (ProjectProcess process : list) {
+                process.setProjectId(dto.getId());
+                process.setId(SnowFlakeUtil.getId());
+            }
+            this.saveBatch(list);
         }
-        this.saveBatch(list);
     }
 
     /**
@@ -70,7 +72,7 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessMap
     @Override
     public List<ProjectProcessVO> getBaseProcess() {
         List<ProjectProcessVO> list = processMapper.getBaseProcess();
-        list.stream().forEach(l -> l.setStatusValue("未开始"));
+//        list.stream().forEach(l -> l.setStatusValue("未开始"));
         return list;
     }
 
@@ -83,15 +85,17 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessMap
     public List<ProjectProcessVO> getProjectProcess(Long id) {
         List<ProjectProcessVO> list = processMapper.getProjectProcess(id);
         list.stream().forEach(l -> {
-            //是否开始时间,在当前时间之前
-            if (l.getProcessStartTime().isBefore(LocalDate.now())) {
-                if (l.getProcessEndTime().isBefore(LocalDate.now())) {
-                    l.setStatusValue("已闭环");
+            if (l.getProcessStartTime() != null && l.getProcessEndTime() != null) {
+                //是否开始时间,在当前时间之前
+                if (l.getProcessStartTime().isBefore(LocalDate.now())) {
+                    if (l.getProcessEndTime().isBefore(LocalDate.now())) {
+                        l.setStatusValue("已闭环");
+                    } else {
+                        l.setStatusValue("进行中");
+                    }
                 } else {
-                    l.setStatusValue("进行中");
+                    l.setStatusValue("未开始");
                 }
-            } else {
-                l.setStatusValue("未开始");
             }
         });
         return list;

+ 1 - 1
blade-service/blade-manager/pom.xml

@@ -198,7 +198,7 @@
                     <target>${java.version}</target>
                     <encoding>${project.build.sourceEncoding}</encoding>
                     <compilerArguments>
-                        <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar:${java.home}/lib/jsse.jar
+                        <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar;${java.home}/lib/jsse.jar
                         </bootclasspath>
                     </compilerArguments>
                 </configuration>