From 66b258f3e333b2413e3c7c28a8a6794545fc6eb8 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 27 二月 2025 09:50:52 +0800
Subject: [PATCH] 流程推进展示工程
---
system/src/main/java/com/ycl/system/domain/base/AbsUUIDForm.java | 20 ++++++
business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java | 3
business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java | 3
business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java | 3
business/src/main/java/com/ycl/controller/ProjectEngineeringController.java | 2
business/src/main/java/com/ycl/mapper/ProjectEngineeringMapper.java | 2
system/src/main/java/com/ycl/system/domain/base/AbsUUIDEntity.java | 34 +++++++++++
system/src/main/java/com/ycl/system/domain/base/AbsUUIDVo.java | 24 ++++++++
business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java | 2
business/src/main/java/com/ycl/service/ProjectEngineeringService.java | 2
business/src/main/resources/mapper/ProjectProcessMapper.xml | 43 ++++++++++++--
business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java | 1
business/src/main/java/com/ycl/domain/vo/ProjectProcessVO.java | 11 +++
13 files changed, 137 insertions(+), 13 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProjectEngineeringController.java b/business/src/main/java/com/ycl/controller/ProjectEngineeringController.java
index 71de6fe..febce91 100644
--- a/business/src/main/java/com/ycl/controller/ProjectEngineeringController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectEngineeringController.java
@@ -70,7 +70,7 @@
@GetMapping("/{id}")
@ApiOperation(value = "璇︽儏", notes = "璇︽儏")
// @PreAuthorize("@ss.hasPermi('projectEngineering:detail')")
- public Result detail(@PathVariable("id") Integer id) {
+ public Result detail(@PathVariable("id") String id) {
return projectEngineeringService.detail(id);
}
diff --git a/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java b/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java
index 65b9eb9..af14acc 100644
--- a/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java
+++ b/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java
@@ -5,6 +5,7 @@
import java.io.Serializable;
import com.ycl.system.domain.base.AbsEntity;
+import com.ycl.system.domain.base.AbsUUIDEntity;
import lombok.Data;
/**
@@ -15,7 +16,7 @@
*/
@Data
@TableName("t_project_engineering")
-public class ProjectEngineering extends AbsEntity {
+public class ProjectEngineering extends AbsUUIDEntity {
private static final long serialVersionUID = 1L;
diff --git a/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java b/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java
index dba0808..e83ff25 100644
--- a/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java
+++ b/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java
@@ -4,6 +4,7 @@
import com.ycl.common.group.Add;
import com.ycl.system.domain.base.AbsForm;
import com.ycl.domain.entity.ProjectEngineering;
+import com.ycl.system.domain.base.AbsUUIDForm;
import org.springframework.beans.BeanUtils;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@@ -21,7 +22,7 @@
*/
@Data
@ApiModel(value = "ProjectEngineering琛ㄥ崟", description = "椤圭洰宸ョ▼琛ㄥ崟")
-public class ProjectEngineeringForm extends AbsForm {
+public class ProjectEngineeringForm extends AbsUUIDForm {
@NotNull(message = "椤圭洰id涓嶈兘涓虹┖", groups = {Add.class, Update.class})
@ApiModelProperty("椤圭洰id")
diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java b/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java
index 58d66c2..20f31b2 100644
--- a/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java
+++ b/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java
@@ -1,5 +1,6 @@
package com.ycl.domain.vo;
+import com.ycl.system.domain.base.AbsUUIDVo;
import com.ycl.system.domain.base.AbsVo;
import com.ycl.domain.entity.ProjectEngineering;
import java.util.List;
@@ -18,7 +19,7 @@
*/
@Data
@ApiModel(value = "椤圭洰宸ョ▼鍝嶅簲鏁版嵁", description = "椤圭洰宸ョ▼鍝嶅簲鏁版嵁")
-public class ProjectEngineeringVO extends AbsVo {
+public class ProjectEngineeringVO extends AbsUUIDVo {
/** 椤圭洰id */
@ApiModelProperty("椤圭洰id")
diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectProcessVO.java b/business/src/main/java/com/ycl/domain/vo/ProjectProcessVO.java
index 703f8e9..356b9c3 100644
--- a/business/src/main/java/com/ycl/domain/vo/ProjectProcessVO.java
+++ b/business/src/main/java/com/ycl/domain/vo/ProjectProcessVO.java
@@ -9,7 +9,9 @@
import org.springframework.lang.NonNull;
import java.math.BigDecimal;
+import java.util.ArrayList;
import java.util.Date;
+import java.util.List;
/**
* 娴佺▼鎺ㄨ繘鍒楄〃淇℃伅琛ㄥ睍绀�
@@ -36,4 +38,13 @@
@ApiModelProperty("娴佺▼鏄惁鎸傝捣/鏆傚仠")
private boolean suspended;
+
+ @ApiModelProperty("鎶曡祫棰�")
+ private String investmentAmount;
+
+ @ApiModelProperty("寮�宸ョ姸鎬�")
+ private String status;
+
+ @ApiModelProperty("宸ョ▼鍒楄〃")
+ private List<ProjectEngineeringVO> children = new ArrayList<>();
}
diff --git a/business/src/main/java/com/ycl/mapper/ProjectEngineeringMapper.java b/business/src/main/java/com/ycl/mapper/ProjectEngineeringMapper.java
index 2975235..4166216 100644
--- a/business/src/main/java/com/ycl/mapper/ProjectEngineeringMapper.java
+++ b/business/src/main/java/com/ycl/mapper/ProjectEngineeringMapper.java
@@ -24,7 +24,7 @@
* @param id
* @return
*/
- ProjectEngineeringVO getById(Integer id);
+ ProjectEngineeringVO getById(String id);
/**
* 鍒嗛〉
diff --git a/business/src/main/java/com/ycl/service/ProjectEngineeringService.java b/business/src/main/java/com/ycl/service/ProjectEngineeringService.java
index 274276d..a68e5a8 100644
--- a/business/src/main/java/com/ycl/service/ProjectEngineeringService.java
+++ b/business/src/main/java/com/ycl/service/ProjectEngineeringService.java
@@ -55,7 +55,7 @@
* @param id
* @return
*/
- Result detail(Integer id);
+ Result detail(String id);
/**
* 鍒楄〃
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java
index c736026..90c7d79 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java
@@ -98,7 +98,7 @@
* @return
*/
@Override
- public Result detail(Integer id) {
+ public Result detail(String id) {
ProjectEngineeringVO vo = baseMapper.getById(id);
Assert.notNull(vo, "璁板綍涓嶅瓨鍦�");
return Result.ok().data(vo);
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
index b8bd222..ee84bc4 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -102,6 +102,7 @@
IPage<ProjectProcessVO> page = PageUtil.getPage(query, ProjectProcessVO.class);
baseMapper.getPage(query, page);
for (ProjectProcessVO vo : page.getRecords()) {
+ vo.setStatus(vo.getProjectStatus());
if (Objects.nonNull(vo.getProcessDefId())) {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(vo.getProcessDefId()).singleResult();
if (Objects.nonNull(processDefinition)) {
diff --git a/business/src/main/resources/mapper/ProjectProcessMapper.xml b/business/src/main/resources/mapper/ProjectProcessMapper.xml
index 80450e4..c51819b 100644
--- a/business/src/main/resources/mapper/ProjectProcessMapper.xml
+++ b/business/src/main/resources/mapper/ProjectProcessMapper.xml
@@ -9,17 +9,14 @@
<result column="project_code" property="projectCode" />
<result column="content" property="content" />
<result column="project_type" property="projectType" />
+ <result column="investmentAmount" property="investmentAmount" />
<result column="project_status" property="projectStatus" />
<result column="fund_type" property="fundType" />
<result column="invest_type" property="investType" />
<result column="project_phase" property="projectPhase" />
<result column="tag" property="tag" />
-<!-- <result column="competent_department" property="competentDepartment" />-->
-<!-- <result column="management_centralization" property="managementCentralization" />-->
<result column="project_approval_type" property="projectApprovalType" />
<result column="importance_type" property="importanceType" />
-<!-- <result column="year" property="year" />-->
-<!-- <result column="year_invest_amount" property="yearInvestAmount" />-->
<result column="create_project_time" property="createProjectTime" />
<result column="plan_start_time" property="planStartTime" />
<result column="plan_complete_time" property="planCompleteTime" />
@@ -34,10 +31,42 @@
<result column="create_by" property="createBy" />
<result column="process_def_id" property="processDefId" />
<result column="process_ins_id" property="processInsId" />
-<!-- <association property="id" column=""-->
</resultMap>
+ <resultMap id="PageResultMap" type="com.ycl.domain.vo.ProjectProcessVO">
+ <id column="id" property="id"/>
+ <result column="project_name" property="projectName" />
+ <result column="project_code" property="projectCode" />
+ <result column="content" property="content" />
+ <result column="project_type" property="projectType" />
+ <result column="investmentAmount" property="investmentAmount" />
+ <result column="project_status" property="projectStatus" />
+ <result column="fund_type" property="fundType" />
+ <result column="invest_type" property="investType" />
+ <result column="project_phase" property="projectPhase" />
+ <result column="tag" property="tag" />
+ <result column="project_approval_type" property="projectApprovalType" />
+ <result column="importance_type" property="importanceType" />
+ <result column="create_project_time" property="createProjectTime" />
+ <result column="plan_start_time" property="planStartTime" />
+ <result column="plan_complete_time" property="planCompleteTime" />
+ <result column="project_address" property="projectAddress" />
+ <result column="longitude" property="longitude" />
+ <result column="latitude" property="latitude" />
+ <result column="project_owner_unit" property="projectOwnerUnit" />
+ <result column="project_owner_unit_name" property="projectOwnerUnitName" />
+ <result column="project_contact_person" property="projectContactPerson" />
+ <result column="contact" property="contact" />
+ <result column="update_by" property="updateBy" />
+ <result column="create_by" property="createBy" />
+ <result column="process_def_id" property="processDefId" />
+ <result column="process_ins_id" property="processInsId" />
+ <collection property="children" ofType="com.ycl.domain.vo.ProjectEngineeringVO" select="getProjectEngineering" column="id"></collection>
+ </resultMap>
+ <select id="getProjectEngineering" parameterType="long" resultMap="com.ycl.mapper.ProjectEngineeringMapper.BaseResultMap">
+ SELECT * FROM t_project_engineering WHERE project_info_id = #{id} and deleted = 0 ORDER BY gmt_create
+ </select>
<select id="getById" resultMap="BaseResultMap">
@@ -52,14 +81,16 @@
</select>
- <select id="getPage" resultMap="BaseResultMap">
+ <select id="getPage" resultMap="PageResultMap">
SELECT
PI.*,
TPP.process_def_id,
TPP.process_ins_id,
+ TPIF.total_investment as investmentAmount,
d.dept_name as project_owner_unit_name
FROM
t_project_info PI
+ LEFT JOIN t_project_investment_funding TPIF ON TPIF.project_id = PI.id AND TPIF.deleted = 0
LEFT JOIN t_project_process TPP ON TPP.project_id = PI.id AND TPP.deleted = 0
LEFT JOIN sys_dept d ON d.dept_id = PI.project_owner_unit
<where>
diff --git a/system/src/main/java/com/ycl/system/domain/base/AbsUUIDEntity.java b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDEntity.java
new file mode 100644
index 0000000..4d87235
--- /dev/null
+++ b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDEntity.java
@@ -0,0 +1,34 @@
+package com.ycl.system.domain.base;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author xp
+ * @date 2022/11/29
+ */
+@Data
+public abstract class AbsUUIDEntity {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "id", type = IdType.ASSIGN_UUID)
+ private String id;
+
+ /** 鍒涘缓鏃堕棿 */
+ @TableField(value = "gmt_create", fill = FieldFill.INSERT)
+ private Date gmtCreate;
+
+ /** 淇敼鏃堕棿 */
+ @TableField(value = "gmt_update", fill = FieldFill.INSERT_UPDATE)
+ private Date gmtUpdate;
+
+ @TableField(value = "deleted", fill = FieldFill.INSERT)
+ private Integer deleted;
+
+}
diff --git a/system/src/main/java/com/ycl/system/domain/base/AbsUUIDForm.java b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDForm.java
new file mode 100644
index 0000000..c820bdf
--- /dev/null
+++ b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDForm.java
@@ -0,0 +1,20 @@
+package com.ycl.system.domain.base;
+
+import com.ycl.common.group.Update;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author xp
+ * @date 2022/11/29
+ */
+@Data
+public abstract class AbsUUIDForm {
+
+ @ApiModelProperty(value = "id,淇敼蹇呬紶", required = false)
+ @NotNull(message = "璇烽�夋嫨鏁版嵁", groups = {Update.class})
+ private String id;
+
+}
diff --git a/system/src/main/java/com/ycl/system/domain/base/AbsUUIDVo.java b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDVo.java
new file mode 100644
index 0000000..53a4191
--- /dev/null
+++ b/system/src/main/java/com/ycl/system/domain/base/AbsUUIDVo.java
@@ -0,0 +1,24 @@
+package com.ycl.system.domain.base;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author xp
+ * @date 2022/11/29
+ */
+@Data
+public abstract class AbsUUIDVo {
+
+ @ApiModelProperty("id")
+ private String id;
+
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ private Date gmtCreate;
+
+ @ApiModelProperty("淇敼鏃堕棿")
+ private Date gmtUpdate;
+
+}
--
Gitblit v1.8.0