This commit is contained in:
mashuai 2025-07-31 15:06:18 +08:00
parent 80cb178f52
commit d6279ec605
4 changed files with 92 additions and 38 deletions

View File

@ -291,9 +291,13 @@ public class SelectServiceImpl implements SelectService {
bmUnit.setUnitId(info.getUnitId()); bmUnit.setUnitId(info.getUnitId());
List<ProjectTreeNode> unitList = mapper.getUnitList(bmUnit); List<ProjectTreeNode> unitList = mapper.getUnitList(bmUnit);
if (CollectionUtils.isNotEmpty(unitList)) { if (CollectionUtils.isNotEmpty(unitList)) {
list.addAll(unitList); // 将unitList数据添加到list中但需进行去重
for (ProjectTreeNode projectTreeNode : unitList) {
if (!list.contains(projectTreeNode)) {
list.add(projectTreeNode);
}
}
} }
} }
list = list.stream() list = list.stream()
.filter(Objects::nonNull) .filter(Objects::nonNull)

View File

@ -113,6 +113,12 @@ public class RepairDeviceVO {
@ApiModelProperty(value = "报废附件") @ApiModelProperty(value = "报废附件")
private List<BmFileInfo> fileList; private List<BmFileInfo> fileList;
@ApiModelProperty(value = "内部维修附件")
private List<RepairFileInfo> inRepairList;
@ApiModelProperty(value = "外部维修附件")
private List<RepairFileInfo> outRepairList;
private String createBy; private String createBy;
@ApiModelProperty(value = "维修拆分层级") @ApiModelProperty(value = "维修拆分层级")

View File

@ -0,0 +1,25 @@
package com.bonus.material.repair.domain.vo;
import com.bonus.common.biz.domain.BmFileInfo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author : 阮世耀
* @version : 1.0
* @CreateTime: 2024-11-15 14:35
* @Description: 维修附件及备注
*/
@Data
@Accessors(chain = true)
public class RepairFileInfo {
@ApiModelProperty(value = "维修附件")
private List<BmFileInfo> fileList;
@ApiModelProperty(value = "备注")
private String remark;
}

View File

@ -541,12 +541,34 @@ public class RepairServiceImpl implements RepairService {
partList = bean.getCodeInRepairPartList(); partList = bean.getCodeInRepairPartList();
// 更新维修数量并修改维修人员 // 更新维修数量并修改维修人员
repairMapper.updateRepairedNumAndStatus(bean.getId(), BigDecimal.ONE, 1, loginUser.getUsername(), loginUser.getUserid()); repairMapper.updateRepairedNumAndStatus(bean.getId(), BigDecimal.ONE, 1, loginUser.getUsername(), loginUser.getUserid());
// 保存内部维修文件
if (CollectionUtil.isNotEmpty(bean.getInRepairList().get(0).getFileList())) {
for (BmFileInfo fileInfo : bean.getInRepairList().get(0).getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setFileType(Long.valueOf(RepairTypeEnum.INNER_REPAIR.getTypeId()))
.setTaskId(bean.getTaskId()).setModelId(bean.getId())
.setCreateBy(loginUser.getUsername());
fileInfo.setCreateTime(DateUtils.getNowDate());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
}
}
break; break;
} }
case RETURN_FACTORY: { case RETURN_FACTORY: {
partList = bean.getCodeOutRepairPartList(); partList = bean.getCodeOutRepairPartList();
// 更新维修数量维修人员不变 // 更新维修数量维修人员不变
repairMapper.updateRepairedNumTwoAndStatus(bean.getId(), BigDecimal.ONE, 1, loginUser.getUserid()); repairMapper.updateRepairedNumTwoAndStatus(bean.getId(), BigDecimal.ONE, 1, loginUser.getUserid());
// 保存外部维修文件
if (CollectionUtil.isNotEmpty(bean.getOutRepairList().get(0).getFileList())) {
for (BmFileInfo fileInfo : bean.getOutRepairList().get(0).getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId()))
.setTaskId(bean.getTaskId()).setModelId(bean.getId())
.setCreateBy(loginUser.getUsername());
fileInfo.setCreateTime(DateUtils.getNowDate());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
}
}
break; break;
} }
case TO_SCRAP: { case TO_SCRAP: {
@ -619,6 +641,17 @@ public class RepairServiceImpl implements RepairService {
copeNumberManageInList(bean, partList, loginUser, bean.getManageType()); copeNumberManageInList(bean, partList, loginUser, bean.getManageType());
} }
} }
// 保存内部维修文件
if (CollectionUtil.isNotEmpty(bean.getInRepairList().get(0).getFileList())) {
for (BmFileInfo fileInfo : bean.getInRepairList().get(0).getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setFileType(Long.valueOf(RepairTypeEnum.INNER_REPAIR.getTypeId()))
.setTaskId(bean.getTaskId()).setModelId(bean.getId())
.setCreateBy(loginUser.getUsername());
fileInfo.setCreateTime(DateUtils.getNowDate());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
}
}
// 处理配件集合数据 -- 数量管理--外部返厂维修 // 处理配件集合数据 -- 数量管理--外部返厂维修
if (CollectionUtil.isNotEmpty(bean.getNumberOutRepairPartList())) { if (CollectionUtil.isNotEmpty(bean.getNumberOutRepairPartList())) {
@ -649,18 +682,19 @@ public class RepairServiceImpl implements RepairService {
.setPartNum(repairPartDetails.getPartNum()).setRepairer(loginUser.getUsername()) .setPartNum(repairPartDetails.getPartNum()).setRepairer(loginUser.getUsername())
.setPartPrice(Optional.ofNullable(repairPartDetails.getPartPrice()).orElse(BigDecimal.ZERO)) .setPartPrice(Optional.ofNullable(repairPartDetails.getPartPrice()).orElse(BigDecimal.ZERO))
.setCreateBy(loginUser.getUsername()); .setCreateBy(loginUser.getUsername());
repairApplyRecord.setRemark(StringUtils.isNotBlank(repairPartDetails.getRemark()) ? repairPartDetails.getRemark() : ""); repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getOutRepairList().get(0).getRemark()) ? bean.getOutRepairList().get(0).getRemark() : "");
// 新增维修记录表 // 新增维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
// 保存外部维修附件 }
if (CollectionUtils.isEmpty(repairPartDetails.getFileList())) { // 保存外部维修文件
for (BmFileInfo fileInfo : repairPartDetails.getFileList()) { if (CollectionUtil.isNotEmpty(bean.getOutRepairList().get(0).getFileList())) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) for (BmFileInfo fileInfo : bean.getOutRepairList().get(0).getFileList()) {
.setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId())) fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setTaskId(bean.getTaskId()).setModelId(bean.getId()) .setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId()))
.setCreateBy(loginUser.getUsername()); .setTaskId(bean.getTaskId()).setModelId(bean.getId())
bmFileInfoMapper.insertBmFileInfo(fileInfo); .setCreateBy(loginUser.getUsername());
} fileInfo.setCreateTime(DateUtils.getNowDate());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
} }
} }
for (int i = 0; i < partList.size(); i++) { for (int i = 0; i < partList.size(); i++) {
@ -706,7 +740,6 @@ public class RepairServiceImpl implements RepairService {
.setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason()) .setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason())
.setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType()) .setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType())
.setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername()); .setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername());
repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getNumberScrapRepairPartList().get(0).getRemark()) ? bean.getNumberScrapRepairPartList().get(0).getRemark() : "");
// 因报废操作无需配件, 只添加维修记录表 // 因报废操作无需配件, 只添加维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
} }
@ -720,7 +753,6 @@ public class RepairServiceImpl implements RepairService {
.setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason()) .setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason())
.setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType()) .setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType())
.setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername()); .setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername());
repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getNumberScrapRepairPartList().get(0).getRemark()) ? bean.getNumberScrapRepairPartList().get(0).getRemark() : "");
// 因报废操作无需配件, 只添加维修记录表 // 因报废操作无需配件, 只添加维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
} }
@ -864,7 +896,7 @@ public class RepairServiceImpl implements RepairService {
} }
repairApplyRecord.setCreateBy(loginUser.getUsername()); repairApplyRecord.setCreateBy(loginUser.getUsername());
repairApplyRecord.setStatus(0L); repairApplyRecord.setStatus(0L);
repairApplyRecord.setRemark(StringUtils.isNotBlank(partDetails.getRemark()) ? partDetails.getRemark() : ""); repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getInRepairList().get(0).getRemark()) ? bean.getInRepairList().get(0).getRemark() : "");
if ((null != partDetails.getId() || null != partDetails.getPartId()) && null != partDetails.getPartNum()) { if ((null != partDetails.getId() || null != partDetails.getPartId()) && null != partDetails.getPartNum()) {
partDetails.setPartId(null != partDetails.getPartId() ? partDetails.getPartId() : partDetails.getId()); partDetails.setPartId(null != partDetails.getPartId() ? partDetails.getPartId() : partDetails.getId());
// 有维修配件时,如果价格为空设置为0 // 有维修配件时,如果价格为空设置为0
@ -917,16 +949,6 @@ public class RepairServiceImpl implements RepairService {
// 不选维修配件时, 只添加维修记录表 // 不选维修配件时, 只添加维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
} }
// 保存内部维修文件
if (CollectionUtils.isEmpty(partDetails.getFileList())) {
for (BmFileInfo fileInfo : partDetails.getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId()))
.setTaskId(bean.getTaskId()).setModelId(bean.getId())
.setCreateBy(loginUser.getUsername());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
}
}
} }
// 根据配件id 统计配件费用 // 根据配件id 统计配件费用
PartType type = partTypeMapper.selectPartTypeByPaId(partList.get(0).getPartId()); PartType type = partTypeMapper.selectPartTypeByPaId(partList.get(0).getPartId());
@ -969,9 +991,18 @@ public class RepairServiceImpl implements RepairService {
if (null == partList.get(i).getSupplierId()) { if (null == partList.get(i).getSupplierId()) {
throw new ServiceException("请选择返厂厂家"); throw new ServiceException("请选择返厂厂家");
} }
repairApplyRecord.setCreateBy(loginUser.getUsername());
repairApplyRecord.setSupplierId(partList.get(i).getSupplierId()); repairApplyRecord.setSupplierId(partList.get(i).getSupplierId());
repairApplyRecord.setPartPrice(Optional.ofNullable(partList.get(i).getBackCost()).orElse(BigDecimal.ZERO)); repairApplyRecord.setPartPrice(Optional.ofNullable(partList.get(i).getBackCost()).orElse(BigDecimal.ZERO));
repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(i).getRemark()) ? partList.get(i).getRemark() : ""); repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getOutRepairList().get(0).getRemark()) ? bean.getOutRepairList().get(0).getRemark() : "");
if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(manageType)) {
repairApplyRecord.setRepairNum(BigDecimal.valueOf(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0));
repairApplyRecord.setScrapNum(BigDecimal.valueOf(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0));
}
if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(manageType)) {
repairApplyRecord.setRepairNum(partList.get(i).getRepairNum());
}
// 新增维修记录表 // 新增维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
@ -986,16 +1017,6 @@ public class RepairServiceImpl implements RepairService {
if (count<=0){ if (count<=0){
repairMapper.addRepairCost(repairApplyRecord, sfCosts, partList.get(i).getPartType().toString()); repairMapper.addRepairCost(repairApplyRecord, sfCosts, partList.get(i).getPartType().toString());
} }
// 保存外部返厂维修文件
if (CollectionUtils.isEmpty(partList.get(i).getFileList())) {
for (BmFileInfo fileInfo : partList.get(i).getFileList()) {
fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId())
.setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId()))
.setTaskId(bean.getTaskId()).setModelId(bean.getId())
.setCreateBy(loginUser.getUsername());
bmFileInfoMapper.insertBmFileInfo(fileInfo);
}
}
} }
} }
@ -1020,7 +1041,6 @@ public class RepairServiceImpl implements RepairService {
.setCreateBy(loginUser.getUsername()); .setCreateBy(loginUser.getUsername());
repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapType(partList.get(0).getScrapType());
repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason());
repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(0).getRemark()) ? partList.get(0).getRemark() : "");
// 不选维修配件时, 只添加维修记录表 // 不选维修配件时, 只添加维修记录表
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
} }
@ -1035,7 +1055,6 @@ public class RepairServiceImpl implements RepairService {
repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapType(partList.get(0).getScrapType());
repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason());
// 不选维修配件时, 只添加维修记录表 // 不选维修配件时, 只添加维修记录表
repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(0).getRemark()) ? partList.get(0).getRemark() : "");
repairMapper.addRecord(repairApplyRecord); repairMapper.addRecord(repairApplyRecord);
} }
} }