|
|
@ -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); |
|
|
|