From fc06896dd3094f3b272d2f941c8f738479b5ad73 Mon Sep 17 00:00:00 2001 From: luohairen <3399054449@qq.com> Date: 星期五, 29 十一月 2024 07:48:26 +0800 Subject: [PATCH] 计划项审批 --- business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 22 +++++++++-- business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java | 15 +------ business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java | 13 +++++- business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java | 2 + business/src/main/resources/mapper/ProjectPlanInfoMapper.xml | 5 +- business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoVO.java | 3 + business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml | 1 business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml | 1 business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java | 1 9 files changed, 38 insertions(+), 25 deletions(-) diff --git a/business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java b/business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java index 02506a9..9753e95 100644 --- a/business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java +++ b/business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.system.domain.base.AbsEntity; +import com.ycl.system.domain.base.AbsEntityOnlyIdAndDeleted; import lombok.Data; import java.time.LocalDateTime; @@ -18,7 +19,7 @@ */ @Data @TableName("t_project_plan_info") -public class ProjectPlanInfo extends AbsEntity { +public class ProjectPlanInfo extends AbsEntityOnlyIdAndDeleted { private static final long serialVersionUID = 1L; @@ -35,23 +36,11 @@ private Integer progressStatus; @TableField("start_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") /** 璁″垝寮�濮嬫椂闂� */ private Date startTime; @TableField("end_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") /** 璁″垝瀹屾垚鏃堕棿 */ private Date endTime; - /** 鍒涘缓鏃堕棿 */ - @TableField(exist = false) - private Date gmtCreate; - - /** 淇敼鏃堕棿 */ - @TableField(exist = false) - private Date gmtUpdate; - - @TableField(exist = false) - private Integer deleted; } diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java b/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java index fee3153..8425346 100644 --- a/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java +++ b/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java @@ -14,6 +14,8 @@ @NoArgsConstructor public class ProjectPlanInfoItem { private String title; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date startTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date endTime; } diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoVO.java b/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoVO.java index 6343fd5..d6f7810 100644 --- a/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoVO.java +++ b/business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoVO.java @@ -2,6 +2,7 @@ import com.ycl.domain.entity.ProjectPlanInfo; +import com.ycl.system.domain.base.AbsEntity; import com.ycl.system.domain.base.AbsVo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -19,7 +20,7 @@ */ @Data @ApiModel(value = "椤圭洰璁″垝椤瑰搷搴旀暟鎹�", description = "椤圭洰璁″垝椤瑰搷搴旀暟鎹�") -public class ProjectPlanInfoVO extends AbsVo { +public class ProjectPlanInfoVO extends AbsEntity { /** 椤圭洰璁″垝璁板綍id */ @ApiModelProperty("椤圭洰璁″垝璁板綍id") diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java index d6086a7..c7eb055 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java @@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.ycl.common.utils.SecurityUtils; import com.ycl.domain.entity.ProjectPlanExamineRecord; +import com.ycl.domain.entity.ProjectPlanRecord; import com.ycl.domain.vo.DepartmentApprovalResponseVO; import com.ycl.mapper.ProjectPlanExamineRecordMapper; +import com.ycl.mapper.ProjectPlanRecordMapper; import com.ycl.service.ProjectPlanExamineRecordService; import com.ycl.common.base.Result; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -33,6 +35,7 @@ public class ProjectPlanExamineRecordServiceImpl extends ServiceImpl<ProjectPlanExamineRecordMapper, ProjectPlanExamineRecord> implements ProjectPlanExamineRecordService { private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; + private final ProjectPlanRecordMapper projectPlanRecordMapper; /** * 娣诲姞 @@ -150,10 +153,21 @@ @Override public Result saveExamine(ProjectPlanExamineRecordForm form) { - ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null); - projectPlanExamineRecord.setDepartmentUserId(SecurityUtils.getUserId()); - projectPlanExamineRecord.setManagerUserId(SecurityUtils.getUserId()); - baseMapper.updateById(projectPlanExamineRecord); + // 鍒ゆ柇锛屽鏋滈兘鍚屾剰锛屽垯鐩存帴鏇存柊瀹℃壒璁板綍 + if (null != form.getDepartmentExamine() && null != form.getManageExamine() && form.getDepartmentExamine() == 0 && form.getManageExamine() == 0){ + ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null); + projectPlanExamineRecord.setId(form.getId().longValue()); + projectPlanExamineRecord.setDepartmentUserId(SecurityUtils.getUserId()); + projectPlanExamineRecord.setManagerUserId(SecurityUtils.getUserId()); + baseMapper.updateById(projectPlanExamineRecord); + } + // 鍚﹀垯锛屽皢椤圭洰璁板綍璁剧疆涓烘湭涓婃姤锛屽苟灏嗚褰曢�昏緫鍒犻櫎 + new LambdaUpdateChainWrapper<>(projectPlanRecordMapper) + .eq(ProjectPlanRecord::getId, form.getProjectPlanRecordId()) + .set(ProjectPlanRecord::getReportStatus,1); + new LambdaUpdateChainWrapper<>(baseMapper) + .eq(ProjectPlanExamineRecord::getProjectPlanRecordId, form.getProjectPlanRecordId()) + .remove(); return Result.ok("鍥炲鎴愬姛"); } } diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java index a202490..5c0b5fa 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java @@ -139,7 +139,10 @@ return Result.error("璇烽�夋嫨瑕佹坊鍔犵殑璁″垝椤�"); }} // 鍒犻櫎鍘熸湁璁板綍 - new LambdaUpdateChainWrapper<>(baseMapper).eq(ProjectPlanInfo::getProjectPlanRecordId, request.getProjectPlanRecordId()).remove(); + new LambdaUpdateChainWrapper<>(baseMapper) + .eq(ProjectPlanInfo::getProjectPlanRecordId, request.getProjectPlanRecordId()) + .set(ProjectPlanInfo::getDeleted, 1) + .update(); // 鎵归噺鎻掑叆鏂拌褰� List<ProjectPlanInfo> list = new ArrayList<>(); request.getAddList().forEach(item -> { @@ -149,15 +152,19 @@ projectPlanInfo.setProgressStatus(0); projectPlanInfo.setStartTime(item.getStartTime()); projectPlanInfo.setEndTime(item.getEndTime()); + projectPlanInfo.setDeleted(0); list.add(projectPlanInfo); }); - baseMapper.batchInsert(list); + list.stream().forEach(i -> { + baseMapper.insert(i); + }); // 鏇存柊璁″垝璁板綍鐨勬姇璧�,浠ュ強涓婃姤鐘舵�� new LambdaUpdateChainWrapper<>(projectPlanRecordMapper) .eq(ProjectPlanRecord::getId, request.getProjectPlanRecordId()) .set(ProjectPlanRecord::getActualInvest, request.getActualInvest()) .set(ProjectPlanRecord::getReportStatus, 0) .update(); + // 鏂板涓�鏉″鏍歌褰� ProjectPlanExamineRecord item = new ProjectPlanExamineRecord(); item.setProjectPlanRecordId(request.getProjectPlanRecordId().longValue()); @@ -166,8 +173,8 @@ item.setDeleted(0); list.stream().forEach(i -> { item.setProjectPlanInfoId(i.getId().longValue()); -// projectPlanExamineRecordMapper.insert(item); projectPlanExamineRecordMapper.insertOne(item); +// projectPlanExamineRecordMapper.insertOne(item); }); return Result.ok("娣诲姞鎴愬姛"); } diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java index ae2e7e6..dc6ed30 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java @@ -68,7 +68,6 @@ baseMapper.insertOne(projectPlanProgressReport); }else { projectPlanProgressReport.setId(form.getProgressReportId()); -// baseMapper.updateOne(projectPlanProgressReport); baseMapper.updateById(projectPlanProgressReport); } diff --git a/business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml b/business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml index 1f5eea5..2e939a8 100644 --- a/business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml +++ b/business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml @@ -145,6 +145,7 @@ WHERE project_plan_record_id = #{projectPlanRecordId} ) AS ranked WHERE rn = 1 AND ranked.deleted = 0 + Order by gmt_create DESC </select> <select id="getPlanLog" resultType="com.ycl.domain.vo.DepartmentApprovalResponseVO"> diff --git a/business/src/main/resources/mapper/ProjectPlanInfoMapper.xml b/business/src/main/resources/mapper/ProjectPlanInfoMapper.xml index ebc1fb4..eec02c6 100644 --- a/business/src/main/resources/mapper/ProjectPlanInfoMapper.xml +++ b/business/src/main/resources/mapper/ProjectPlanInfoMapper.xml @@ -9,12 +9,13 @@ <result column="progress_status" property="progressStatus" /> <result column="start_time" property="startTime" /> <result column="end_time" property="endTime" /> + <result column="deleted" property="deleted" /> </resultMap> <insert id="batchInsert" keyColumn="id" useGeneratedKeys="true" keyProperty="id"> - insert into t_project_plan_info(project_plan_record_id, title, progress_status, start_time, end_time) + insert into t_project_plan_info(project_plan_record_id, title, progress_status, start_time, end_time, deleted) values <foreach collection="list" item="item" separator=","> - (#{item.projectPlanRecordId}, #{item.title}, #{item.progressStatus}, #{item.startTime}, #{item.endTime}) + (#{item.projectPlanRecordId}, #{item.title}, #{item.progressStatus}, #{item.startTime}, #{item.endTime}, #{item.deleted}) </foreach> </insert> <insert id="insertOne"> diff --git a/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml b/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml index 5e7ddeb..8d2b74d 100644 --- a/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml +++ b/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml @@ -93,7 +93,6 @@ LEFT JOIN t_project_plan_progress_report AS pppr ON pppr.project_plan_info_id = ppi.id RIGHT JOIN t_project_plan_examine_record AS pper ON pper.project_plan_info_id = ppi.id WHERE ppi.id = #{id} - ORDER BY pper.gmt_create DESC LIMIT 1 </select> </mapper> -- Gitblit v1.8.0