维修单分拆
This commit is contained in:
parent
11d34c654a
commit
989a2fa452
|
|
@ -85,11 +85,13 @@ public class RepairServiceImpl implements RepairService {
|
||||||
Long[] ids = tempList.stream().map(RepairDeviceVO::getId).toArray(Long[]::new);
|
Long[] ids = tempList.stream().map(RepairDeviceVO::getId).toArray(Long[]::new);
|
||||||
int repairNumSum = tempList.stream().mapToInt(RepairDeviceVO::getRepairNum).sum();
|
int repairNumSum = tempList.stream().mapToInt(RepairDeviceVO::getRepairNum).sum();
|
||||||
int repairedNumSum = tempList.stream().mapToInt(RepairDeviceVO::getRepairedNum).sum();
|
int repairedNumSum = tempList.stream().mapToInt(RepairDeviceVO::getRepairedNum).sum();
|
||||||
|
int scrapNumSum = tempList.stream().mapToInt(RepairDeviceVO::getScrapNum).sum();
|
||||||
//BigDecimal typeCostSum = tempList.stream().map(RepairDeviceVO::getTotalCost).reduce(BigDecimal.ZERO, BigDecimal::add);
|
//BigDecimal typeCostSum = tempList.stream().map(RepairDeviceVO::getTotalCost).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
vo.setRepairDeviceList(toRepairList);
|
vo.setRepairDeviceList(toRepairList);
|
||||||
vo.setIds(ids);
|
vo.setIds(ids);
|
||||||
vo.setTypeRepairNum(repairNumSum);
|
vo.setTypeRepairNum(repairNumSum);
|
||||||
vo.setTypeRepairedNum(repairedNumSum);
|
vo.setTypeRepairedNum(repairedNumSum);
|
||||||
|
vo.setTypeScrapNum(scrapNumSum);
|
||||||
//vo.setTypeCost(typeCostSum);
|
//vo.setTypeCost(typeCostSum);
|
||||||
vo.setTaskId(tempList.get(0).getTaskId());
|
vo.setTaskId(tempList.get(0).getTaskId());
|
||||||
vo.setCode(tempList.get(0).getCode());
|
vo.setCode(tempList.get(0).getCode());
|
||||||
|
|
@ -557,19 +559,27 @@ public class RepairServiceImpl implements RepairService {
|
||||||
if (Objects.isNull(details)) {
|
if (Objects.isNull(details)) {
|
||||||
throw new ServiceException("此维修记录不存在,请检查后提交!");
|
throw new ServiceException("此维修记录不存在,请检查后提交!");
|
||||||
}
|
}
|
||||||
// -------------校验维修数量开始----------------
|
|
||||||
// 统计历史已报废数量 + 本次报废数量 = 报废总数
|
|
||||||
int scrapNum = OptionalInt.of(details.getScrapNum()).orElse(0) + bean.getNumberScrapRepairPartList().get(0).getScrapNum();
|
|
||||||
// 统计 报废总数 + 历史已维修数量,
|
|
||||||
int num = scrapNum + details.getRepairedNum();
|
|
||||||
// 不能大与总的待维修数量
|
|
||||||
if (num > details.getRepairNum()) {
|
|
||||||
throw new ServiceException("报废数量大于维修总量! 本次报废数量:" + bean.getScrapNum() + ",已报废数量:" + details.getScrapNum() + ",维修总量:" + details.getRepairNum());
|
|
||||||
}
|
|
||||||
// -------------校验维修数量结束----------------
|
|
||||||
|
|
||||||
// 更新报废数量
|
|
||||||
repairMapper.updateScrapNum(bean.getId(), scrapNum, loginUser.getUserid());
|
// // -------------校验维修数量开始----------------
|
||||||
|
// // 统计历史已报废数量 + 本次报废数量 = 报废总数
|
||||||
|
// int scrapNum = OptionalInt.of(details.getScrapNum()).orElse(0) + bean.getNumberScrapRepairPartList().get(0).getScrapNum();
|
||||||
|
// // 统计 报废总数 + 历史已维修数量,
|
||||||
|
// int num = scrapNum + details.getRepairedNum();
|
||||||
|
// // 不能大与总的待维修数量
|
||||||
|
// if (num > details.getRepairNum()) {
|
||||||
|
// throw new ServiceException("报废数量大于维修总量! 本次报废数量:" + bean.getScrapNum() + ",已报废数量:" + details.getScrapNum() + ",维修总量:" + details.getRepairNum());
|
||||||
|
// }
|
||||||
|
// // -------------校验维修数量结束----------------
|
||||||
|
//
|
||||||
|
// // 更新报废数量
|
||||||
|
// repairMapper.updateScrapNum(bean.getId(), scrapNum, loginUser.getUserid());
|
||||||
|
|
||||||
|
|
||||||
|
// 维修单拆分--报废机具
|
||||||
|
int thisTimeScrapNumber = bean.getNumberScrapRepairPartList().get(0).getScrapNum();
|
||||||
|
splitRepairListToScrap(bean, thisTimeScrapNumber, loginUser);
|
||||||
|
|
||||||
|
|
||||||
if (CollectionUtil.isNotEmpty(bean.getNumberScrapRepairPartList().get(0).getFileList())) {
|
if (CollectionUtil.isNotEmpty(bean.getNumberScrapRepairPartList().get(0).getFileList())) {
|
||||||
for (BmFileInfo fileInfo : bean.getNumberScrapRepairPartList().get(0).getFileList()) {
|
for (BmFileInfo fileInfo : bean.getNumberScrapRepairPartList().get(0).getFileList()) {
|
||||||
|
|
@ -634,6 +644,23 @@ public class RepairServiceImpl implements RepairService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void splitRepairListToScrap(RepairDeviceVO bean, int thisTimeScrapNum, LoginUser loginUser) {
|
||||||
|
if ((bean.getRepairNum() - thisTimeScrapNum) == 0) {
|
||||||
|
repairMapper.updateScrapNum(bean.getId(), thisTimeScrapNum, loginUser.getUserid());
|
||||||
|
} else {
|
||||||
|
RepairApplyDetails newDetail = new RepairApplyDetails();
|
||||||
|
BeanUtils.copyProperties(bean, newDetail);
|
||||||
|
newDetail.setRepairNum((long) (thisTimeScrapNum));
|
||||||
|
newDetail.setScrapNum((long) thisTimeScrapNum);
|
||||||
|
newDetail.setCreateBy(SecurityUtils.getUsername());
|
||||||
|
newDetail.setCreateTime(DateUtils.getNowDate());
|
||||||
|
newDetail.setRepairer(SecurityUtils.getUsername());
|
||||||
|
newDetail.setStatus("1");
|
||||||
|
repairApplyDetailsMapper.insertRepairApplyDetails(newDetail);
|
||||||
|
repairMapper.updateRepairNum(bean.getId(), bean.getRepairNum() - thisTimeScrapNum, loginUser.getUserid(), loginUser.getUserid());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 配件列表价格合计
|
* 配件列表价格合计
|
||||||
* @param partList 配件列表
|
* @param partList 配件列表
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue