From 8b78c2393def3006dbc88a24d226b34e13b78e36 Mon Sep 17 00:00:00 2001 From: Yen Date: Mon, 12 May 2025 09:58:41 +0800 Subject: [PATCH] =?UTF-8?q?feat(rebate):=20=E6=89=B9=E9=87=8F=E6=A0=B8?= =?UTF-8?q?=E9=94=80=E5=8F=82=E6=95=B0=E6=95=B4=E5=90=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OmsSaleOrderOptionsServiceImpl.java | 6 +-- .../impl/OmsSaleOrderPart1ServiceImpl.java | 3 +- .../tbs/entity/bo/TbsAffairCommitBo.java | 5 +++ ...VerificationBatchOperationServiceImpl.java | 40 +++++++------------ .../impl/VtbVerificationBatchServiceImpl.java | 6 +-- 5 files changed, 28 insertions(+), 32 deletions(-) diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderOptionsServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderOptionsServiceImpl.java index e4dff87..d47b584 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderOptionsServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderOptionsServiceImpl.java @@ -96,9 +96,9 @@ public class OmsSaleOrderOptionsServiceImpl implements OmsSaleOrderOptionsServic if(!userId.equals(omsOrder.getCreateBy())){ Assert.throwEx("越权访问被拦截了"); } - if (!omsOrder.getUserId().equals(userId)) { - Assert.throwEx("非制单人无法下单"); - } +// if (!omsOrder.getUserId().equals(userId)) { +// Assert.throwEx("非制单人无法下单"); +// } // 非临期品不走当前流程 if(!omsOrder.getOrderType().equals(3)){ Assert.throwEx("该功能只针对临期品订单"); diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java index 9a2af5a..ef903c7 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java @@ -91,7 +91,7 @@ public class OmsSaleOrderPart1ServiceImpl implements OmsSaleOrderPart1Service { } order.setOrderSn(orderPrefix + CodeGenUtil.generate(CodeGenUtil.SourceKey.OmsOrder)); SysUser user = sysUserService.getById(AuthContextUtils.getSysUserId()); - order.setOrderSource("CMS"); + order.setOrderSource("COPY"); order.setCurrency("人民币"); order.setExchangeRate(1); order.setVersion("cms"); @@ -100,6 +100,7 @@ public class OmsSaleOrderPart1ServiceImpl implements OmsSaleOrderPart1Service { order.setUserName(user.getName()); order.setUserPhone(user.getMobile()); order.setCheckState(0); + order.setOrderErpId(null); order.setStatus(0); order.setOrderStatusCombo(0); order.setPreDeliveryDate(null); diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java index 1de55e8..95bb699 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java @@ -107,6 +107,11 @@ public class TbsAffairCommitBo { /** 人数 */ private Integer countPerson; + /** + * 审批的发货金额,返利类型的审批传参 + */ + private BigDecimal finalDispatchAmount; + private List centerItemLines; diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java index 166d969..b785058 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchOperationServiceImpl.java @@ -298,14 +298,6 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification boolean isStop = "backed".equals(flag)||"refuse".equals(flag); //释放费用 boolean isRelease = itemCommit.getReleaseFlag()!=null&&itemCommit.getReleaseFlag().equals(1); -// if (isStop){ -// log.warn("单据[{}]状态:{},中止审批",verification.getVerificationCode(),flag); -// verificationApplication.backCommitAndStop(verification, "backed".equals(flag)); -// if(isRelease){ -// log.warn("单据[{}]状态:{},中止审批并释放费用",verification.getVerificationCode(),flag); -// vtbVerificationService.release(verification.getActivityId(),sysUser.getCode(),false); -// } -// }else if (!isFinish && !isNext){ log.error("远程调用返回,非指定状态:{}",JsonUtil.objectToJson(commitParam)); continue; @@ -313,10 +305,9 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification yardService.save(yard); //非终止或者驳回,保存审批线金额明细 BigDecimal totalAmount = BigDecimal.ZERO; + BigDecimal totalDispatchAmount = BigDecimal.ZERO; if(!isStop){ List subjectCenters = vtbVerificationSubjectCenterService.listByVerificationId(verification.getId()); - //isCenterCommit 代表自定义成本中心维度递交 - boolean isCenterCommit = subjectCenters.size()>0; List verificationSubjects = vtbVerificationSubjectService.listByVerificationId(verification.getId()); List yardItemList = new ArrayList<>(); List verSubject4Update = new ArrayList<>(); @@ -325,10 +316,10 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification List subjectCenterUpdateList = new ArrayList<>(); for (VtbVerificationSubject currVs : verificationSubjects) { BigDecimal changeAmount = null; + BigDecimal changeDispatch = null; Integer countSession = null; Integer countPerson = null; List centerItemLineList = null; -// if(isCenterCommit){ if(CollectionUtil.isNotEmpty(itemCommit.getAffairSubjectCenterLines())){ for (TbsAffairCommitBo.AffairSubjectCenterLine centerLine : itemCommit.getAffairSubjectCenterLines()) { if(currVs.getSubjectId().equals(centerLine.getSubjectId())){ @@ -338,9 +329,13 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification changeAmount = changeAmount.add(itemLine.getAmount()); } } + if (centerLine.getFinalDispatchAmount()!=null){ + totalDispatchAmount = totalDispatchAmount.add(centerLine.getFinalDispatchAmount()); + } centerItemLineList = centerLine.getCenterItemLines(); countSession = centerLine.getCountSession(); countPerson = centerLine.getCountPerson(); + changeDispatch = centerLine.getFinalDispatchAmount(); break; } } @@ -403,6 +398,7 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification VtbVerificationSubject verSub4Upd = new VtbVerificationSubject(); verSub4Upd.setId(currVs.getId()); verSub4Upd.setUsedAmount(changeAmount); + verSub4Upd.setFinalDispatchAmt(changeDispatch); verSubject4Update.add(verSub4Upd); }else { yardItem.setCurrAmount(lastAmount); @@ -439,6 +435,13 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification yardItemList.add(yardItem); } + // 记录修改的发货金额 + if (verification.getRebateId()!=null&&verification.getRebateId()>0){ + BigDecimal orgDispatch = verification.getFinalDispatchAmt(); + // TODO 记录日志 + + } + yardItemService.saveBatch(yardItemList); if(yarnCenterList.size()>0){ yardCenterItemService.saveBatch(yarnCenterList); @@ -447,25 +450,12 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification if(subjectCenterUpdateList.size()>0){ vtbVerificationSubjectCenterService.updateBatchById(subjectCenterUpdateList); } -// //重新计算合计 -// if(isFinish){ -// verificationApplication.finishCallBack(verification, totalAmount); -// if(isRelease){ -// log.warn("核销"+verification.getVerificationCode()+"释放金额"); -// vtbVerificationService.release(verification.getActivityId(),sysUser.getCode(),false); -// } -// }else { -// //更新金额 -// VtbVerification vtbVer = new VtbVerification(); -// vtbVer.setId(verification.getId()); -// vtbVer.setAmount(totalAmount); -// vtbVerificationService.updateById(vtbVer); -// } //更新金额 VtbVerification vtbVer = new VtbVerification(); vtbVer.setId(verification.getId()); vtbVer.setAmount(totalAmount); + vtbVer.setFinalDispatchAmt(totalDispatchAmount); vtbVerificationService.updateById(vtbVer); } } diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java index bf551f1..87db3a9 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationBatchServiceImpl.java @@ -100,9 +100,9 @@ public class VtbVerificationBatchServiceImpl extends ServiceImpl activityList = tbsActivityService.listByCostApplyId(costApply.getId()); SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());