维修模块优化

This commit is contained in:
sxu 2024-11-23 13:07:05 +08:00
parent ddc75e45f2
commit 1cfbfcb013
2 changed files with 49 additions and 21 deletions

View File

@ -0,0 +1,25 @@
package com.bonus.common.biz.enums;
import lombok.Getter;
/**
* @author : xsheng
* @time : 2024-11-23 12:50
* @Description: 维修类型
*/
@Getter
public enum RepairTypeEnum {
PASS(0, "合格"),
INNER_REPAIR(1, "内部维修"),
RETURN_FACTORY(2, "返厂维修"),
TO_SCRAP(3, "待报废");
private final Integer typeId;
private final String typeName;
RepairTypeEnum(Integer typeId, String typeName) {
this.typeId = typeId;
this.typeName = typeName;
}
}

View File

@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.NumberUtil;
import com.bonus.common.biz.enums.MaTypeManageTypeEnum;
import com.bonus.common.biz.enums.RepairTaskStatusEnum;
import com.bonus.common.biz.enums.RepairTypeEnum;
import com.bonus.common.biz.enums.TmTaskTypeEnum;
import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.core.web.domain.AjaxResult;
@ -55,7 +56,9 @@ public class RepairServiceImpl implements RepairService {
private RepairAuditDetailsMapper repairAuditDetailsMapper;
// 1:内部维修 2:外部返厂维修 3:报废
private final int inRepairType = 1, outRepairType = 2, scrapRepairType = 3;
private final int inRepairType = 1;
private final int outRepairType = 2;
private final int scrapRepairType = 3;
@Override
public List<RepairTask> getRepairTaskList(RepairTask bean) {
@ -240,7 +243,7 @@ public class RepairServiceImpl implements RepairService {
// 判断配件列表是否为空
if (CollectionUtil.isNotEmpty(partList)) {
// 内部维修
if (Objects.equals(inRepairType, bean.getRepairType())) {
if (Objects.equals(RepairTypeEnum.INNER_REPAIR.getTypeId(), bean.getRepairType())) {
// 遍历配件列表判断配件类型收费还是不收费
for (RepairPartDetails partDetails : partList) {
if (partDetails.getPartId() != null) {
@ -276,7 +279,7 @@ public class RepairServiceImpl implements RepairService {
}
// 返厂维修
if (outRepairType == bean.getRepairType()) {
if (RepairTypeEnum.RETURN_FACTORY.getTypeId().equals(bean.getRepairType())) {
bean.setPartName(partList.get(0).getPartName());
bean.setPartType(partList.get(0).getPartType());
bean.setRepairContent(partList.get(0).getRepairContent());
@ -346,7 +349,7 @@ public class RepairServiceImpl implements RepairService {
repairRecord.setTypeId(Long.valueOf(bean.getTypeId()));
repairRecord.setRepairNum(repairedNum);
// 快捷维修设置为内部维修
repairRecord.setRepairType(inRepairType);
repairRecord.setRepairType(RepairTypeEnum.INNER_REPAIR.getTypeId());
repairRecord.setCreateBy(String.valueOf(loginUser.getUserid()));
repairRecord.setCompanyId(bean.getCompanyId());
repairMapper.addRecord(repairRecord);
@ -477,7 +480,7 @@ public class RepairServiceImpl implements RepairService {
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
for (RepairPartDetails repairPartDetails : partList) {
repairApplyRecord.setId(bean.getId()).setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(outRepairType).setRepairNum(repairPartDetails.getRepairNum()).setScrapNum(0)
.setRepairType(RepairTypeEnum.RETURN_FACTORY.getTypeId()).setRepairNum(repairPartDetails.getRepairNum()).setScrapNum(0)
.setPartName(repairPartDetails.getPartName()).setPartType(repairPartDetails.getPartType())
.setRepairContent(repairPartDetails.getRepairContent()).setSupplierId(repairPartDetails.getSupplierId())
.setPartNum(repairPartDetails.getPartNum()).setRepairer(loginUser.getUsername())
@ -530,7 +533,7 @@ public class RepairServiceImpl implements RepairService {
// 维修记录表信息
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(scrapRepairType).setStatus(0L).setIsSlt(0L).setPartNum(0)
.setRepairType(RepairTypeEnum.TO_SCRAP.getTypeId()).setStatus(0L).setIsSlt(0L).setPartNum(0)
.setFileIds(fileInfo.getId() == null ? "" : String.valueOf(fileInfo.getId()))
.setRepairNum(0).setScrapNum(bean.getNumberScrapRepairPartList().get(0).getScrapNum())
.setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason())
@ -545,7 +548,7 @@ public class RepairServiceImpl implements RepairService {
// 维修记录表信息
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(scrapRepairType).setStatus(0L).setIsSlt(0L).setPartNum(0)
.setRepairType(RepairTypeEnum.TO_SCRAP.getTypeId()).setStatus(0L).setIsSlt(0L).setPartNum(0)
.setRepairNum(0).setScrapNum(bean.getNumberScrapRepairPartList().get(0).getScrapNum())
.setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason())
.setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType())
@ -596,7 +599,7 @@ public class RepairServiceImpl implements RepairService {
}
// 如果是数量管理那么默认为内部维修
if (bean.getRepairType() == null && MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(manageType)) {
bean.setRepairType(inRepairType);
bean.setRepairType(RepairTypeEnum.INNER_REPAIR.getTypeId());
}
// 再检查还是null的话直接结束任务
if (bean.getRepairType() == null) {
@ -604,15 +607,15 @@ public class RepairServiceImpl implements RepairService {
}
// 内部维修
if (bean.getRepairType() == inRepairType) {
if (RepairTypeEnum.INNER_REPAIR.getTypeId().equals(bean.getRepairType())) {
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
// 遍历配件列表判断配件类型收费还是不收费
for (RepairPartDetails partDetails : partList) {
// 维修记录表信息
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId()).setRepairType(inRepairType);
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId()).setRepairType(RepairTypeEnum.INNER_REPAIR.getTypeId());
if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(manageType)) {
repairApplyRecord.setRepairNum(scrapRepairType != bean.getRepairType() ? 1 : 0);
repairApplyRecord.setScrapNum(scrapRepairType == bean.getRepairType() ? 1 : 0);
repairApplyRecord.setRepairNum(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0);
repairApplyRecord.setScrapNum(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0);
}
if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(manageType)) {
repairApplyRecord.setRepairNum(partDetails.getRepairNum());
@ -656,7 +659,7 @@ public class RepairServiceImpl implements RepairService {
}
// 外部维修
if (bean.getRepairType() == outRepairType) {
if (RepairTypeEnum.RETURN_FACTORY.getTypeId().equals(bean.getRepairType())) {
// ---------------校验维修数量-----------------
// 统计已维修数量 + 本次维修数量
int repairNum = OptionalInt.of(bean.getRepairedNum()).orElse(0) + bean.getRepairNum();
@ -670,7 +673,7 @@ public class RepairServiceImpl implements RepairService {
// 编码管理--外部返厂维修
RepairApplyRecord repairApplyRecord = new RepairApplyRecord().setId(bean.getId()).setTaskId(bean.getTaskId()).setMaId(bean.getMaId())
.setTypeId(bean.getTypeId()).setRepairType(outRepairType)
.setTypeId(bean.getTypeId()).setRepairType(RepairTypeEnum.RETURN_FACTORY.getTypeId())
.setPartName(partList.get(0).getPartName())
.setPartType(partList.get(0).getPartType())
.setRepairContent(partList.get(0).getRepairContent()).setPartNum(partList.get(0).getPartNum());
@ -692,7 +695,7 @@ public class RepairServiceImpl implements RepairService {
}
// 如果是报废类型进行上传附件相关处理
if (scrapRepairType == bean.getRepairType()) {
if (RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType())) {
if (CollectionUtil.isNotEmpty(partList.get(0).getFileList())) {
for (BmFileInfo fileInfo : partList.get(0).getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
@ -704,8 +707,8 @@ public class RepairServiceImpl implements RepairService {
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(bean.getRepairType()).setStatus(0L).setFileIds(String.valueOf(fileInfo.getId()))
.setRepairNum(bean.getRepairType() != scrapRepairType ? 1 : 0)
.setScrapNum(bean.getRepairType() == scrapRepairType ? 1 : 0)
.setRepairNum(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setScrapNum(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setCreateBy(loginUser.getUsername());
// 不选维修配件时, 只添加维修记录表
@ -716,8 +719,8 @@ public class RepairServiceImpl implements RepairService {
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(bean.getRepairType()).setStatus(0L)
.setRepairNum(bean.getRepairType() != scrapRepairType ? 1 : 0)
.setScrapNum(bean.getRepairType() == scrapRepairType ? 1 : 0)
.setRepairNum(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setScrapNum(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setCreateBy(loginUser.getUsername());
// 不选维修配件时, 只添加维修记录表
@ -730,8 +733,8 @@ public class RepairServiceImpl implements RepairService {
RepairApplyRecord repairApplyRecord = new RepairApplyRecord();
repairApplyRecord.setTaskId(bean.getTaskId()).setMaId(bean.getMaId()).setTypeId(bean.getTypeId())
.setRepairType(bean.getRepairType()).setStatus(0L)
.setRepairNum(bean.getRepairType() != scrapRepairType ? 1 : 0)
.setScrapNum(bean.getRepairType() == scrapRepairType ? 1 : 0)
.setRepairNum(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setScrapNum(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)
.setCreateBy(loginUser.getUsername());
// 不选维修配件时, 只添加维修记录表