This commit is contained in:
mashuai 2025-08-13 11:09:23 +08:00
parent 11a5411d21
commit 335d48b5f3
1 changed files with 46 additions and 3 deletions

View File

@ -713,8 +713,6 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
typeMapper.updateType(type);
}
// 批量插入详情数据
// 将purchaseCheckDetailsList的status全部设置为2
purchaseCheckDetailsList.forEach(o -> o.setStatus(PurchaseTaskStatusEnum.TO_CHECK.getStatus()));
final int count = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckDetailsList);
if (0 < count) {
return AjaxResult.success("新增任务成功");
@ -1091,10 +1089,55 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
try {
final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()};
purchaseCheckDetailsMapper.deleteDetails(ids);
insertPurchaseCheckDetails(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId());
insertPurchaseCheckDetailsInfo(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId());
return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo());
} catch (final Exception e) {
throw new ServiceException("错误信息描述");
}
}
/**
* 批量插入新购验收任务详情
* @param purchaseCheckDetailsList
* @param taskId
* @return
*/
private int insertPurchaseCheckDetailsInfo(List<PurchaseCheckDetails> purchaseCheckDetailsList, Long taskId) {
int count = 0;
if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) {
for (PurchaseCheckDetails details : purchaseCheckDetailsList) {
details.setTaskId(taskId);
details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ?
PurchaseTaskStatusEnum.TO_CHECK.getStatus() :
PurchaseTaskStatusEnum.TO_NOTICE.getStatus());
details.setInputStatus("0");
final List<BmFileInfo> bmFileInfos = details.getBmFileInfos();
if (!CollectionUtils.isEmpty(bmFileInfos)) {
bmFileInfos.forEach(o -> {
o.setTaskId(taskId);
o.setModelId(details.getTypeId());
o.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString());
o.setCreateTime(DateUtils.getNowDate());
});
bmFileInfoMapper.insertBmFileInfos(bmFileInfos);
}
Type type = new Type();
type.setTypeId(details.getTypeId());
type.setUpdateTime(DateUtils.getNowDate());
type.setUpdateBy(SecurityUtils.getLoginUser().getUserid().toString());
type.setBuyPrice(details.getPurchaseTaxPrice());
type.setNotTaxPrice(details.getPurchasePrice());
Type maType = typeMapper.getMaType(details.getTypeId());
if (maType != null && (maType.getRentPrice() == null || maType.getRentPrice().compareTo(BigDecimal.ZERO) == 0)) {
type.setRentPrice(details.getRentPrice());
}
typeMapper.updateType(type);
}
// 批量插入详情数据
// 将purchaseCheckDetailsList的status全部设置为2
purchaseCheckDetailsList.forEach(o -> o.setStatus(PurchaseTaskStatusEnum.TO_CHECK.getStatus()));
count = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckDetailsList);
}
return count;
}
}