business/src/main/java/com/ycl/controller/ProjectPlanRecordController.java
@@ -49,7 +49,7 @@ @DeleteMapping("/{id}") @ApiOperation(value = "ID删除", notes = "ID删除") @PreAuthorize("hasAuthority('projectPlanRecord:del')") // @PreAuthorize("hasAuthority('projectPlanRecord:del')") public Result removeById(@PathVariable("id") String id) { return projectPlanRecordService.removeById(id); } business/src/main/java/com/ycl/domain/entity/ProjectPlanExamineRecord.java
@@ -23,6 +23,10 @@ /** 项目计划记录id */ private Long projectPlanRecordId; @TableField("project_plan_info_id") /** 项目计划记录id */ private Long projectPlanInfoId; @TableField("department_user_id") /** 上级部门审核人 */ private Long departmentUserId; business/src/main/java/com/ycl/domain/vo/ProjectPlanExamineRecordVO.java
@@ -24,6 +24,8 @@ @ApiModelProperty("项目计划记录id") private Long projectPlanRecordId; private Long projectPlanInfoId; /** 上级部门审核人 */ @ApiModelProperty("上级部门审核人") private Long departmentUserId; business/src/main/java/com/ycl/mapper/ProjectPlanExamineRecordMapper.java
@@ -29,4 +29,5 @@ */ IPage getPage(IPage page, @Param("query") ProjectPlanExamineRecordQuery query); void insertOne(ProjectPlanExamineRecord item); } business/src/main/java/com/ycl/service/impl/ProjectPlanInfoServiceImpl.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.common.base.Result; import com.ycl.domain.entity.ProjectPlanExamineRecord; import com.ycl.domain.entity.ProjectPlanInfo; import com.ycl.domain.entity.ProjectPlanRecord; import com.ycl.domain.form.ProjectPlanInfoForm; @@ -13,15 +14,18 @@ import com.ycl.domain.vo.ProjectPlanInfoResponseVO; import com.ycl.domain.vo.ProjectPlanInfoVO; import com.ycl.framework.utils.PageUtil; import com.ycl.mapper.ProjectPlanExamineRecordMapper; import com.ycl.mapper.ProjectPlanInfoMapper; import com.ycl.mapper.ProjectPlanRecordMapper; import com.ycl.service.ProjectPlanInfoService; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -37,6 +41,7 @@ private final ProjectPlanInfoMapper projectPlanInfoMapper; private final ProjectPlanRecordMapper projectPlanRecordMapper; private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; /** * 添加 @@ -126,6 +131,7 @@ return Result.ok().data(vos); } @Transactional(rollbackFor = Exception.class) @Override public Result addPlanInfo(ProjectPlanInfoRequest request) { if (request.getAddList() == null || request.getAddList().isEmpty()) {{ @@ -151,6 +157,15 @@ .set(ProjectPlanRecord::getActualInvest, request.getActualInvest()) .set(ProjectPlanRecord::getReportStatus, 0) .update(); // 新增一条审核记录 ProjectPlanExamineRecord item = new ProjectPlanExamineRecord(); item.setProjectPlanRecordId(request.getProjectPlanRecordId().longValue()); item.setEventType(0); item.setGmtCreate(new Date()); list.stream().forEach(i -> { item.setProjectPlanInfoId(i.getId().longValue()); projectPlanExamineRecordMapper.insertOne(item); }); return Result.ok("添加成功"); } business/src/main/java/com/ycl/service/impl/ProjectPlanRecordServiceImpl.java
@@ -6,12 +6,14 @@ import com.ycl.common.base.Result; import com.ycl.common.utils.DateUtils; import com.ycl.domain.entity.Plan; import com.ycl.domain.entity.ProjectPlanInfo; import com.ycl.domain.entity.ProjectPlanRecord; import com.ycl.domain.vo.ProjectPlanRecordAddRequest; import com.ycl.domain.vo.ProjectPlanRecordResponseVO; import com.ycl.domain.vo.ProjetPlanRecordItem; import com.ycl.framework.utils.PageUtil; import com.ycl.mapper.PlanMapper; import com.ycl.mapper.ProjectPlanInfoMapper; import com.ycl.mapper.ProjectPlanRecordMapper; import com.ycl.service.ProjectPlanRecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -43,6 +45,7 @@ private final ProjectPlanRecordMapper projectPlanRecordMapper; private final PlanMapper planMapper; private final ProjectPlanInfoMapper projectPlanInfoMapper; /** * 添加 @@ -149,7 +152,12 @@ */ @Override public Result removeById(String id) { // 删除计划记录 baseMapper.deleteById(id); // 删除计划项 new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) .eq(ProjectPlanInfo::getProjectPlanRecordId, id) .remove(); return Result.ok("删除成功"); } business/src/main/resources/mapper/ProjectPlanExamineRecordMapper.xml
@@ -5,6 +5,7 @@ <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="com.ycl.domain.vo.ProjectPlanExamineRecordVO"> <result column="project_plan_record_id" property="projectPlanRecordId" /> <result column="project_plan_info_id" property="projectPlanInfoId" /> <result column="department_user_id" property="departmentUserId" /> <result column="manager_user_id" property="managerUserId" /> <result column="department_examine" property="departmentExamine" /> @@ -19,11 +20,41 @@ <result column="gmt_create" property="gmtCreate" /> <result column="gmt_update" property="gmtUpdate" /> </resultMap> <insert id="insertOne"> insert into t_project_plan_examine_record ( project_plan_record_id, project_plan_info_id, department_user_id, manager_user_id, department_examine, department_approval, department_approval_reply, manage_examine, manage_approval, manage_approval_reply, event_type, delay_start_time, delay_end_time, gmt_create, gmt_update ) values ( #{projectPlanRecordId}, #{projectPlanInfoId}, #{departmentUserId}, #{managerUserId}, #{departmentExamine}, #{departmentApproval}, #{departmentApprovalReply}, #{manageExamine}, #{manageApproval}, #{manageApprovalReply}, #{eventType}, #{delayStartTime}, #{delayEndTime}, #{gmtCreate}, #{gmtUpdate} ) </insert> <select id="getById" resultMap="BaseResultMap"> business/src/main/resources/mapper/ProjectPlanInfoMapper.xml
@@ -10,7 +10,7 @@ <result column="start_time" property="startTime" /> <result column="end_time" property="endTime" /> </resultMap> <insert id="batchInsert"> <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) values <foreach collection="list" item="item" separator=",">