Browse Source

修改专项预提凭证计算逻辑

zhanglei
fanzongzhe0036 3 months ago
parent
commit
70d3174f35
  1. 273
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java

273
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java

@ -448,7 +448,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
*
* @param sid,tag (0代表核对申请通过推送1代表重推功能)
*/
public void pushSpecialRebateWithVoucher(String sid, String tag, Map<String,Integer> mapCheckState) {
public void pushSpecialRebateWithVoucher(String sid, String tag, Map<String, Integer> mapCheckState) {
String format = scmVehRebateWithApplyService.returnBusDate(new Date());
String summaryTag = "";//摘要前缀
ScmSpecialrebateCheckapply entity = fetchBySid(sid);
@ -480,6 +480,78 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
List<GeneralVoucher.GeneralVoucherDetail> voucherDetails = new ArrayList<>();
if (!v.isEmpty()) {
for (ScmSpecialRebate rebate : v) {
BigDecimal yt = BigDecimal.ZERO;//预提
BigDecimal ytfl = BigDecimal.ZERO;//其中返利
BigDecimal ytqzzz = BigDecimal.ZERO;//其中支出费用
BigDecimal ytqzdzz = BigDecimal.ZERO;//其中待支付
BigDecimal ytqzdd = BigDecimal.ZERO;//其中抵顶费用
BigDecimal ysc = BigDecimal.ZERO;//一次上传
BigDecimal yfl = BigDecimal.ZERO;//一次返利
BigDecimal yzz = BigDecimal.ZERO;//一次支出费用
BigDecimal ydzf = BigDecimal.ZERO;//一次待支付
BigDecimal ydd = BigDecimal.ZERO;//一次抵顶
BigDecimal ydqd = BigDecimal.ZERO;//一次待确定
BigDecimal esc = BigDecimal.ZERO;//二次上传
BigDecimal efpfl = BigDecimal.ZERO;//二次分配返利
BigDecimal edfpfl = BigDecimal.ZERO;//二次待分配返利
BigDecimal efpzc = BigDecimal.ZERO;//二次分配支出
BigDecimal edfpzc = BigDecimal.ZERO;//二次待分配支出
BigDecimal efpdzf = BigDecimal.ZERO;//二次分配待支付
BigDecimal edfpdzf = BigDecimal.ZERO;//二次待分配待支付
BigDecimal efpdd = BigDecimal.ZERO;//二次分配抵顶
BigDecimal edfpdd = BigDecimal.ZERO;//二次待分配抵顶
if (StringUtils.isNotBlank(rebate.getEstimateRebate())) {
yt = new BigDecimal(rebate.getEstimateRebate());
}
if (null != rebate.getExpectItureCost()) {
ytqzzz = rebate.getExpectItureCost();
}
if (null != rebate.getExpectTreatCost()) {
ytqzdzz = rebate.getExpectTreatCost();
}
if (null != rebate.getExpectSuppCost()) {
ytqzdd = rebate.getExpectSuppCost();
}
ytfl = yt.subtract(ytqzzz).subtract(ytqzdzz).subtract(ytqzdd);
if (StringUtils.isNotBlank(rebate.getUploadMoney())) {
ysc = new BigDecimal(rebate.getUploadMoney());
}
if (null != rebate.getOnceItureCost()) {
yzz = rebate.getOnceItureCost();
}
if (null != rebate.getOnceTreatCost()) {
ydzf = rebate.getOnceTreatCost();
}
if (null != rebate.getOnceSuppCost()) {
ydd = rebate.getOnceTreatCost();
}
if (StringUtils.isNotBlank(rebate.getStayDetermineMoneyNew())) {
ydqd = new BigDecimal(rebate.getStayDetermineMoneyNew());
}
yfl = ysc.subtract(yzz).subtract(ydzf).subtract(ydd).subtract(ydqd);
if (StringUtils.isNotBlank(rebate.getSecondaryUploadMoney())) {
esc = new BigDecimal(rebate.getSecondaryUploadMoney());
}
if (null != rebate.getSecondItureCost()) {
efpzc = rebate.getOnceItureCost();
}
if (null != rebate.getTempItureCost()) {
edfpzc = rebate.getTempItureCost();
}
if (null != rebate.getSecondTreatCost()) {
efpdzf = rebate.getSecondTreatCost();
}
if (null != rebate.getTempItureCost()) {
edfpdzf = rebate.getTempItureCost();
}
if (null != rebate.getSecondSuppCost()) {
efpdd = rebate.getSecondSuppCost();
}
if (null != rebate.getTempSuppCost()) {
edfpdd = rebate.getTempSuppCost();
}
efpfl = esc.subtract(efpzc).subtract(efpdzf).subtract(efpdd);
edfpfl = ydqd.subtract(edfpzc).subtract(edfpdzf).subtract(edfpdd);
Integer onceState = 0;
if (tag.equals("0") && mapCheckState.size() > 0) {
onceState = mapCheckState.get(rebate.getSid());
@ -514,39 +586,25 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (!rebate.getRebateTypeValue().equals("行销政策")) {
if (onceState.intValue() == 2 || tag.equals("1")) {
//没有进行过核对申请
BigDecimal oneMoney = BigDecimal.ZERO;//一次上传金额
BigDecimal yicifanli = BigDecimal.ZERO;//一次应收返利返利
BigDecimal yicididing = BigDecimal.ZERO;//一次抵顶费用
BigDecimal yizhichufeiyong = BigDecimal.ZERO;//一次支出费用
BigDecimal feiyong = BigDecimal.ZERO;//一次合计费用
if (StringUtils.isNotBlank(rebate.getUploadMoney())) {
oneMoney = new BigDecimal(rebate.getUploadMoney());
if (oneMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(oneMoney);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
}
if (null != rebate.getOnceItureCost()) {
yizhichufeiyong = rebate.getOnceItureCost();
}
if (null != rebate.getOnceSuppCost()) {
yicididing = rebate.getOnceSuppCost();
if (ysc.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(ysc);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
yicifanli = oneMoney.subtract(yicididing).subtract(yizhichufeiyong);
if (yicifanli.compareTo(BigDecimal.ZERO) != 0) {
BigDecimal ysfl = yfl.add(ydzf).add(ydqd);
if (ysfl.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yicifanli);
voucherDetail.setAmount(ysfl);
String palceGenDate = rebate.getPalceGenDate();
String[] palceGenDateSplit = palceGenDate.split("-");
String y2 = palceGenDateSplit[0];//所属年份
@ -558,7 +616,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
feiyong = yizhichufeiyong.add(yicididing);
BigDecimal feiyong = yzz.add(ydd);
if (feiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -571,32 +629,18 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetails.add(voucherDetail);
}
}
BigDecimal twoMoney = BigDecimal.ZERO;//二次次上传金额
BigDecimal ercifanli = BigDecimal.ZERO;//二次应收返利返利
BigDecimal ercididing = BigDecimal.ZERO;//二次抵顶费用
BigDecimal erzhichufeiyong = BigDecimal.ZERO;//一次支出费用
BigDecimal erfeiyong = BigDecimal.ZERO;//二次合计费用
if (StringUtils.isNotBlank(rebate.getSecondaryUploadMoney())) {
twoMoney = new BigDecimal(rebate.getSecondaryUploadMoney());
if (twoMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(twoMoney);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
}
if (null != rebate.getSecondItureCost()) {
erzhichufeiyong = rebate.getSecondItureCost();
}
if (null != rebate.getSecondSuppCost()) {
ercididing = rebate.getSecondSuppCost();
if (esc.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(esc);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
ercifanli = twoMoney.subtract(ercididing).subtract(erzhichufeiyong);
BigDecimal ercifanli = efpfl.add(efpdzf).subtract(edfpzc).subtract(edfpdd);
if (ercifanli.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -615,8 +659,8 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
erfeiyong = erzhichufeiyong.add(ercididing);
if (ercididing.compareTo(BigDecimal.ZERO) != 0) {
BigDecimal erfeiyong = efpzc.add(edfpzc).add(efpdd).add(edfpdd);
if (erfeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("非行销");
voucherDetail.setTimeFlag(finalSummaryTag);
@ -630,29 +674,16 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
//确认调整时
if (StringUtils.isNotBlank(rebate.getIsAdjustment())) {
if (rebate.getIsAdjustment().equals("是")) {
BigDecimal adMoney = BigDecimal.ZERO;//返利差额
BigDecimal daizhifuchaMoney = BigDecimal.ZERO;//待支付差额
BigDecimal yingshouMoney = BigDecimal.ZERO;//应收返利
if (StringUtils.isNotBlank(rebate.getAdjustmentMoney())) {
adMoney = new BigDecimal(rebate.getAdjustmentMoney());
}
if (null != rebate.getOnceTreatCost()) {
daizhifuchaMoney = daizhifuchaMoney.add(rebate.getOnceTreatCost());
}
if (null != rebate.getSecondTreatCost()) {
daizhifuchaMoney = daizhifuchaMoney.add(rebate.getSecondTreatCost());
}
if (null != rebate.getExpectTreatCost()) {
daizhifuchaMoney = daizhifuchaMoney.subtract(rebate.getExpectTreatCost());
}
yingshouMoney = adMoney.add(daizhifuchaMoney);
if (yingshouMoney.compareTo(BigDecimal.ZERO) != 0) {
BigDecimal flce = yfl.add(efpfl).add(edfpfl).subtract(ytfl);
BigDecimal dzfce = efpdzf.add(edfpdzf).add(ydzf).subtract(ytqzdzz);
BigDecimal ysMoney = flce.add(dzfce);
if (ysMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail1.setType("非行销");
voucherDetail1.setTimeFlag(finalSummaryTag);
voucherDetail1.setDeptCode(deptCode); //部门编码赋值
voucherDetail1.setManufacturer(gysCode);
voucherDetail1.setAmount(yingshouMoney);
voucherDetail1.setAmount(ysMoney);
String palceGenDate = rebate.getPalceGenDate();
String[] palceGenDateSplit = palceGenDate.split("-");
String y2 = palceGenDateSplit[0];//所属年份
@ -664,22 +695,22 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail1.setRemarks("返利调整");
voucherDetails.add(voucherDetail1);
}
if (adMoney.compareTo(BigDecimal.ZERO) != 0) {
if (flce.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail1.setType("非行销");
voucherDetail1.setTimeFlag(finalSummaryTag);
voucherDetail1.setDeptCode(deptCode); //部门编码赋值
voucherDetail1.setAmount(adMoney);
voucherDetail1.setAmount(flce);
voucherDetail1.setSceneCode("6401.13");
voucherDetail1.setRemarks("返利调整");
voucherDetails.add(voucherDetail1);
}
if (daizhifuchaMoney.compareTo(BigDecimal.ZERO) != 0) {
if (dzfce.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail2.setTimeFlag(finalSummaryTag);
voucherDetail2.setType("非行销");
voucherDetail2.setCustomerCode("DZFCJFL"); //客户编码
voucherDetail2.setAmount(daizhifuchaMoney);
voucherDetail2.setAmount(dzfce);
voucherDetail2.setSceneCode("2181.07.00");
voucherDetail2.setRemarks("返利调整");
voucherDetails.add(voucherDetail2);
@ -689,69 +720,51 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
} else {
if (onceState.intValue() == 2 || tag.equals("1")) {
//没有进行过核对申请
BigDecimal oneMoney = BigDecimal.ZERO;//一次上传金额
BigDecimal yicidaizhifu = BigDecimal.ZERO;//一次待支付金额
BigDecimal yicididing = BigDecimal.ZERO;//一次抵顶费用
BigDecimal yizhichufeiyong = BigDecimal.ZERO;//一次支出费用
BigDecimal feiyong = BigDecimal.ZERO;//一次合计费用
if (StringUtils.isNotBlank(rebate.getUploadMoney())) {
oneMoney = new BigDecimal(rebate.getUploadMoney());
}
if (null != rebate.getOnceItureCost()) {
yizhichufeiyong = rebate.getOnceItureCost();
}
if (null != rebate.getOnceSuppCost()) {
yicididing = rebate.getOnceSuppCost();
}
if (null != rebate.getOnceTreatCost()) {
yicidaizhifu = rebate.getOnceTreatCost();
}
feiyong = oneMoney.subtract(yicidaizhifu).subtract(yizhichufeiyong).subtract(yicididing);
if (oneMoney.compareTo(BigDecimal.ZERO) != 0) {
if (ysc.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(oneMoney);
voucherDetail.setAmount(ysc);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
if (yicidaizhifu.compareTo(BigDecimal.ZERO) != 0) {
if (ydzf.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setCustomerCode("DZFCJFL");
voucherDetail.setSceneCode("2181.07.00");
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yicidaizhifu);
voucherDetail.setAmount(ydzf);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
if (yizhichufeiyong.compareTo(BigDecimal.ZERO) != 0) {
if (yzz.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yizhichufeiyong);
voucherDetail.setAmount(yzz);
voucherDetail.setSceneCode("1161.03.00");
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
if (yicididing.compareTo(BigDecimal.ZERO) != 0) {
if (ydd.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yicididing);
voucherDetail.setAmount(ydd);
voucherDetail.setSceneCode("1161.04.00");
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
BigDecimal feiyong = yzz.add(ydzf).add(ydd).subtract(ysc);
if (feiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -763,35 +776,18 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetails.add(voucherDetail);
}
}
BigDecimal twoMoney = BigDecimal.ZERO;//二次上传金额
BigDecimal ercidaizhifu = BigDecimal.ZERO;//二次待支付金额
BigDecimal ercididing = BigDecimal.ZERO;//二次抵顶费用
BigDecimal erzhichufeiyong = BigDecimal.ZERO;//二次支出费用
BigDecimal erfeiyong = BigDecimal.ZERO;//二次合计费用
if (StringUtils.isNotBlank(rebate.getSecondaryUploadMoney())) {
twoMoney = new BigDecimal(rebate.getSecondaryUploadMoney());
}
if (null != rebate.getSecondItureCost()) {
erzhichufeiyong = rebate.getSecondItureCost();
}
if (null != rebate.getSecondSuppCost()) {
ercididing = rebate.getSecondSuppCost();
}
if (null != rebate.getSecondTreatCost()) {
ercidaizhifu = rebate.getSecondTreatCost();
}
erfeiyong = twoMoney.subtract(ercidaizhifu).subtract(erzhichufeiyong).subtract(ercididing);
if (twoMoney.compareTo(BigDecimal.ZERO) != 0) {
if (esc.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(twoMoney);
voucherDetail.setAmount(esc);
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
BigDecimal ercidaizhifu = efpdzf.add(edfpdzf);
if (ercidaizhifu.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销政策");
@ -803,6 +799,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
BigDecimal erzhichufeiyong = efpzc.add(edfpzc);
if (erzhichufeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -814,6 +811,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
BigDecimal ercididing = efpdd.add(edfpdd);
if (ercididing.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -825,6 +823,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetail.setRemarks("返利上传");
voucherDetails.add(voucherDetail);
}
BigDecimal erfeiyong = efpzc.add(edfpzc).add(efpdzf).add(edfpdzf).add(efpdd).add(edfpdd).subtract(esc);
if (erfeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
@ -838,16 +837,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
//确认调整时
if (StringUtils.isNotBlank(rebate.getIsAdjustment())) {
if (rebate.getIsAdjustment().equals("是")) {
BigDecimal daizhifuchaMoney = BigDecimal.ZERO;//待支付差额
if (null != rebate.getOnceItureCost()) {
daizhifuchaMoney = daizhifuchaMoney.add(rebate.getOnceItureCost());
}
if (null != rebate.getSecondItureCost()) {
daizhifuchaMoney = daizhifuchaMoney.add(rebate.getSecondItureCost());
}
if (null != rebate.getExpectItureCost()) {
daizhifuchaMoney = daizhifuchaMoney.subtract(rebate.getExpectItureCost());
}
BigDecimal daizhifuchaMoney = efpzc.add(edfpzc).add(yzz).subtract(ytqzzz);
if (daizhifuchaMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail1.setTimeFlag(finalSummaryTag);
@ -885,7 +875,6 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
}
public ResultBean complete(BusinessVariables bv) {
ResultBean rb = ResultBean.fireFail();
ScmSpecialrebateCheckapply scmSpecialrebateCheckapply = fetchBySid(bv.getBusinessSid());
@ -906,10 +895,10 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
List<ScmSpecialrebateCheckapplydetailVo> scmSpecialrebateCheckapplydetailVos = scmSpecialrebateCheckapplydetailService.selByMainSid(bv.getBusinessSid());
Map<String,Integer> mapCheckState = new HashMap<>();
Map<String, Integer> mapCheckState = new HashMap<>();
for (ScmSpecialrebateCheckapplydetailVo scmSpecialrebateCheckapplydetailVo : scmSpecialrebateCheckapplydetailVos) {
ScmSpecialRebate scmSpecialRebate = scmSpecialRebateService.fetchBySid(scmSpecialrebateCheckapplydetailVo.getSpecialRebateSid());
mapCheckState.put(scmSpecialRebate.getSid(),scmSpecialRebate.getOnceCheckState());
mapCheckState.put(scmSpecialRebate.getSid(), scmSpecialRebate.getOnceCheckState());
if ("是".equals(scmSpecialRebate.getIsAdjustment())) {
scmSpecialRebateService.updateState(scmSpecialrebateCheckapplydetailVo.getSpecialRebateSid(), 4);
scmSpecialRebateService.updateAdjustmentState(scmSpecialrebateCheckapplydetailVo.getSpecialRebateSid(), 1);
@ -919,7 +908,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
scmSpecialRebateService.updateOnceCheckState(scmSpecialrebateCheckapplydetailVo.getSpecialRebateSid(), 1);
}
pushSpecialRebateWithVoucher(bv.getBusinessSid(),"0",mapCheckState);
pushSpecialRebateWithVoucher(bv.getBusinessSid(), "0", mapCheckState);
}
return rb.success().setData(resultBean.getData());
} else {
@ -1107,7 +1096,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
List<ScmSpecialrebateCheckapplydetailDetailsVo> scmWhenSpecialrebateCheckapplydetailDetails = scmSpecialrebateCheckapplyDetailsVo.getScmWhenSpecialrebateCheckapplydetailDetails();
Map<String, Object> dataMap = new HashMap<String, Object>();
//标题
dataMap.put("title",scmSpecialrebateCheckapplyDetailsVo.getCheckApply() + "专项返利核对审批");
dataMap.put("title", scmSpecialrebateCheckapplyDetailsVo.getCheckApply() + "专项返利核对审批");
//分公司
dataMap.put("useOrgName", scmSpecialrebateCheckapplyDetailsVo.getCreateOrgName());
//创建部门
@ -1231,11 +1220,11 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
List<AppSpecialrebateCheckapplydetailDetailsVo> when = scmSpecialrebateCheckapplydetailService.fetchByMainSid(sid);
List<AppSpecialrebateCheckapplydetailDetailsVo> last = scmSpecialrebateCheckapplydetailService.fetchByMainSid(sid);
for (AppSpecialrebateCheckapplydetailDetailsVo appSpecialrebateCheckapplydetailDetailsVo : when) {
List<AppSpecialrebateCheckapplydetailDetailssVo> type = scmSpecialrebateCheckapplydetailService.fetchByMainSidType(sid,appSpecialrebateCheckapplydetailDetailsVo.getPurchaseSystemName(),appSpecialrebateCheckapplydetailDetailsVo.getBrandName());
List<AppSpecialrebateCheckapplydetailDetailssVo> type = scmSpecialrebateCheckapplydetailService.fetchByMainSidType(sid, appSpecialrebateCheckapplydetailDetailsVo.getPurchaseSystemName(), appSpecialrebateCheckapplydetailDetailsVo.getBrandName());
appSpecialrebateCheckapplydetailDetailsVo.setDetails(type);
}
for (AppSpecialrebateCheckapplydetailDetailsVo appSpecialrebateCheckapplydetailDetailsVo : last) {
List<AppSpecialrebateCheckapplydetailDetailssVo> date = scmSpecialrebateCheckapplydetailService.fetchByMainSidDate(sid,appSpecialrebateCheckapplydetailDetailsVo.getPurchaseSystemName(),appSpecialrebateCheckapplydetailDetailsVo.getBrandName());
List<AppSpecialrebateCheckapplydetailDetailssVo> date = scmSpecialrebateCheckapplydetailService.fetchByMainSidDate(sid, appSpecialrebateCheckapplydetailDetailsVo.getPurchaseSystemName(), appSpecialrebateCheckapplydetailDetailsVo.getBrandName());
appSpecialrebateCheckapplydetailDetailsVo.setDetails(date);
}
appSpecialrebateCheckapplyDetailsVo.setScmWhenSpecialrebateCheckapplydetailDetails(when);

Loading…
Cancel
Save