diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/RepairInputStatusEnum.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/RepairInputStatusEnum.java index d06d4d41..b0ce9a39 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/RepairInputStatusEnum.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/RepairInputStatusEnum.java @@ -10,9 +10,9 @@ import lombok.Getter; @Getter public enum RepairInputStatusEnum { - Input_TASK_NO_FINISHED(0, "入库进行中"), - Input_TASK_IN_FINISHED(1, "入库完成"), - Input_TASK_TO_REJECT(2, "入库驳回"); + INPUT_TASK_NO_FINISHED(0, "入库进行中"), + INPUT_TASK_IN_FINISHED(1, "入库完成"), + INPUT_TASK_TO_REJECT(2, "入库驳回"); private final Integer status; private final String statusName; diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/ScrapTaskStatusEnum.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/ScrapTaskStatusEnum.java new file mode 100644 index 00000000..b48a5081 --- /dev/null +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/ScrapTaskStatusEnum.java @@ -0,0 +1,24 @@ +package com.bonus.common.biz.enums; + +import lombok.Getter; + +/** + * @author : mashuai + * @version : 1.0 + * 报废任务状态枚举 + */ +@Getter +public enum ScrapTaskStatusEnum { + + SCRAP_TASK_NO_FINISHED(0, "报废审核进行中"), + SCRAP_TASK_IN_FINISHED(1, "报废审核通过"), + SCRAP_TASK_TO_REJECT(2, "报废审核驳回"); + + private final Integer status; + private final String statusName; + + ScrapTaskStatusEnum(Integer status, String statusName) { + this.status = status; + this.statusName = statusName; + } +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/archives/controller/ArchivesController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/archives/controller/ArchivesController.java index f6ef3610..d5686af4 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/archives/controller/ArchivesController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/archives/controller/ArchivesController.java @@ -35,7 +35,6 @@ public class ArchivesController extends BaseController { * @return */ @ApiOperation(value = "获取电子档案分类树") - @PreventRepeatSubmit //@RequiresPermissions("archives:type:list") @GetMapping("/getTypeList") public AjaxResult getTypeList(ArchivesInfo archiveInfo) @@ -49,7 +48,6 @@ public class ArchivesController extends BaseController { * @return */ @ApiOperation(value = "获取电子档案详情信息") - @PreventRepeatSubmit //@RequiresPermissions("archives:type:list") @GetMapping("/getDetailsList") public AjaxResult getDetailsList(ArchivesDetails archivesDetails) @@ -79,7 +77,7 @@ public class ArchivesController extends BaseController { * @return */ @ApiOperation(value = "新增电子档案右侧类型") - @PreventRepeatSubmit + //@PreventRepeatSubmit //@RequiresPermissions("archives:type:add") @PostMapping("/addDetails") public AjaxResult addDetails(@RequestBody ArchivesVo archivesVo) diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java index cc5ab85e..54f212aa 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java @@ -602,7 +602,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId()); // 生成修饰入库单号 String code = genderWxTaskCode(thisMonthMaxOrder); - TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId(), RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus(), + TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId(), RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus(), null,thisMonthMaxOrder + 1, code); tmTask.setCreateTime(DateUtils.getNowDate()); tmTask.setCreateBy(SecurityUtils.getUsername()); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairInputDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairInputDetailsServiceImpl.java index 34196c3b..bf529334 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairInputDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairInputDetailsServiceImpl.java @@ -74,18 +74,18 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService .map(info -> Integer.parseInt(info.getStatus())) .collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(statusList)) { - if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) && - statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus())) { - inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus())); - inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatusName())); - } else if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) && - !statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()) && - statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()))) { - inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus())); - inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatusName())); + if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) && + statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus())) { + inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus())); + inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatusName())); + } else if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) && + !statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()) && + statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()))) { + inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus())); + inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatusName())); } else { - inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus())); - inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatusName())); + inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus())); + inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatusName())); } } } @@ -297,8 +297,8 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService Long newTaskId = insertTt(rePairDto.getTaskId()); result += insertTta(newTaskId, repairInputDetails1); for (RepairInputInfo repairInputInfo : list) { - if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString()) - || repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString()) + if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString()) + || repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString()) ) { continue; } @@ -313,7 +313,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService result += insertWxTask(newTaskId, repairInputDetails1); } if (result > 0) { - result += taskMapper.updateTaskStatus(rePairDto.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()); + result += taskMapper.updateTaskStatus(rePairDto.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()); } } @@ -328,7 +328,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService private int updateRepairRejectDetails(RepairInputInfo repairInputInfo) { int result = 0; RepairInputDetails inputDetails = new RepairInputDetails(); - inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString()); + inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString()); inputDetails.setRejectNum(repairInputInfo.getPendingInputNum()); inputDetails.setMaId(repairInputInfo.getMaId() == null ? null : repairInputInfo.getMaId()); inputDetails.setTaskId(repairInputInfo.getTaskId()); @@ -385,7 +385,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService Long newTaskId = insertTt(repairInputDetails.getTaskId()); result += insertTta(newTaskId, repairInputDetails); for (RepairInputDetails inputDetails : repairInputDetails.getMaCodeList()) { - inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString()); + inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString()); inputDetails.setTaskId(repairInputDetails.getTaskId()); inputDetails.setTypeId(repairInputDetails.getTypeId()); inputDetails.setRejectNum(BigDecimal.valueOf(1)); @@ -550,7 +550,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService private int processCodeTypeStorage(RepairInputDetails repairInputDetails) { int result = 0; for (RepairInputDetails inputDetails : repairInputDetails.getMaCodeList()) { - inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString()); + inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString()); inputDetails.setTaskId(repairInputDetails.getTaskId()); inputDetails.setTypeId(repairInputDetails.getTypeId()); inputDetails.setInputNum(BigDecimal.valueOf(1)); @@ -604,13 +604,13 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService List list = repairInputDetailsMapper.selectStatusByTaskId(repairInputDetails.getTaskId()); List statusList = list.stream().map(Integer::parseInt).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(statusList)) { - if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) && - statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus())) { - taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()); - } else if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) && - !statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()) && - statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()))) { - taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()); + if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) && + statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus())) { + taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()); + } else if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) && + !statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()) && + statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()))) { + taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()); } } } @@ -641,15 +641,15 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService if (CollectionUtils.isNotEmpty(list)) { for (RepairInputInfo repairInputInfo : list) { - if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString()) - || repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString()) + if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString()) + || repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString()) ) { continue; } result += updateRepairInputDetails(repairInputInfo); } if (result > 0) { - result += taskMapper.updateTaskStatus(taskId.toString(), RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()); + result += taskMapper.updateTaskStatus(taskId.toString(), RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()); } } return result; @@ -663,7 +663,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService private int updateRepairInputDetails(RepairInputInfo repairInputInfo) { int result = 0; RepairInputDetails inputDetails = new RepairInputDetails(); - inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString()); + inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString()); inputDetails.setInputNum(repairInputInfo.getPendingInputNum()); inputDetails.setMaId(repairInputInfo.getMaId() == null ? null : repairInputInfo.getMaId()); inputDetails.setTaskId(repairInputInfo.getTaskId()); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/controller/ScrapApplyDetailsController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/controller/ScrapApplyDetailsController.java index 0d4aacb2..dbd007a0 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/controller/ScrapApplyDetailsController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/controller/ScrapApplyDetailsController.java @@ -75,6 +75,28 @@ public class ScrapApplyDetailsController extends BaseController { util.exportExcel(response, list, "报废任务详细数据"); } + /** + * 报废审核通过 + * @param scrapApplyDetails + * @return + */ + @ApiOperation(value = "报废审核通过") + @GetMapping("/approve") + public AjaxResult approve(@RequestBody ScrapApplyDetails scrapApplyDetails) { + return scrapApplyDetailsService.approve(scrapApplyDetails); + } + + /** + * 报废审核驳回 + * @param scrapApplyDetails + * @return + */ + @ApiOperation(value = "报废审核驳回") + @GetMapping("/reject") + public AjaxResult reject(@RequestBody ScrapApplyDetails scrapApplyDetails) { + return scrapApplyDetailsService.reject(scrapApplyDetails); + } + /** * 获取报废任务详细详细信息 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/ScrapApplyDetails.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/ScrapApplyDetails.java index cafa326f..6ab4e737 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/ScrapApplyDetails.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/ScrapApplyDetails.java @@ -2,6 +2,9 @@ package com.bonus.material.scrap.domain; import java.math.BigDecimal; import java.util.Date; +import java.util.List; + +import com.bonus.material.scrap.domain.vo.ScrapTaskListVo; import com.fasterxml.jackson.annotation.JsonFormat; import com.bonus.common.core.annotation.Excel; import io.swagger.annotations.ApiModelProperty; @@ -25,6 +28,12 @@ public class ScrapApplyDetails extends BaseEntity { /** id */ private Long id; + @ApiModelProperty(value = "报废任务二级详细列表") + private List scrapApplyDetailsList; + + @ApiModelProperty(value = "报废任务一级详细列表") + private List scrapTaskListVoList; + /** 任务ID */ @Excel(name = "任务ID") @ApiModelProperty(value = "任务ID") @@ -33,6 +42,11 @@ public class ScrapApplyDetails extends BaseEntity { @ApiModelProperty(value = "状态") private String status; + private String statusName; + + @ApiModelProperty(value = "任务状态") + private Byte taskStatus; + /** 上级ID */ @Excel(name = "上级ID") @ApiModelProperty(value = "上级ID") diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/vo/ScrapTaskListVo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/vo/ScrapTaskListVo.java index 26a0cf63..4922fbc6 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/vo/ScrapTaskListVo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/domain/vo/ScrapTaskListVo.java @@ -25,6 +25,7 @@ public class ScrapTaskListVo { @ApiModelProperty(value = "报废单号") private String scrapCode; + @ApiModelProperty(value = "维修单号") private String repairCode; @ApiModelProperty(value = "组织id") @@ -71,6 +72,9 @@ public class ScrapTaskListVo { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private String endTime; + @ApiModelProperty(value = "任务状态名称") + private String taskStatusName; + @ApiModelProperty(value = "备注") private String remark; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/mapper/ScrapApplyDetailsMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/mapper/ScrapApplyDetailsMapper.java index 6251aa5e..d8770a49 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/mapper/ScrapApplyDetailsMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/mapper/ScrapApplyDetailsMapper.java @@ -67,4 +67,11 @@ public interface ScrapApplyDetailsMapper { RepairAuditDetails getByRepairId(String s); List getGyoupRepairRecord(RepairAuditDetails byRepairId); + + /** + * 报废任务审核 + * @param applyDetails + * @return + */ + int updateStatus(ScrapApplyDetails applyDetails); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/IScrapApplyDetailsService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/IScrapApplyDetailsService.java index 09e4569a..02245aee 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/IScrapApplyDetailsService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/IScrapApplyDetailsService.java @@ -1,6 +1,8 @@ package com.bonus.material.scrap.service; import java.util.List; + +import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.material.scrap.domain.ScrapApplyDetails; import com.bonus.material.scrap.domain.vo.ScrapTaskListVo; @@ -67,4 +69,18 @@ public interface IScrapApplyDetailsService { * @return 结果 */ public int deleteScrapApplyDetailsById(Long id); + + /** + * 报废审核通过 + * @param scrapApplyDetails + * @return + */ + AjaxResult approve(ScrapApplyDetails scrapApplyDetails); + + /** + * 报废审核驳回 + * @param scrapApplyDetails + * @return + */ + AjaxResult reject(ScrapApplyDetails scrapApplyDetails); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/impl/ScrapApplyDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/impl/ScrapApplyDetailsServiceImpl.java index dbcc2ed1..2ea04e54 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/impl/ScrapApplyDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/scrap/service/impl/ScrapApplyDetailsServiceImpl.java @@ -1,16 +1,25 @@ package com.bonus.material.scrap.service.impl; -import java.util.Collections; import java.util.List; +import java.util.stream.Collectors; + +import com.alibaba.nacos.common.utils.CollectionUtils; +import com.bonus.common.biz.enums.HttpCodeEnum; +import com.bonus.common.biz.enums.RepairInputStatusEnum; +import com.bonus.common.biz.enums.ScrapTaskStatusEnum; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; +import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.common.security.utils.SecurityUtils; import com.bonus.material.scrap.domain.vo.ScrapTaskListVo; -import org.springframework.beans.factory.annotation.Autowired; +import com.bonus.material.task.mapper.TmTaskMapper; import org.springframework.stereotype.Service; import com.bonus.material.scrap.mapper.ScrapApplyDetailsMapper; import com.bonus.material.scrap.domain.ScrapApplyDetails; import com.bonus.material.scrap.service.IScrapApplyDetailsService; +import javax.annotation.Resource; + /** * 报废任务详细Service业务层处理 * @@ -19,9 +28,12 @@ import com.bonus.material.scrap.service.IScrapApplyDetailsService; */ @Service public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService { - @Autowired + @Resource private ScrapApplyDetailsMapper scrapApplyDetailsMapper; + @Resource + private TmTaskMapper taskMapper; + /** * 查询报废任务详细 * @@ -108,4 +120,92 @@ public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService { public int deleteScrapApplyDetailsById(Long id) { return scrapApplyDetailsMapper.deleteScrapApplyDetailsById(id); } + + /** + * 报废审核通过 + * @param scrapApplyDetails + * @return + */ + @Override + public AjaxResult approve(ScrapApplyDetails scrapApplyDetails) { + // TODO: 报废审核二级页面通过 + int result = 0; + if (scrapApplyDetails != null) { + if (scrapApplyDetails.getId() != null) { + scrapApplyDetails.setStatus("1"); + scrapApplyDetails.setAuditBy(SecurityUtils.getUserId()); + scrapApplyDetails.setAuditTime(DateUtils.getNowDate()); + result = scrapApplyDetailsMapper.updateStatus(scrapApplyDetails); + if (result > 0) { + updateTaskStatus(scrapApplyDetails); + } + } else if (CollectionUtils.isNotEmpty(scrapApplyDetails.getScrapApplyDetailsList())) { + for (ScrapApplyDetails applyDetails : scrapApplyDetails.getScrapApplyDetailsList()) { + applyDetails.setStatus("1"); + applyDetails.setAuditBy(SecurityUtils.getUserId()); + applyDetails.setAuditTime(DateUtils.getNowDate()); + result = scrapApplyDetailsMapper.updateStatus(applyDetails); + } + if (result > 0) { + updateTaskStatus(scrapApplyDetails.getScrapApplyDetailsList().get(0)); + } + // TODO: 报废审核一级页面通过 + } else if (CollectionUtils.isNotEmpty(scrapApplyDetails.getScrapTaskListVoList())) { + for (ScrapTaskListVo taskListVo : scrapApplyDetails.getScrapTaskListVoList()) { + // 根据任务id 查询任务详情 + ScrapApplyDetails applyDetails = new ScrapApplyDetails(); + applyDetails.setTaskId(taskListVo.getTaskId()); + List scrapApplyDetailsList = scrapApplyDetailsMapper.selectRepairQuestListByTaskId(applyDetails); + // 将集合中status为0的筛选出来 + List applyDetailsList = scrapApplyDetailsList.stream().filter(applyDetails1 -> "0".equals(applyDetails1.getStatus())).collect(Collectors.toList()); + if (CollectionUtils.isNotEmpty(applyDetailsList)) { + for (ScrapApplyDetails applyDetails1 : applyDetailsList) { + applyDetails1.setStatus("1"); + applyDetails1.setAuditBy(SecurityUtils.getUserId()); + applyDetails1.setAuditTime(DateUtils.getNowDate()); + result = scrapApplyDetailsMapper.updateStatus(applyDetails1); + } + } + if (result > 0) { + updateTaskStatus(applyDetails); + } + } + } + } + if (result > 0) { + return AjaxResult.success("审核通过"); + } + return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg()); + } + + /** + * 更新任务状态 + * @param scrapApplyDetails + */ + private void updateTaskStatus(ScrapApplyDetails scrapApplyDetails) { + List list = scrapApplyDetailsMapper.selectRepairQuestListByTaskId(scrapApplyDetails); + List statusList = list.stream() + .map(scrapApplyDetail -> Integer.parseInt(scrapApplyDetail.getStatus())) + .collect(Collectors.toList()); + if (CollectionUtils.isNotEmpty(statusList)) { + if (!statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_NO_FINISHED.getStatus()) && + statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus())) { + taskMapper.updateTaskStatus(scrapApplyDetails.getTaskId().toString(), ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus()); + } else if (!statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_NO_FINISHED.getStatus()) && + !statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus()) && + statusList.stream().allMatch(status -> status.equals(ScrapTaskStatusEnum.SCRAP_TASK_IN_FINISHED.getStatus()))) { + taskMapper.updateTaskStatus(scrapApplyDetails.getTaskId().toString(), ScrapTaskStatusEnum.SCRAP_TASK_IN_FINISHED.getStatus()); + } + } + } + + /** + * 报废审核驳回 + * @param scrapApplyDetails + * @return + */ + @Override + public AjaxResult reject(ScrapApplyDetails scrapApplyDetails) { + return null; + } } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/scrap/ScrapApplyDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/scrap/ScrapApplyDetailsMapper.xml index 96ca2f9a..a9987fd8 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/scrap/ScrapApplyDetailsMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/scrap/ScrapApplyDetailsMapper.xml @@ -34,12 +34,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -77,25 +90,29 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -177,6 +194,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where id = #{id} + + update scrap_apply_details + set status = #{status}, + audit_by = #{auditBy}, + audit_time = #{auditTime} + where id = #{id} + + delete from scrap_apply_details where id = #{id}