From 02caafae2b79014638a5f95824bb3f3efe83c3a2 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期日, 02 三月 2025 22:20:50 +0800 Subject: [PATCH] 工程 --- business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java | 18 +++++++++ business/src/main/resources/mapper/ProjectProcessMapper.xml | 2 business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java | 24 ++++++++++++ business/src/main/resources/mapper/ProjectEngineeringMapper.xml | 36 +++++++++++++++-- business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java | 13 ++++++ business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java | 1 6 files changed, 88 insertions(+), 6 deletions(-) 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 af14acc..c3c63c2 100644 --- a/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java +++ b/business/src/main/java/com/ycl/domain/entity/ProjectEngineering.java @@ -3,9 +3,12 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.system.domain.base.AbsEntity; import com.ycl.system.domain.base.AbsUUIDEntity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -40,5 +43,15 @@ /** 鐘舵�� */ private String status; + @TableField("department") + private Long department; + + @TableField("unit") + private Long unit; + @TableField("parent_id") + private String parent; + + @TableField("year") + private Date year; } 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 e83ff25..736b975 100644 --- a/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java +++ b/business/src/main/java/com/ycl/domain/form/ProjectEngineeringForm.java @@ -1,7 +1,9 @@ package com.ycl.domain.form; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.common.group.Update; import com.ycl.common.group.Add; +import com.ycl.common.utils.StringUtils; import com.ycl.system.domain.base.AbsForm; import com.ycl.domain.entity.ProjectEngineering; import com.ycl.system.domain.base.AbsUUIDForm; @@ -44,10 +46,26 @@ @ApiModelProperty("鐘舵��") private String status; + @ApiModelProperty("涓荤閮ㄩ棬") + private Long department; + + @ApiModelProperty("涓氫富鍗曚綅") + private Long unit; + + @ApiModelProperty("骞翠唤") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date year; + + @ApiModelProperty("鐖跺伐绋�") + private String parent; + public static ProjectEngineering getEntityByForm(@NonNull ProjectEngineeringForm form, ProjectEngineering entity) { if(entity == null) { entity = new ProjectEngineering(); } + if (StringUtils.isEmpty(form.parent)){ + form.setParent("0"); + } BeanUtils.copyProperties(form, entity); return entity; } 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 20f31b2..420a280 100644 --- a/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java +++ b/business/src/main/java/com/ycl/domain/vo/ProjectEngineeringVO.java @@ -1,8 +1,11 @@ package com.ycl.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.system.domain.base.AbsUUIDVo; import com.ycl.system.domain.base.AbsVo; import com.ycl.domain.entity.ProjectEngineering; + +import java.util.ArrayList; import java.util.List; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; @@ -44,6 +47,27 @@ @ApiModelProperty("鐘舵��") private String status; + + @ApiModelProperty("涓荤閮ㄩ棬") + private Long department; + + @ApiModelProperty("涓氫富鍗曚綅") + private Long unit; + + @ApiModelProperty("骞翠唤") + private Date year; + + @ApiModelProperty("鐖跺伐绋�") + private String parent; + + private String departmentName; + + private String unitName; + + + @ApiModelProperty("宸ョ▼鍒楄〃") + private List<ProjectEngineeringVO> children = new ArrayList<ProjectEngineeringVO>(); + public static ProjectEngineeringVO getVoByEntity(@NonNull ProjectEngineering entity, ProjectEngineeringVO vo) { if(vo == null) { vo = new ProjectEngineeringVO(); 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 90c7d79..bd2ddec 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectEngineeringServiceImpl.java @@ -88,6 +88,7 @@ @Override public Result page(ProjectEngineeringQuery query) { IPage<ProjectEngineeringVO> page = PageUtil.getPage(query, ProjectEngineeringVO.class); + baseMapper.getPage(page, query); return Result.ok().data(page.getRecords()).total(page.getTotal()); } diff --git a/business/src/main/resources/mapper/ProjectEngineeringMapper.xml b/business/src/main/resources/mapper/ProjectEngineeringMapper.xml index 5b9b9b5..6faf01e 100644 --- a/business/src/main/resources/mapper/ProjectEngineeringMapper.xml +++ b/business/src/main/resources/mapper/ProjectEngineeringMapper.xml @@ -4,18 +4,33 @@ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> <resultMap id="BaseResultMap" type="com.ycl.domain.vo.ProjectEngineeringVO"> + <id column="id" property="id"/> <result column="project_info_id" property="projectInfoId" /> <result column="projectInfoName" property="projectInfoName" /> <result column="project_name" property="projectName" /> <result column="project_type" property="projectType" /> <result column="investment_amount" property="investmentAmount" /> <result column="status" property="status" /> + <result column="unit" property="unit" /> + <result column="department" property="department" /> + <result column="parent_id" property="parent" /> + <result column="year" property="year" /> + <result column="unit_name" property="unitName" /> + <result column="department_name" property="departmentName" /> + <collection property="children" ofType="com.ycl.domain.vo.ProjectEngineeringVO" select="getProjectEngineering" column="id"></collection> + </resultMap> - - + <select id="getProjectEngineering" parameterType="String" resultMap="com.ycl.mapper.ProjectEngineeringMapper.BaseResultMap"> + SELECT TPE.*,TPI.project_name as projectInfoName, + (SELECT SD.dept_name FROM sys_dept SD WHERE SD.dept_id = TPE.unit) AS unit_name, + (SELECT SD.dept_name FROM sys_dept SD WHERE SD.dept_id = TPE.department) AS department_name + FROM t_project_engineering TPE + INNER JOIN t_project_info TPI ON TPI.id = TPE.project_info_id AND TPI.deleted = 0 + WHERE TPE.parent_id = #{id} and TPE.deleted = 0 ORDER BY TPE.gmt_create + </select> <select id="getById" resultMap="BaseResultMap"> @@ -25,7 +40,11 @@ TPE.project_type, TPE.investment_amount, TPE.status, - TPE.id + TPE.id, + TPE.unit, + TPE.department, + TPE.parent_id, + TPE.year FROM t_project_engineering TPE WHERE @@ -41,12 +60,19 @@ TPE.investment_amount, TPE.status, TPE.id, - TPI.project_name as projectInfoName + TPE.unit, + TPE.department, + TPE.parent_id, + TPE.year, + TPI.project_name as projectInfoName, + (SELECT SD.dept_name FROM sys_dept SD WHERE SD.dept_id = TPE.unit) AS unit_name, + (SELECT SD.dept_name FROM sys_dept SD WHERE SD.dept_id = TPE.department) AS department_name FROM t_project_engineering TPE INNER JOIN t_project_info TPI ON TPI.id = TPE.project_info_id AND TPI.deleted = 0 + WHERE - TPE.deleted = 0 + TPE.deleted = 0 AND TPE.parent_id = '0' <if test="query.projectName != null and query.projectName != ''"> AND TPE.project_name LIKE concat('%', #{query.projectName}, '%') </if> diff --git a/business/src/main/resources/mapper/ProjectProcessMapper.xml b/business/src/main/resources/mapper/ProjectProcessMapper.xml index c51819b..70b2fd1 100644 --- a/business/src/main/resources/mapper/ProjectProcessMapper.xml +++ b/business/src/main/resources/mapper/ProjectProcessMapper.xml @@ -65,7 +65,7 @@ </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 * FROM t_project_engineering WHERE project_info_id = #{id} and deleted = 0 AND parent_id = '0' ORDER BY gmt_create </select> -- Gitblit v1.8.0