diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeign.java index 7fd0e851fc..a0f9177bbe 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeign.java @@ -250,4 +250,9 @@ public interface BaseManufacturerFeign { @GetMapping("/fetchByCode") @ResponseBody ResultBean fetchByCode(@RequestParam("supplierCode") String supplierCode); + + @ApiOperation("根据sid查询供应商信息") + @GetMapping("/fetchBySid") + @ResponseBody + ResultBean fetchBySid(@RequestParam("sid") String sid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeignFallback.java index 24603c3b22..e6047f37e0 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufacturer/BaseManufacturerFeignFallback.java @@ -160,4 +160,9 @@ public class BaseManufacturerFeignFallback implements BaseManufacturerFeign { public ResultBean fetchByCode(String supplierCode) { return null; } + + @Override + public ResultBean fetchBySid(String sid) { + return null; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufacturer/BaseManufacturerRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufacturer/BaseManufacturerRest.java index f6873d1f8e..a7656e169d 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufacturer/BaseManufacturerRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufacturer/BaseManufacturerRest.java @@ -252,4 +252,11 @@ public class BaseManufacturerRest implements BaseManufacturerFeign { public ResultBean fetchByCode(String supplierCode) { return baseManufacturerService.fetchByCode(supplierCode); } + + @Override + public ResultBean fetchBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + BaseManufacturer baseManufacturer = baseManufacturerService.fetchBySid(sid); + return rb.success().setData(baseManufacturer); + } } diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java index 9612456364..bc3f161063 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java @@ -82,6 +82,15 @@ public interface FinKingDeeFeign { @ResponseBody ResultBean saveRebateReviewVoucher(@RequestBody @Valid GeneralVoucher voucher); + @ApiOperation("保存专项返利预提凭证") + @PostMapping("/saveRebateSpecialVoucher") + @ResponseBody + ResultBean saveRebateSpecialVoucher(@RequestBody @Valid GeneralVoucher voucher); + + @ApiOperation("保存专项返利核对凭证") + @PostMapping("/saveRebateSpecialReviewVoucher") + @ResponseBody + ResultBean saveRebateSpecialReviewVoucher(@RequestBody @Valid GeneralVoucher voucher); //---------------------- 返利凭证 --------------------------------- @ApiOperation("保存凭证的接口") diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java index 096d46a26f..99f7bddc3b 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java @@ -58,6 +58,16 @@ implements FinKingDeeFeign{ return null; } + @Override + public ResultBean saveRebateSpecialVoucher(@Valid GeneralVoucher voucher) { + return null; + } + + @Override + public ResultBean saveRebateSpecialReviewVoucher(@Valid GeneralVoucher voucher) { + return null; + } + @Override public ResultBean saveVoucher(Voucher voucher) { return null; diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/GeneralVoucher.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/GeneralVoucher.java index 1fda85d7f8..107a51d067 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/GeneralVoucher.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/GeneralVoucher.java @@ -29,6 +29,7 @@ public class GeneralVoucher { @Data public static class GeneralVoucherDetail { public String timeFlag; //应用于资金占用费计提凭证摘要标识 0代表上月 1代表本月 + public String type; @ApiModelProperty("场景编码") public String sceneCode; @ApiModelProperty("资方简称") diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java index ea6806b458..7d9c725e6e 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java @@ -357,6 +357,184 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { return voucherService.saveVoucher(newVoucher); } + @Override + public ResultBean saveRebateSpecialVoucher(@Valid GeneralVoucher voucher) { + ResultBean rb = ResultBean.fireFail(); + Voucher newVoucher = new Voucher(); + List resultDetails = new ArrayList<>(); + if (StringUtils.isNotBlank(voucher.getUseOrgCode())) { + newVoucher.setAccountBook(voucher.getUseOrgCode()); + newVoucher.setVoucherNo(voucher.getUseOrgCode()); + } + if (StringUtils.isNotBlank(voucher.getBussDate())) { + newVoucher.setBussDate(voucher.getBussDate()); + } + List voucherDetails = voucher.getVoucherDetails(); + if (!voucherDetails.isEmpty()) { + for (GeneralVoucher.GeneralVoucherDetail voucherDetail : voucherDetails) { + if (voucherDetail.getSceneCode().equals("1161.02.15") || voucherDetail.getSceneCode().equals("1161.01.15")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利预提"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("6401.13")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利预提"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setDebit("-" + voucherDetail.getAmount().toString()); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("2181.07.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利预提"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + + } + newVoucher.setResultDetails(resultDetails); + } + log.info("FinKingDeeFeignRest-saveVoucher:{}", JSONObject.toJSONString(newVoucher)); + return voucherService.saveVoucher(newVoucher); + } + + @Override + public ResultBean saveRebateSpecialReviewVoucher(@Valid GeneralVoucher voucher) { + ResultBean rb = ResultBean.fireFail(); + Voucher newVoucher = new Voucher(); + List resultDetails = new ArrayList<>(); + if (StringUtils.isNotBlank(voucher.getUseOrgCode())) { + newVoucher.setAccountBook(voucher.getUseOrgCode()); + newVoucher.setVoucherNo(voucher.getUseOrgCode()); + } + if (StringUtils.isNotBlank(voucher.getBussDate())) { + newVoucher.setBussDate(voucher.getBussDate()); + } + List voucherDetails = voucher.getVoucherDetails(); + if (!voucherDetails.isEmpty()) { + for (GeneralVoucher.GeneralVoucherDetail voucherDetail : voucherDetails) { + if (!voucherDetail.getType().equals("行销活动")) { + if (voucherDetail.getRemarks().equals("返利上传")) { + if (voucherDetail.getSceneCode().equals("1161.01.16")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("1161.02.15") || + voucherDetail.getSceneCode().equals("1161.01.15") || + voucherDetail.getSceneCode().equals("1161.04.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + } + if (voucherDetail.getRemarks().equals("返利调整")) { + if (voucherDetail.getSceneCode().equals("1161.02.15") || voucherDetail.getSceneCode().equals("1161.01.15")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利调整"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("6401.13")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利调整"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setDebit("-" + String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("2181.07.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利调整"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + } + } else { + if (voucherDetail.getRemarks().equals("返利上传")) { + if (voucherDetail.getSceneCode().equals("1161.01.16")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "行销返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("2181.07.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "行销返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("1161.03.00") || + voucherDetail.getSceneCode().equals("1161.04.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "行销返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("6401.14")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "行销返利上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setCredit("-"+String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + } + if (voucherDetail.getRemarks().equals("返利调整")) { + if (voucherDetail.getSceneCode().equals("1161.03.00")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利调整"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getSceneCode().equals("6401.14")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "专项返利调整"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setDebit("-" + String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + } + } + } + newVoucher.setResultDetails(resultDetails); + } + log.info("FinKingDeeFeignRest-saveVoucher:{}", JSONObject.toJSONString(newVoucher)); + return voucherService.saveVoucher(newVoucher); + } + @Override public ResultBean saveVoucher(Voucher voucher) { diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java index 5b7816eca2..568a7d9577 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java @@ -26,10 +26,15 @@ package com.yxt.anrui.scm.biz.scmspecialrebatecheckapply; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer; +import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturerFeign; +import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand; +import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrandFeign; +import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign; +import com.yxt.anrui.fin.api.kingdee.voucher.GeneralVoucher; import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; @@ -37,6 +42,8 @@ import com.yxt.anrui.flowable.api.flow2.FlowFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; @@ -44,41 +51,43 @@ import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebate; -import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo; +import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.*; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.GetNodeQuery; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.GetNodeVo; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.ScmSpecialRebateCheckApplyDelegateQuery; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.SubmitScmSpecialRebateCheckApplyDto; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapplydetail.ScmSpecialrebateCheckapplydetail; import com.yxt.anrui.scm.api.scmspecialrebatecheckapplydetail.ScmSpecialrebateCheckapplydetailDetailsVo; import com.yxt.anrui.scm.api.scmspecialrebatecheckapplydetail.ScmSpecialrebateCheckapplydetailDto; import com.yxt.anrui.scm.api.scmspecialrebatecheckapplydetail.ScmSpecialrebateCheckapplydetailVo; -import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate; -import com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailVo; import com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateService; import com.yxt.anrui.scm.biz.scmspecialrebatecheckapplydetail.ScmSpecialrebateCheckapplydetailService; -import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.ScmSpecialrebateCheckapply; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.ScmSpecialrebateCheckapplyQuery; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.ScmSpecialrebateCheckapplyVo; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.ScmSpecialrebateCheckapplyDetailsVo; -import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.ScmSpecialrebateCheckapplyDto; - +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @Service public class ScmSpecialrebateCheckapplyService extends MybatisBaseService { + @Autowired + private FinKingDeeFeign finKingDeeFeign; + @Autowired + private BaseVehicleBrandFeign baseVehicleBrandFeign; + @Autowired + private BaseManufacturerFeign baseManufacturerFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + @Autowired private ScmSpecialrebateCheckapplydetailService scmSpecialrebateCheckapplydetailService; @Autowired @@ -380,6 +389,452 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService scmVehRebates = new ArrayList<>(); + List scmVehrebateCheckapplydetailVos = scmSpecialrebateCheckapplydetailService.selByMainSid(sid); + if (!scmVehrebateCheckapplydetailVos.isEmpty()) { + for (ScmSpecialrebateCheckapplydetailVo s : scmVehrebateCheckapplydetailVos) { + ScmSpecialRebate v = scmSpecialRebateService.fetchBySid(s.getSpecialRebateSid()); + if (null != v) { + scmVehRebates.add(v); + } + } + } + //按照采购系统分组 + if (!scmVehRebates.isEmpty()) { + Map> map = scmVehRebates.stream().collect(Collectors.groupingBy(ScmSpecialRebate::getPurchaseSystemSid)); + String finalSummaryTag = summaryTag; + String[] split = finalSummaryTag.split("年"); + String y1 = split[0]; //预提申请标题年份 + map.forEach((k, v) -> { + List rebates = v; + GeneralVoucher generalVoucher = new GeneralVoucher(); + generalVoucher.setBussDate(format); + List voucherDetails = new ArrayList<>(); + if (!v.isEmpty()) { + for (ScmSpecialRebate rebate : v) { + if (StringUtils.isNotBlank(rebate.getUseOrgSid())) { + String useOrgSid = rebate.getUseOrgSid(); + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData(); + if (null != organizationVo) { + generalVoucher.setUseOrgCode(organizationVo.getOrgCode()); + } + } + String deptCode = "";//部门编码 + String gysCode = "";//厂商编码 + SysOrganizationVo data = sysOrganizationFeign.fetchBySid(rebate.getPurchaseSystemSid()).getData(); + if (null != data) { + deptCode = data.getOrgCode(); + + } + if (StringUtils.isNotBlank(rebate.getBrandSid())) { + String brandSid = rebate.getBrandSid(); + BaseVehicleBrand baseVehicleBrand = baseVehicleBrandFeign.fetchBySid(brandSid); + if (null != baseVehicleBrand) { + String manufacturerSid = baseVehicleBrand.getManufacturerSid(); + if (StringUtils.isNotBlank(manufacturerSid)) { + BaseManufacturer baseManufacturer = baseManufacturerFeign.fetchBySid(manufacturerSid).getData(); + if (null != baseManufacturer) { + gysCode = baseManufacturer.getManufacturerCode(); + } + } + } + } + if (!rebate.getRebateTypeValue().equals("行销活动")) { + if (rebate.getOnceCheckState().intValue() == 0 || 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(); + } + yicifanli = oneMoney.subtract(yicididing).subtract(yizhichufeiyong); + if (yicifanli.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setType("非行销"); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(yicifanli); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail.setSceneCode("1161.01.15"); + } else { + voucherDetail.setSceneCode("1161.02.15"); + } + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + feiyong = yizhichufeiyong.add(yicididing); + if (feiyong.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("非行销"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(feiyong); + voucherDetail.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + 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(); + } + ercifanli = twoMoney.subtract(ercididing).subtract(erzhichufeiyong); + if (ercifanli.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("非行销"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(ercifanli); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail.setSceneCode("1161.01.15"); + } else { + voucherDetail.setSceneCode("1161.02.15"); + } + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + erfeiyong = erzhichufeiyong.add(ercididing); + if (ercididing.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setType("非行销"); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(erfeiyong); + voucherDetail.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + //确认调整时 + 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) { + GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail1.setType("非行销"); + voucherDetail1.setTimeFlag(finalSummaryTag); + voucherDetail1.setDeptCode(deptCode); //部门编码赋值 + voucherDetail1.setManufacturer(gysCode); + voucherDetail1.setAmount(yingshouMoney); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail1.setSceneCode("1161.01.15"); + } else { + voucherDetail1.setSceneCode("1161.02.15"); + } + voucherDetail1.setRemarks("返利调整"); + voucherDetails.add(voucherDetail1); + } + if (adMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail1.setType("非行销"); + voucherDetail1.setTimeFlag(finalSummaryTag); + voucherDetail1.setDeptCode(deptCode); //部门编码赋值 + voucherDetail1.setAmount(adMoney); + voucherDetail1.setSceneCode("6401.13"); + voucherDetail1.setRemarks("返利调整"); + voucherDetails.add(voucherDetail1); + } + if (daizhifuchaMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail2.setTimeFlag(finalSummaryTag); + voucherDetail2.setType("非行销"); + voucherDetail2.setCustomerCode("DZFCJFL"); //客户编码 + voucherDetail2.setAmount(daizhifuchaMoney); + voucherDetail2.setSceneCode("2181.07.00"); + voucherDetail2.setRemarks("返利调整"); + voucherDetails.add(voucherDetail2); + } + } + } + } else { + if (rebate.getOnceCheckState().intValue() == 0 || 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) { + 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 (yicidaizhifu.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.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (yizhichufeiyong.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.setSceneCode("1161.03.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (yicididing.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.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (feiyong.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("行销活动"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setAmount(feiyong); + voucherDetail.setSceneCode("6401.14"); + voucherDetail.setRemarks("返利上传"); + 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) { + 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 (ercidaizhifu.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(ercidaizhifu); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (erzhichufeiyong.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("行销活动"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(erzhichufeiyong); + voucherDetail.setSceneCode("1161.03.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (ercididing.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("行销活动"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(ercididing); + voucherDetail.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + if (erfeiyong.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setType("行销活动"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setAmount(erfeiyong); + voucherDetail.setSceneCode("6401.14"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + //确认调整时 + 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()); + } + if (daizhifuchaMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail1.setTimeFlag(finalSummaryTag); + voucherDetail1.setType("行销活动"); + voucherDetail1.setDeptCode(deptCode); + voucherDetail1.setManufacturer(gysCode); + voucherDetail1.setAmount(daizhifuchaMoney); + voucherDetail1.setSceneCode("1161.03.00"); + voucherDetail1.setRemarks("返利调整"); + voucherDetails.add(voucherDetail1); + GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail2.setTimeFlag(finalSummaryTag); + voucherDetail2.setType("行销活动"); + voucherDetail2.setDeptCode(deptCode); + voucherDetail2.setAmount(daizhifuchaMoney); + voucherDetail2.setSceneCode("6401.14"); + voucherDetail2.setRemarks("返利调整"); + voucherDetails.add(voucherDetail2); + } + } + } + + } + + } + if (!voucherDetails.isEmpty()) { + generalVoucher.setVoucherDetails(voucherDetails); + finKingDeeFeign.saveRebateSpecialReviewVoucher(generalVoucher); + } + } + }); + } + + + } + + + public ResultBean complete(BusinessVariables bv) { ResultBean rb = ResultBean.fireFail(); ScmSpecialrebateCheckapply scmSpecialrebateCheckapply = fetchBySid(bv.getBusinessSid()); @@ -401,6 +856,8 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService { + @Autowired + private FinKingDeeFeign finKingDeeFeign; + @Autowired + private BaseVehicleBrandFeign baseVehicleBrandFeign; + @Autowired + private BaseManufacturerFeign baseManufacturerFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; @Autowired private ScmSpecialRebateWithService scmSpecialRebateWithService; @Autowired @@ -377,6 +388,134 @@ public class ScmSpecialRebateWithApplyService extends MybatisBaseService scmVehRebates = new ArrayList<>(); + List vehRebateSids = scmSpecialRebateWithService.fetchSpecialReBateSidByMainSid(sid); + if (!vehRebateSids.isEmpty()) { + for (String s : vehRebateSids) { + ScmSpecialRebate v = scmSpecialRebateService.fetchBySid(s); + if (null != v) { + scmVehRebates.add(v); + } + } + } + //按照采购系统分组 + if (!scmVehRebates.isEmpty()) { + Map> map = scmVehRebates.stream().collect(Collectors.groupingBy(ScmSpecialRebate::getPurchaseSystemSid)); + String finalSummaryTag = summaryTag; + String[] split = finalSummaryTag.split("年"); + String y1 = split[0]; //预提申请标题年份 + map.forEach((k, v) -> { + List rebates = v; + GeneralVoucher generalVoucher = new GeneralVoucher(); + generalVoucher.setBussDate(format); + List voucherDetails = new ArrayList<>(); + if (!v.isEmpty()) { + for (ScmSpecialRebate rebate : v) { + if (!rebate.getRebateTypeValue().equals("行销活动")) { + if (StringUtils.isNotBlank(rebate.getUseOrgSid())) { + String useOrgSid = rebate.getUseOrgSid(); + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData(); + if (null != organizationVo) { + generalVoucher.setUseOrgCode(organizationVo.getOrgCode()); + } + } + String deptCode = "";//部门编码 + String gysCode = "";//厂商编码 + SysOrganizationVo data = sysOrganizationFeign.fetchBySid(rebate.getPurchaseSystemSid()).getData(); + if (null != data) { + deptCode = data.getOrgCode(); + + } + if (StringUtils.isNotBlank(rebate.getBrandSid())) { + String brandSid = rebate.getBrandSid(); + BaseVehicleBrand baseVehicleBrand = baseVehicleBrandFeign.fetchBySid(brandSid); + if (null != baseVehicleBrand) { + String manufacturerSid = baseVehicleBrand.getManufacturerSid(); + if (StringUtils.isNotBlank(manufacturerSid)) { + BaseManufacturer baseManufacturer = baseManufacturerFeign.fetchBySid(manufacturerSid).getData(); + if (null != baseManufacturer) { + gysCode = baseManufacturer.getManufacturerCode(); + } + } + } + } + + + BigDecimal fanliMoney = BigDecimal.ZERO;// 其中返利金额 + BigDecimal daizhifuMoney = BigDecimal.ZERO;// 其中待支付金额 + BigDecimal yingshouMoney = BigDecimal.ZERO;// 应收返利金额 + if (StringUtils.isNotBlank(rebate.getEstimateRebate())) { + fanliMoney = new BigDecimal(rebate.getEstimateRebate()); + } + if (null != rebate.getExpectTreatCost()) { + daizhifuMoney = rebate.getExpectTreatCost(); + } + yingshouMoney = fanliMoney.add(daizhifuMoney); + if (yingshouMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail.setSceneCode("1161.01.15"); + } else { + voucherDetail.setSceneCode("1161.02.15"); + } + voucherDetail.setAmount(yingshouMoney); + voucherDetails.add(voucherDetail); + } + if (fanliMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setSceneCode("6401.13"); + voucherDetail.setAmount(fanliMoney); + voucherDetails.add(voucherDetail); + } + if (daizhifuMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setSceneCode("2181.07.00"); + voucherDetail.setCustomerCode("DZFCJFL"); + voucherDetail.setAmount(daizhifuMoney); + voucherDetails.add(voucherDetail); + } + } + } + if (!voucherDetails.isEmpty()) { + generalVoucher.setVoucherDetails(voucherDetails); + finKingDeeFeign.saveRebateSpecialVoucher(generalVoucher); + } + } + }); + } + + + } + + public ResultBean complete(BusinessVariables bv) { ResultBean rb = ResultBean.fireFail(); ScmSpecialRebateWithApply scmSpecialRebateWithApply = fetchBySid(bv.getBusinessSid()); @@ -392,6 +531,7 @@ public class ScmSpecialRebateWithApplyService extends MybatisBaseService