business/src/main/java/com/ycl/controller/ProjectPlanProgressReportController.java
@@ -6,6 +6,7 @@ import com.ycl.common.group.Update; import com.ycl.domain.form.ProjectPlanProgressReportForm; import com.ycl.domain.query.ProjectPlanProgressReportQuery; import com.ycl.domain.vo.ProgressReportResponseVO; import com.ycl.service.ProjectPlanProgressReportService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -34,8 +35,8 @@ @PostMapping @ApiOperation(value = "添加", notes = "添加") @PreAuthorize("hasAuthority('projectPlanProgressReport:add')") public Result add(@RequestBody @Validated(Add.class) ProjectPlanProgressReportForm form) { // @PreAuthorize("hasAuthority('projectPlanProgressReport:add')") public Result add(@RequestBody @Validated(Add.class) ProgressReportResponseVO form) { return projectPlanProgressReportService.add(form); } business/src/main/java/com/ycl/domain/entity/ProjectPlanInfo.java
@@ -35,12 +35,10 @@ 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; business/src/main/java/com/ycl/domain/entity/ProjectPlanProgressReport.java
@@ -3,10 +3,12 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.ycl.system.domain.base.AbsEntity; import com.ycl.system.domain.base.AbsEntityOnlyId; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.Date; /** * 进度上报内容 @@ -16,7 +18,7 @@ */ @Data @TableName("t_project_plan_progress_report") public class ProjectPlanProgressReport extends AbsEntity { public class ProjectPlanProgressReport extends AbsEntityOnlyId { private static final long serialVersionUID = 1L; @@ -26,11 +28,11 @@ @TableField("start_time") /** 实际开始时间 */ private LocalDateTime startTime; private Date startTime; @TableField("end_time") /** 实际完成时间 */ private LocalDateTime endTime; private Date endTime; @TableField("progress_status") /** 进度情况 */ business/src/main/java/com/ycl/domain/entity/ProjectPlanRecord.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.ycl.system.domain.base.AbsEntity; import com.ycl.system.domain.base.AbsEntityOnlyId; import lombok.Data; import java.math.BigDecimal; @@ -17,7 +18,7 @@ */ @Data @TableName("t_project_plan_record") public class ProjectPlanRecord extends AbsEntity { public class ProjectPlanRecord extends AbsEntityOnlyId { private static final long serialVersionUID = 1L; business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
@@ -13,6 +13,10 @@ public class ProgressReportResponseVO { // 计划项id private Integer id; // 进度上报id private Integer progressReportId; // 审核记录id private Integer examineRecordId; private Integer planTime; private Integer PlanTimeFlag; private String title; business/src/main/java/com/ycl/domain/vo/ProjectPlanInfoItem.java
@@ -1,11 +1,14 @@ package com.ycl.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; @Data @AllArgsConstructor @NoArgsConstructor business/src/main/java/com/ycl/mapper/ProjectPlanProgressReportMapper.java
@@ -33,4 +33,8 @@ IPage getPage(IPage page, @Param("query") ProjectPlanProgressReportQuery query); ProgressReportResponseVO getDetail(Integer id); void insertOne(ProjectPlanProgressReport projectPlanProgressReport); void updateOne(ProjectPlanProgressReport projectPlanProgressReport); } business/src/main/java/com/ycl/service/ProjectPlanProgressReportService.java
@@ -5,6 +5,7 @@ import com.ycl.domain.entity.ProjectPlanProgressReport; import com.ycl.domain.form.ProjectPlanProgressReportForm; import com.ycl.domain.query.ProjectPlanProgressReportQuery; import com.ycl.domain.vo.ProgressReportResponseVO; import java.util.List; @@ -21,7 +22,7 @@ * @param form * @return */ Result add(ProjectPlanProgressReportForm form); Result add(ProgressReportResponseVO form); /** * 修改 business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java
@@ -20,6 +20,7 @@ import com.ycl.service.ProjectPlanInfoService; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; @@ -165,6 +166,7 @@ item.setDeleted(0); list.stream().forEach(i -> { item.setProjectPlanInfoId(i.getId().longValue()); // projectPlanExamineRecordMapper.insert(item); projectPlanExamineRecordMapper.insertOne(item); }); return Result.ok("添加成功"); business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
@@ -1,10 +1,15 @@ package com.ycl.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.ycl.common.base.Result; import com.ycl.domain.entity.ProjectPlanExamineRecord; import com.ycl.domain.entity.ProjectPlanInfo; import com.ycl.domain.entity.ProjectPlanProgressReport; import com.ycl.domain.vo.ProgressReportResponseVO; import com.ycl.framework.utils.PageUtil; import com.ycl.mapper.ProjectPlanExamineRecordMapper; import com.ycl.mapper.ProjectPlanInfoMapper; import com.ycl.mapper.ProjectPlanProgressReportMapper; import com.ycl.service.ProjectPlanProgressReportService; @@ -12,9 +17,11 @@ import com.ycl.domain.form.ProjectPlanProgressReportForm; import com.ycl.domain.vo.ProjectPlanProgressReportVO; import com.ycl.domain.query.ProjectPlanProgressReportQuery; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import java.util.List; @@ -31,16 +38,46 @@ public class ProjectPlanProgressReportServiceImpl extends ServiceImpl<ProjectPlanProgressReportMapper, ProjectPlanProgressReport> implements ProjectPlanProgressReportService { private final ProjectPlanProgressReportMapper projectPlanProgressReportMapper; @Autowired private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; @Autowired private ProjectPlanInfoMapper projectPlanInfoMapper; /** * 添加 * @param form * @return */ @Transactional(rollbackFor = Exception.class) @Override public Result add(ProjectPlanProgressReportForm form) { ProjectPlanProgressReport entity = ProjectPlanProgressReportForm.getEntityByForm(form, null); baseMapper.insert(entity); public Result add(ProgressReportResponseVO form) { ProjectPlanProgressReport projectPlanProgressReport = new ProjectPlanProgressReport(); projectPlanProgressReport.setProjectPlanInfoId(form.getId().longValue()); projectPlanProgressReport.setStartTime(form.getActualStartTime()); projectPlanProgressReport.setEndTime(form.getActualEndTime()); projectPlanProgressReport.setProgressStatus(form.getProgressStatus()); projectPlanProgressReport.setActualInvest(form.getActualInvest()); if (form.getProgressReportId() == null) { baseMapper.insertOne(projectPlanProgressReport); }else { projectPlanProgressReport.setId(form.getProgressReportId()); // baseMapper.updateOne(projectPlanProgressReport); baseMapper.updateById(projectPlanProgressReport); } // 更新上级批复 new LambdaUpdateChainWrapper<>(projectPlanExamineRecordMapper) .eq(ProjectPlanExamineRecord::getId, form.getExamineRecordId()) .set(ProjectPlanExamineRecord::getDepartmentApprovalReply, form.getDepartmentApprovalReply()) .set(ProjectPlanExamineRecord::getManageApprovalReply, form.getManageApprovalReply()) .update(); // 更新上报状态 new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) .eq(ProjectPlanInfo::getId, form.getId()) .set(ProjectPlanInfo::getProgressStatus, 2) .update(); return Result.ok("添加成功"); } business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml
@@ -49,7 +49,8 @@ delay_start_time, delay_end_time, gmt_create, gmt_update gmt_update, deleted ) values ( #{projectPlanRecordId}, #{projectPlanInfoId}, @@ -65,7 +66,8 @@ #{delayStartTime}, #{delayEndTime}, #{gmtCreate}, #{gmtUpdate} #{gmtUpdate}, #{deleted} ) </insert> <update id="updateByForm"> @@ -142,7 +144,7 @@ FROM t_project_plan_examine_record AS pper WHERE project_plan_record_id = #{projectPlanRecordId} ) AS ranked WHERE rn = 1; WHERE rn = 1 AND ranked.deleted = 0 </select> <select id="getPlanLog" resultType="com.ycl.domain.vo.DepartmentApprovalResponseVO"> business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml
@@ -10,12 +10,32 @@ <result column="progress_status" property="progressStatus" /> <result column="actual_invest" property="actualInvest" /> </resultMap> <insert id="insertOne"> INSERT INTO t_project_plan_progress_report ( project_plan_info_id, start_time, end_time, progress_status, actual_invest ) VALUES ( #{projectPlanInfoId}, #{startTime}, #{endTime}, #{progressStatus}, #{actualInvest} ) </insert> <update id="updateOne"> UPDATE t_project_plan_progress_report SET start_time = #{startTime}, end_time = #{endTime}, progress_status = #{progressStatus}, actual_invest = #{actualInvest} WHERE id = #{id} </update> <select id="getById" resultMap="BaseResultMap"> @@ -51,6 +71,8 @@ <select id="getDetail" resultType="com.ycl.domain.vo.ProgressReportResponseVO"> SELECT ppi.id, pppr.id AS progress_report_id, pper.id AS examine_record_id, ppr.plan_time, ppr.plan_time_flag, ppi.title,