新购验收绑定会签人员去重

This commit is contained in:
syruan 2025-01-21 13:43:26 +08:00
parent e10c3f6330
commit 422831bc0d
1 changed files with 14 additions and 17 deletions

View File

@ -71,7 +71,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
private TmTaskMapper tmTaskMapper;
@Resource
BmFileInfoMapper bmFileInfoMapper;
private BmFileInfoMapper bmFileInfoMapper;
@Resource
private TypeMapper typeMapper;
@ -79,7 +79,6 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
@Resource
private SignProcessMapper signProcessMapper;
// 引入新购任务阶段常量
private static final int PURCHASE_TASK_STAGE_MANAGE = 1;
private static final int PURCHASE_TASK_STAGE_CHECK = 2;
@ -278,9 +277,6 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
purchaseInfo.setCheckMaNumber(checkMaTotalNumber);
purchaseInfo.setInputMaNumber(inputMaTotalNumber);
purchaseInfo.setWaitInputNumber(Optional.of(purchaseMaTotalNumber).orElse(BigDecimal.ZERO).subtract(Optional.of(inputMaTotalNumber).orElse(BigDecimal.ZERO)));
// if (null != purchaseInfo.getTaxRate() && null != purchaseInfo.getPurchasePrice()) {
// purchaseInfo.setPurchaseTaxPrice(calculateTaxPrice(purchaseMaTotalPrice.get(), purchaseInfo.getTaxRate()));
// }
// 设置外层任务状态入库待开始入库进行中入库已完成
final TmTask tmTask = tmTaskMapper.selectTmTaskByTaskId(purchaseInfo.getTaskId());
@ -493,7 +489,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
System.out.println("ONE会签成功,放行进行验收流程!");
} else {
// 如果本次会签完成后还有需要进行会签的那么本次会签完成返回前端
return AjaxResult.success("本次会签成功,还有未进行的会签部门!");
return AjaxResult.success("会签成功!");
}
} else {
return AjaxResult.error("会签失败!插入0条数据");
@ -523,10 +519,6 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) {
details.setStatus(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus());
result = 0 < purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) ? AjaxResult.success("detail验证驳回成功") : AjaxResult.error("details无验证信息");
/*tmTaskMapper.updateTmTask(new TmTask()
.setTaskId(details.getTaskId())
.setTaskType(TmTaskTypeEnum.TM_TASK_PURCHASE.getTaskTypeId())
.setTaskStatus(PurchaseTaskStatusEnum.TASK_IN_PROGRESS.getStatus()));*/
extractedFile(details);
}
}
@ -570,21 +562,26 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
List<PurchaseCheckDetails> list = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListFromInfo(purchaseCheckInfo);
if (!CollectionUtils.isEmpty(list)) {
List<PurchaseSignRecord> purchaseSignRecordUserSignList = new ArrayList<>();
HashMap<String, PurchaseSignRecord> purchaseSignRecordMap = new HashMap<>();
for (PurchaseCheckDetails purchaseCheckDetails : list) {
// 查询已签名的记录
if (purchaseSignRecordUserSignList.isEmpty()) {
purchaseSignRecordUserSignList = signProcessMapper.getPurchaseSignUrlListByTaskId(purchaseCheckDetails.getTaskId());
for (PurchaseSignRecord purchaseSignRecord : purchaseSignRecordUserSignList) {
purchaseSignRecordMap.put(purchaseSignRecord.getSignUrl(), purchaseSignRecord);
}
}
result.setSignUrl(null != purchaseCheckDetails.getSignUrl() ? purchaseCheckDetails.getSignUrl() : "");
result.setSignType(null != purchaseCheckDetails.getSignType() ? purchaseCheckDetails.getSignType() : "");
}
// 分流存入集合
for (PurchaseSignRecord userSignObj : purchaseSignRecordUserSignList) {
if (null == userSignObj.getOrgId()) { continue;}
if (311 == userSignObj.getOrgId()) {result.getGySignUrl().add(userSignObj);}
if (313 == userSignObj.getOrgId()) {result.getScSignUrl().add(userSignObj);}
if (312 == userSignObj.getOrgId()) {result.getKgSignUrl().add(userSignObj);}
}
// 分流存入集合,利用Map去重
purchaseSignRecordMap.forEach((k, v) -> {
if (null != v.getUserId()) {
if (311 == v.getOrgId()) {result.getGySignUrl().add(v);}
if (313 == v.getOrgId()) {result.getScSignUrl().add(v);}
if (312 == v.getOrgId()) {result.getKgSignUrl().add(v);}
}
});
}
// 执行SQL查询内层信息
final List<PurchaseCheckDetails> purchaseCheckDetails = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListByTaskId(taskId, null, SecurityUtils.getUserId());