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-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java index 8bafc00452..b06513d986 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java @@ -26,7 +26,6 @@ package com.yxt.anrui.buscenter.api.busdeliveredapply; import com.yxt.anrui.buscenter.api.busdelivered.AppDeliveredDetailsVo; -import com.yxt.anrui.buscenter.api.bussalesorder.flowable.BusSalesOrderDelegateQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -35,7 +34,6 @@ import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; -import springfox.documentation.annotations.ApiIgnore; import javax.validation.Valid; import java.util.List; @@ -247,4 +245,8 @@ public interface BusDeliveredApplyFeign { @ApiOperation("根据车辆sid和已办结流程状态查询是否为欠款出库") @GetMapping("/selByVinSidAndYBJ/{vinSid}") ResultBean selByVinSidAndYBJ(@RequestParam("vinSid") String vinSid); + + @ApiOperation("根据销售订单车辆sid查询客户sid") + @PostMapping("/selCustomerByBusVinSid") + ResultBean selCustomerByBusVinSid(@RequestParam("busVinSid") String busVinSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java index 14177f6704..b758241ccf 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java @@ -201,6 +201,11 @@ public class BusDeliveredApplyFeignFallback implements BusDeliveredApplyFeign { return null; } + @Override + public ResultBean selCustomerByBusVinSid(String busVinSid) { + return null; + } + @Override public ResultBean complete(BusDeliveredApplyCompleteDto query) { return null; diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusOrderAndVehInfo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusOrderAndVehInfo.java new file mode 100644 index 0000000000..a380f97e7a --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusOrderAndVehInfo.java @@ -0,0 +1,11 @@ +package com.yxt.anrui.buscenter.api.bussalesordervehicle; + +import lombok.Data; + +@Data +public class BusOrderAndVehInfo { + + private String busVinSid; //销售订单车辆sid + private String orderSid; //销售订单sid + private String deptSid;//销售部门sid +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java index 15afaab0f6..8c03c9a005 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java @@ -33,7 +33,6 @@ import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; -import javax.validation.constraints.Max; import java.util.List; /** @@ -152,7 +151,7 @@ public interface BusSalesOrderVehicleFeign { @ApiOperation("根据销售订单sid和贷款人sid和贷款合同sid查车辆信息") @PostMapping("/selectListByOrderSidAndDkrSidAndLoanContractSid") @ResponseBody - ResultBean> selectListByOrderSidAndDkrSidAndLoanContractSid(@RequestParam("saleOrderSid") String saleOrderSid, @RequestParam("borrowerSid") String borrowerSid,@RequestParam("loanContractSid") String loanContractSid); + ResultBean> selectListByOrderSidAndDkrSidAndLoanContractSid(@RequestParam("saleOrderSid") String saleOrderSid, @RequestParam("borrowerSid") String borrowerSid, @RequestParam("loanContractSid") String loanContractSid); @ApiOperation("根据销售订单sid和消贷合同sid查车辆信息") @@ -180,7 +179,7 @@ public interface BusSalesOrderVehicleFeign { @ApiOperation("根据订单sid车架号查询") @GetMapping("/selByOrderSidAndVinNo") - ResultBean selByOrderSidAndVinNo(@RequestParam("salesOrderSid")String salesOrderSid, @RequestParam("vinNo")String vinNo); + ResultBean selByOrderSidAndVinNo(@RequestParam("salesOrderSid") String salesOrderSid, @RequestParam("vinNo") String vinNo); @ApiOperation("批量保存") @PostMapping("/saveList") @@ -189,4 +188,8 @@ public interface BusSalesOrderVehicleFeign { @ApiOperation("批量修改") @PostMapping("/updateVehiclesList") ResultBean updateVehiclesList(@RequestBody List updateVehicles); + + @ApiOperation("根据车架号后八位关联查询车辆及订单信息") + @PostMapping("/selVehOrderInfoByVinNo") + ResultBean selVehOrderInfoByVinNo(@RequestParam("vinNo") String vinNo); } diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeignFallback.java index b8df78b675..c4b9ace2a8 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeignFallback.java @@ -188,4 +188,9 @@ public class BusSalesOrderVehicleFeignFallback implements BusSalesOrderVehicleFe return null; } + @Override + public ResultBean selVehOrderInfoByVinNo(String vinNo) { + return null; + } + } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java index a30103adb0..9b4f3e2cfb 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java @@ -124,4 +124,6 @@ public interface BusDeliveredApplyMapper extends BaseMapper { int selectCountByVinSid(@Param("vinSid") String vinSid,@Param("contractNo") String contractNo); int selByVinSidAndYBJ(String vinSid); + + String selCustomerByBusVinSid(@Param("busVinSid") String busVinSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml index 80f3a163e0..e27964d574 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml @@ -209,4 +209,13 @@ WHERE bdad.`vinSid` = #{vinSid} AND bda.`nodeState` = '已办结' + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java index 2d391a1c66..a188b553c5 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java @@ -272,6 +272,13 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign { return busDeliveredApplyService.selByVinSidAndYBJ(vinSid); } + @Override + public ResultBean selCustomerByBusVinSid(String busVinSid) { + ResultBean rb = ResultBean.fireFail(); + String customerSid = busDeliveredApplyService.selCustomerByBusVinSid(busVinSid); + return rb.success().setData(customerSid); + } + @Override public ResultBean complete(BusDeliveredApplyCompleteDto query) { BusinessVariables bv = new BusinessVariables(); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java index f5197f6868..737027f35c 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java @@ -4928,4 +4928,8 @@ public class BusDeliveredApplyService extends MybatisBaseService list); void updateVehiclesList(@Param("list") List list); + + BusOrderAndVehInfo selVehOrderInfoByVinNo(@Param("vinNo") String vinNo); } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml index 887caa459f..f5aaa8921d 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml @@ -420,4 +420,18 @@ where bv.`salesOrderSid` = #{salesOrderSid} and bv.linkNo LIKE CONCAT( '%', #{vinNo}, '%' ) + diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java index 3ca278c261..a5e6b89975 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java @@ -221,4 +221,9 @@ public class BusSalesOrderVehicleRest implements BusSalesOrderVehicleFeign { busSalesOrderVehicleService.updateVehiclesList(updateVehicles); return rb.success(); } + + @Override + public ResultBean selVehOrderInfoByVinNo(String vinNo) { + return busSalesOrderVehicleService.selVehOrderInfoByVinNo(vinNo); + } } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java index 90dbbc2127..84b6a82a8d 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java @@ -29,26 +29,19 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basepurchasesystem.BasePurchSystemVo; -import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo; import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign; import com.yxt.anrui.base.api.basetrailer.TrailerVo; import com.yxt.anrui.base.api.basetrailer.TraliveredVo; import com.yxt.anrui.base.api.basevehicle.BaseVehicle; import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; -import com.yxt.anrui.base.api.basevehicle.BaseVehicleQKKPVo; import com.yxt.anrui.base.api.basevehicleappendix.BaseVehicleAppendixFeign; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo; -import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleState; import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateFeign; -import com.yxt.anrui.base.api.basevehicletempstate.BaseVehicleTempstate; import com.yxt.anrui.base.api.basevehicletempstate.BaseVehicleTempstateFeign; -import com.yxt.anrui.base.api.commoncontract.ContractPageVo; -import com.yxt.anrui.base.common.enums.VehicleStateTempOrLast; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.AdCarListVo; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.BusArrearsCarryVehicleApply; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.GCarListVo; -import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppNowCarListVo; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinListsVo; import com.yxt.anrui.buscenter.api.bussalesordervehicle.*; @@ -71,7 +64,6 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.stream.Collectors; /** * Project: anrui-buscenter(业务管理)
@@ -682,4 +674,11 @@ public class BusSalesOrderVehicleService extends MybatisBaseService updateVehicles) { baseMapper.updateVehiclesList(updateVehicles); } + + public ResultBean selVehOrderInfoByVinNo(String vinNo) { + ResultBean rb = ResultBean.fireFail(); + BusOrderAndVehInfo busOrderAndVehInfo = baseMapper.selVehOrderInfoByVinNo(vinNo); + return rb.success().setData(busOrderAndVehInfo); + + } } 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 ba0a7b6a23..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 @@ -77,6 +77,20 @@ public interface FinKingDeeFeign { @ResponseBody ResultBean saveRebatePrepareVoucher(@RequestBody @Valid GeneralVoucher voucher); + @ApiOperation("保存单车返利核对凭证") + @PostMapping("/saveRebateReviewVoucher") + @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 92ddfffc84..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 @@ -53,6 +53,21 @@ implements FinKingDeeFeign{ return null; } + @Override + public ResultBean saveRebateReviewVoucher(@Valid GeneralVoucher voucher) { + 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 ca3befcd58..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 @@ -21,12 +21,15 @@ public class GeneralVoucher { @ApiModelProperty("分公司编码") @NotBlank(message = "分公司编码不能为空") public String useOrgCode; + @ApiModelProperty("业务日期") + public String bussDate; @ApiModelProperty("凭证明细") public List voucherDetails; @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 e57da9dddc..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 @@ -239,13 +239,16 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { 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) { Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方 Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方 - dto1.setSummary(voucherDetail.getTimeFlag() + "月单车返利预提预留费用"); - dto2.setSummary(voucherDetail.getTimeFlag() + "月单车返利预提预留费用"); + dto1.setSummary(voucherDetail.getTimeFlag() + "单车返利预提预留费用"); + dto2.setSummary(voucherDetail.getTimeFlag() + "单车返利预提预留费用"); if (voucherDetail.getSceneCode().equals("上年")) { dto1.setSubjectNo("1161.02.15"); } else if (voucherDetail.getSceneCode().equals("本年")) { @@ -266,6 +269,273 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { return voucherService.saveVoucher(newVoucher); } + @Override + public ResultBean saveRebateReviewVoucher(@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.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.19") || voucherDetail.getSceneCode().equals("1161.01.19")) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); + dto1.setSummary(voucherDetail.getTimeFlag() + "金融贴息上传"); + dto1.setSubjectNo(voucherDetail.getSceneCode()); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setManufacturer(voucherDetail.getManufacturer()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setMaterial(voucherDetail.getMaterial()); + dto1.setCredit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + } + 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("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 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) { log.info("FinKingDeeFeignRest-saveVoucher:{}", JSONObject.toJSONString(voucher)); diff --git a/anrui-scm/anrui-scm-biz/pom.xml b/anrui-scm/anrui-scm-biz/pom.xml index 9aad1f3ece..8c5c8bbbc5 100644 --- a/anrui-scm/anrui-scm-biz/pom.xml +++ b/anrui-scm/anrui-scm-biz/pom.xml @@ -83,7 +83,11 @@ message-center-api 0.0.1-SNAPSHOT - + + anrui-crm-api + com.yxt.anrui + 0.0.1-SNAPSHOT + com.sun.xml.ws diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/AnruiScmApplication.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/AnruiScmApplication.java index 3a740b87ea..68d5222943 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/AnruiScmApplication.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/AnruiScmApplication.java @@ -50,7 +50,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; }) @EnableFeignClients(basePackages = {"com.yxt.anrui.buscenter", "com.yxt.anrui.portal","com.yxt.anrui.flowable","com.yxt.anrui.base" - ,"com.yxt.anrui.fin","com.yxt.messagecenter"}) + ,"com.yxt.anrui.fin","com.yxt.messagecenter", "com.yxt.anrui.crm"}) public class AnruiScmApplication { public static void main(String[] args) { 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 { + @Autowired + private CrmCustomerTempFeign crmCustomerTempFeign; + @Autowired + private BusDeliveredApplyFeign busDeliveredApplyFeign; @Autowired ScmVehrebateCheckapplydetailService scmVehrebateCheckapplydetailService; @Autowired @@ -104,7 +112,14 @@ public class ScmVehrebateCheckapplyService extends MybatisBaseService listPageVo(PagerQuery pq) { ScmVehrebateCheckapplyQuery query = pq.getParams(); QueryWrapper qw = new QueryWrapper<>(); @@ -413,6 +428,8 @@ public class ScmVehrebateCheckapplyService extends MybatisBaseService scmVehRebates = new ArrayList<>(); + List scmVehrebateCheckapplydetailVos = scmVehrebateCheckapplydetailService.selByMainSid(sid); + if (!scmVehrebateCheckapplydetailVos.isEmpty()) { + for (ScmVehrebateCheckapplydetailVo s : scmVehrebateCheckapplydetailVos) { + ScmVehRebate v = scmVehRebateService.fetchBySid(s.getVehRebateSid()); + if (null != v) { + scmVehRebates.add(v); + } + } + } + //按照采购系统分组 + if (!scmVehRebates.isEmpty()) { + Map> map = scmVehRebates.stream().collect(Collectors.groupingBy(ScmVehRebate::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 (ScmVehRebate rebate : v) { + String deptCode = ""; //采购系统部门编码 + String salesDeptCode = ""; //销售部门编码 + String customerCode = ""; //出库单客户编码 + String vinCode = ""; //物料 + String gysCode = ""; //供应商 + SysOrganizationVo data = sysOrganizationFeign.fetchBySid(rebate.getPurchaseSystemSid()).getData(); + if (null != data) { + deptCode = data.getOrgCode(); + } + BaseVehicle vehicle = baseVehicleFeign.fetchBySid(rebate.getVehSid()).getData(); + if (null != vehicle) { + if (StringUtils.isNotBlank(vehicle.getManufacturerCode())) { + gysCode = vehicle.getManufacturerCode(); + } + vinCode = vehicle.getVinNo().substring(vehicle.getVinNo().length() - 8); + } + BusOrderAndVehInfo vehInfo = busSalesOrderVehicleFeign.selVehOrderInfoByVinNo(vinCode).getData(); + if (null != vehInfo) { + String deptSid = vehInfo.getDeptSid(); + SysOrganizationVo salesData = sysOrganizationFeign.fetchBySid(deptSid).getData(); + if (null != salesData) { + salesDeptCode = salesData.getOrgCode(); + } + String busVinSid = vehInfo.getBusVinSid(); + String customerSid = busDeliveredApplyFeign.selCustomerByBusVinSid(busVinSid).getData(); + if (StringUtils.isNotBlank(customerSid)) { + CrmCustomerTemp customerTemp = crmCustomerTempFeign.fetchEntity(customerSid).getData(); + if (null != customerTemp) { + customerCode = customerTemp.getCustomerNo(); + } + } + + } + if (StringUtils.isNotBlank(rebate.getUseOrgSid())) { + String useOrgSid = rebate.getUseOrgSid(); + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData(); + if (null != organizationVo) { + generalVoucher.setUseOrgCode(organizationVo.getOrgCode()); + } + } + + if (!rebate.getRebateTypeValue().equals("金融贴息")) { + if (rebate.getOnceCheckState().intValue() == 0 || tag.equals("1")) { + //没有进行过核对申请 + BigDecimal oneMoney = BigDecimal.ZERO;//一次上传金额 + BigDecimal yicifanli = BigDecimal.ZERO;//一次应收返利返利 + BigDecimal yicididing = 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.setTimeFlag(finalSummaryTag); + voucherDetail.setSceneCode("1161.01.16"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(oneMoney); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + } + if (null != rebate.getOnceSuppCost()) { + yicididing = rebate.getOnceSuppCost(); + } + yicifanli = oneMoney.subtract(yicididing); + if (yicifanli.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + 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); + } + if (yicididing.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(yicididing); + voucherDetail.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + } + BigDecimal twoMoney = BigDecimal.ZERO;//二次次上传金额 + BigDecimal ercifanli = BigDecimal.ZERO;//二次应收返利返利 + BigDecimal ercididing = 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.setTimeFlag(finalSummaryTag); + voucherDetail.setSceneCode("1161.01.16"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(twoMoney); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + } + if (null != rebate.getSecondSuppCost()) { + ercididing = rebate.getSecondSuppCost(); + } + ercifanli = twoMoney.subtract(ercididing); + if (ercifanli.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + 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); + } + if (ercididing.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail.setTimeFlag(finalSummaryTag); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(ercididing); + voucherDetail.setSceneCode("1161.04.00"); + voucherDetail.setRemarks("返利上传"); + voucherDetails.add(voucherDetail); + } + //确认调整时 + if (StringUtils.isNotBlank(rebate.getIsAdjustment())) { + if (rebate.getIsAdjustment().equals("是")) { + if (StringUtils.isNotBlank(rebate.getAdjustmentMoney())) { + BigDecimal adMoney = new BigDecimal(rebate.getAdjustmentMoney()); + if (adMoney.compareTo(BigDecimal.ZERO) != 0) { + GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail1.setTimeFlag(finalSummaryTag); + voucherDetail1.setDeptCode(deptCode); //部门编码赋值 + voucherDetail1.setManufacturer(gysCode); + voucherDetail1.setAmount(adMoney); + 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); + GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail2.setTimeFlag(finalSummaryTag); + voucherDetail2.setCustomerCode("DZFCJFL"); //客户编码 + voucherDetail2.setAmount(adMoney); + voucherDetail2.setSceneCode("1161.04.00"); + voucherDetail2.setRemarks("预留费用调整"); + voucherDetails.add(voucherDetail2); + } + } + } + } + + + } else { + if (rebate.getOnceCheckState().intValue() == 0 || tag.equals("1")) { + //没有进行过核对申请 + BigDecimal oneMoney = 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.setTimeFlag(finalSummaryTag); + voucherDetail.setSceneCode("1161.01.16"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(oneMoney); + voucherDetail.setRemarks("金融贴息"); + voucherDetails.add(voucherDetail); + + GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail2.setTimeFlag(finalSummaryTag); + voucherDetail2.setDeptCode(salesDeptCode); //部门编码赋值 + voucherDetail2.setManufacturer(gysCode); + voucherDetail2.setCustomerCode(customerCode); + voucherDetail2.setMaterial(vinCode); + voucherDetail2.setAmount(oneMoney); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail2.setSceneCode("1161.01.19"); + } else { + voucherDetail2.setSceneCode("1161.02.19"); + } + voucherDetail2.setRemarks("金融贴息"); + voucherDetails.add(voucherDetail2); + } + } + } + BigDecimal twoMoney = 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.setTimeFlag(finalSummaryTag); + voucherDetail.setSceneCode("1161.01.16"); + voucherDetail.setDeptCode(deptCode); //部门编码赋值 + voucherDetail.setManufacturer(gysCode); + voucherDetail.setAmount(twoMoney); + voucherDetail.setRemarks("金融贴息"); + voucherDetails.add(voucherDetail); + GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail(); + voucherDetail2.setTimeFlag(finalSummaryTag); + voucherDetail2.setDeptCode(salesDeptCode); //部门编码赋值 + voucherDetail2.setManufacturer(gysCode); + voucherDetail2.setCustomerCode(customerCode); + voucherDetail2.setMaterial(vinCode); + voucherDetail2.setAmount(twoMoney); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail2.setSceneCode("1161.01.19"); + } else { + voucherDetail2.setSceneCode("1161.02.19"); + } + voucherDetail2.setRemarks("金融贴息"); + voucherDetails.add(voucherDetail2); + } + } + + } + + } + if (!voucherDetails.isEmpty()) { + generalVoucher.setVoucherDetails(voucherDetails); + finKingDeeFeign.saveRebateReviewVoucher(generalVoucher); + } + } + }); + } + + + } + + public ResultBean revokeProcess(FlowTaskVo query) { ResultBean rb = ResultBean.fireFail(); if (StringUtils.isBlank(query.getUserSid())) { diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java index 9c59a6e3fd..8c8e167a01 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java @@ -29,6 +29,10 @@ import cn.hutool.core.bean.BeanUtil; 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.basevehicle.BaseVehicle; +import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; +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; @@ -36,39 +40,36 @@ 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; 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.scmspecialrebatewith.ScmSpecialRebateWithDto; -import com.yxt.anrui.scm.api.scmvehrebatecheckapply.ScmVehrebateCheckapplyVo; -import com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailVo; +import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWith; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDetailsVo; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDto; +import com.yxt.anrui.scm.api.scmvehrebatewithapply.*; import com.yxt.anrui.scm.api.scmvehrebatewithapply.flow.GetNodeQuery; import com.yxt.anrui.scm.api.scmvehrebatewithapply.flow.GetNodeVo; import com.yxt.anrui.scm.api.scmvehrebatewithapply.flow.ScmVehRebateWithApplyDelegateQuery; import com.yxt.anrui.scm.api.scmvehrebatewithapply.flow.SubmitScmVehRebateWithApplyDto; import com.yxt.anrui.scm.biz.scmvehrebate.ScmVehRebateService; import com.yxt.anrui.scm.biz.scmvehrebatewith.ScmVehRebateWithService; -import com.yxt.common.core.result.ResultBean; -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.scmvehrebatewithapply.ScmVehRebateWithApply; -import com.yxt.anrui.scm.api.scmvehrebatewithapply.ScmVehRebateWithApplyQuery; -import com.yxt.anrui.scm.api.scmvehrebatewithapply.ScmVehRebateWithApplyVo; -import com.yxt.anrui.scm.api.scmvehrebatewithapply.ScmVehRebateWithApplyDetailsVo; -import com.yxt.anrui.scm.api.scmvehrebatewithapply.ScmVehRebateWithApplyDto; - +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; @@ -102,7 +103,12 @@ public class ScmVehRebateWithApplyService extends MybatisBaseService createQueryWrapper(ScmVehRebateWithApplyQuery query) { // todo: 这里根据具体业务调整查询条件 // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); @@ -379,7 +385,87 @@ public class ScmVehRebateWithApplyService extends MybatisBaseService scmVehRebates = new ArrayList<>(); + List vehRebateSids = scmVehRebateWithService.fetchVehReBateSidByMainSid(sid); + if (!vehRebateSids.isEmpty()) { + for (String s : vehRebateSids) { + ScmVehRebate v = scmVehRebateService.fetchBySid(s); + if (null != v) { + scmVehRebates.add(v); + } + } + } + //按照采购系统分组 + if (!scmVehRebates.isEmpty()) { + Map> map = scmVehRebates.stream().collect(Collectors.groupingBy(ScmVehRebate::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 (ScmVehRebate rebate : v) { + if (!rebate.getRebateTypeValue().equals("金融贴息")) { + GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail(); + if (StringUtils.isNotBlank(rebate.getUseOrgSid())) { + String useOrgSid = rebate.getUseOrgSid(); + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData(); + if (null != organizationVo) { + generalVoucher.setUseOrgCode(organizationVo.getOrgCode()); + } + } + voucherDetail.setTimeFlag(finalSummaryTag); + String palceGenDate = rebate.getPalceGenDate(); + String[] palceGenDateSplit = palceGenDate.split("-"); + String y2 = palceGenDateSplit[0];//所属年份 + if (y1.equals(y2)) { + voucherDetail.setSceneCode("本年"); + } else { + voucherDetail.setSceneCode("上年"); + } + SysOrganizationVo data = sysOrganizationFeign.fetchBySid(rebate.getPurchaseSystemSid()).getData(); + if (null != data) { + voucherDetail.setDeptCode(data.getOrgCode()); //部门编码赋值 + } + BaseVehicle vehicle = baseVehicleFeign.fetchBySid(rebate.getVehSid()).getData(); + if (null != vehicle) { + if (StringUtils.isNotBlank(vehicle.getManufacturerCode())) { + voucherDetail.setManufacturer(vehicle.getManufacturerCode()); + } + } + voucherDetail.setCustomerCode("DZFCJFL"); + if (null != rebate.getExpectTreatCost()) { + if (rebate.getExpectTreatCost().compareTo(BigDecimal.ZERO) > 0) { + voucherDetail.setAmount(rebate.getExpectTreatCost()); + voucherDetails.add(voucherDetail); + } + } + } + } + if (!voucherDetails.isEmpty()) { + generalVoucher.setVoucherDetails(voucherDetails); + finKingDeeFeign.saveRebatePrepareVoucher(generalVoucher); + } + } + }); + } } @@ -403,6 +489,9 @@ public class ScmVehRebateWithApplyService extends MybatisBaseService
本月上传返利核对情况(按返利类型统计)
- + @@ -35,7 +35,7 @@ -