维修优化

This commit is contained in:
sxu 2024-11-25 14:37:30 +08:00
parent cd056ed34d
commit 0d5ef173c8
1 changed files with 13 additions and 25 deletions

View File

@ -456,31 +456,19 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
*/
@Override
public int outerAudit(@NotNull List<RepairAuditDetails> repairAuditDetails) {
// 提取所有需要更新的 ID
List<Long> taskIds = repairAuditDetails.stream()
.filter(Objects::nonNull)
.map(RepairAuditDetails::getTaskId)
.filter(Objects::nonNull)
.collect(Collectors.toList());
if (taskIds.isEmpty()) {
return 0;
}
List<RepairAuditDetails> repairAuditDetailsByQuery = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(taskIds);
if (CollectionUtils.isEmpty(repairAuditDetailsByQuery)) {
return 0;
}
List<RepairInputDetails> inputList = new ArrayList<>();
for (RepairAuditDetails details : repairAuditDetailsByQuery) {
RepairInputDetails inputVo = new RepairInputDetails();
BeanUtils.copyProperties(details, inputVo);
inputList.add(inputVo);
}
repairInputDetailsMapper.batchInsertRepairInputDetails(inputList);
batchInsertRepairInputDetails(repairAuditDetailsByQuery);
try {
List<Long> ids = repairAuditDetailsByQuery.stream()
.filter(Objects::nonNull)
@ -501,33 +489,33 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
*/
@Override
public int updateRepairAuditDetailsBatch(@NotNull List<RepairAuditDetails> repairAuditDetails) {
// 提取所有需要更新的 ID
List<Long> ids = repairAuditDetails.stream()
.filter(Objects::nonNull)
.map(RepairAuditDetails::getId)
.filter(Objects::nonNull)
.collect(Collectors.toList());
if (ids.isEmpty()) {
return 0;
}
List<RepairInputDetails> inputList = new ArrayList<>();
for (RepairAuditDetails details : repairAuditDetails) {
RepairInputDetails inputVo = new RepairInputDetails();
BeanUtils.copyProperties(details, inputVo);
inputList.add(inputVo);
}
repairInputDetailsMapper.batchInsertRepairInputDetails(inputList);
batchInsertRepairInputDetails(repairAuditDetails);
try {
// 调用 Mapper 方法进行批量更新
return repairAuditDetailsMapper.updateRepairAuditDetailsBatch(ids, String.valueOf(repairAuditDetails.get(0).getStatus()));
} catch (Exception e) {
throw new ServiceException("错误信息描述");
}
}
private void batchInsertRepairInputDetails(List<RepairAuditDetails> repairAuditDetailsByQuery) {
List<RepairInputDetails> inputList = new ArrayList<>();
for (RepairAuditDetails details : repairAuditDetailsByQuery) {
RepairInputDetails inputVo = new RepairInputDetails();
BeanUtils.copyProperties(details, inputVo);
inputVo.setAuditId(details.getId());
inputList.add(inputVo);
}
repairInputDetailsMapper.batchInsertRepairInputDetails(inputList);
}
/**
* 批量删除修试审核详细
*