Browse Source

更改

master
ligaode 4 months ago
parent
commit
6b0526bbea
  1. 53
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  2. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java
  3. 21
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapply/AppFinPaymentApplyVo.java
  4. 15
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplydetails/AppFinPaymentapplyDetailVo.java
  5. 31
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplyvehicle/AppFinPaymentapplyVehicleVo.java
  6. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationRest.java
  7. 67
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  8. 9
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyMapper.xml
  9. 5
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java
  10. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplydetails/FinPaymentapplyDetailsMapper.xml
  11. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplyvehicle/FinPaymentapplyVehicleMapper.xml
  12. 34
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java
  13. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyFeign.java
  14. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyFeignFallback.java
  15. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatewithapply/ScmSpecialRebateWithApplyFeign.java
  16. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatewithapply/ScmSpecialRebateWithApplyFeignFallback.java
  17. 4
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java
  18. 5
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeignFallback.java
  19. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapply/ScmVehrebateCheckapplyFeign.java
  20. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapply/ScmVehrebateCheckapplyFeignFallback.java
  21. 66
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewith/ScmVehRebateWithPdfVo.java
  22. 16
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/PdfPath.java
  23. 3
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyDetailsVo.java
  24. 5
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyFeign.java
  25. 5
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyFeignFallback.java
  26. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyRest.java
  27. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatewithapply/ScmSpecialRebateWithApplyRest.java
  28. 8
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java
  29. 7
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java
  30. 8
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java
  31. 8
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapply/ScmVehrebateCheckapplyRest.java
  32. 9
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyRest.java
  33. 63
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java
  34. 8507
      anrui-scm/anrui-scm-biz/src/main/resources/ftl/dcyt.ftl
  35. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/specialrebatewithapply/AppSpecialRebateWithApplyDetailsVo.java
  36. 18
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyDetailsVo.java
  37. 31
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyVehicleVo.java
  38. 56
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyVo.java
  39. 1
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/specialrebatewithapply/AppSpecialRebateWithApplyService.java
  40. 63
      工作内容需要的文档/单据模板/单车返利预提模板/dcyt.docx
  41. 8355
      工作内容需要的文档/单据模板/单车返利预提模板/dcyt.ftl

53
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java

@ -37,6 +37,7 @@ import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign; import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
import com.yxt.anrui.base.api.basetrailer.TrailerVo; import com.yxt.anrui.base.api.basetrailer.TrailerVo;
import com.yxt.anrui.base.api.basetrailer.TraliveredVo; 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.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo; import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificate; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificate;
@ -159,6 +160,9 @@ import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeC
import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterFeign; import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo; import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateDto;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateFeign;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVehDto;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -290,6 +294,8 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
private LoanNoGuaranteeCreditReviewFeign loanNoGuaranteeCreditReviewFeign; private LoanNoGuaranteeCreditReviewFeign loanNoGuaranteeCreditReviewFeign;
@Autowired @Autowired
private BusSalesOrderLoancontractService busSalesOrderLoancontractService; private BusSalesOrderLoancontractService busSalesOrderLoancontractService;
@Autowired
private ScmVehRebateFeign scmVehRebateFeign;
/** /**
* 构造出库申请的查询条件 * 构造出库申请的查询条件
@ -1172,6 +1178,20 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
Future future10 = pool.submit(() -> { Future future10 = pool.submit(() -> {
pushOtherDocument(busDeliveredApply, detailsList); pushOtherDocument(busDeliveredApply, detailsList);
}); });
//推送单车返利管理
String concatNo = busDeliveredApply.getContractNo();
BusSalesOrder busSalesOrder = busSalesOrderService.selectOrderByContractNo(concatNo).getData();
if (busSalesOrder != null) {
String saleOrderSid = busSalesOrder.getSid();
if (StringUtils.isNotBlank(saleOrderSid)) {
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetailsss(saleOrderSid).getData();
if (solutionsDetailsVo != null) {
Future future11 = pool.submit(() -> {
pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount());
});
}
}
}
//推送合格证管理员站内信提醒有待移交的合格证,同时自动更改出库车辆的合格证移交状态为“待移交”。 //推送合格证管理员站内信提醒有待移交的合格证,同时自动更改出库车辆的合格证移交状态为“待移交”。
//ToDo:合格证管理员、随车资料管理员、发票管理员创建并查询该角色的用户推送消息有待移交的资料等等。 //ToDo:合格证管理员、随车资料管理员、发票管理员创建并查询该角色的用户推送消息有待移交的资料等等。
Future future6 = pool.submit(() -> { Future future6 = pool.submit(() -> {
@ -1332,6 +1352,39 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
} }
} }
private void pushVehRebate(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList, String factoryDiscount) {
for (BusDeliveredApplyDetails busDeliveredApplyDetails : detailsList) {
ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto();
List<ScmVehRebateVehDto> scmVehRebateVehDtos = new ArrayList<>();
ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto();
scmVehRebateDto.setCreateBySid(busDeliveredApply.getCreateBySid());
scmVehRebateDto.setRebateTypeKey("029");
scmVehRebateDto.setRebateTypeValue("金融贴息");
scmVehRebateDto.setRebateName("金融贴息");
scmVehRebateDto.setCalculationStandard(factoryDiscount);
scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(),"yyyy-MM"));
scmVehRebateDto.setCalculationModeKey("002");
scmVehRebateDto.setCalculationModeValue("固定金额");
scmVehRebateDto.setOrgPath(busDeliveredApply.getOrgSidPath());
scmVehRebateVehDto.setState("2");
BaseVehicle baseVehicle = baseVehicleFeign.fetchBySid(busDeliveredApplyDetails.getVinSid()).getData();
scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid());
scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName());
scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid());
scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName());
scmVehRebateVehDto.setVehSid(busDeliveredApplyDetails.getVinSid());
scmVehRebateVehDto.setVinNo(busDeliveredApplyDetails.getVinNo());
scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString());
scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString());
scmVehRebateVehDto.setEstimateRebate(factoryDiscount);
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
}
}
private void pushOtherDocument(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList) { private void pushOtherDocument(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList) {
log.info("推送其他应收单开始啦~~~~~~~~~~~~~~~~~~~~~~~~=============================="); log.info("推送其他应收单开始啦~~~~~~~~~~~~~~~~~~~~~~~~==============================");
String isLoan = ""; // 01非担保 02担保 String isLoan = ""; // 01非担保 02担保

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java

@ -97,6 +97,7 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateFeign;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.messagecenter.api.message.MessageFeign; import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo; import com.yxt.messagecenter.api.message.MessageFlowVo;
@ -184,6 +185,8 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
private BusDeliveredApplyDetailsService busDeliveredApplyDetailsService; private BusDeliveredApplyDetailsService busDeliveredApplyDetailsService;
@Autowired @Autowired
private FinKingDeeFeign finKingDeeFeign; private FinKingDeeFeign finKingDeeFeign;
@Autowired
private ScmVehRebateFeign scmVehRebateFeign;
public PagerVo<BusSalesOrderReturnVehApplyVo> listPageVo(PagerQuery<BusSalesOrderReturnVehApplyQuery> pq) { public PagerVo<BusSalesOrderReturnVehApplyVo> listPageVo(PagerQuery<BusSalesOrderReturnVehApplyQuery> pq) {
@ -742,6 +745,8 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
finVehicleInvoiceFeign.updateBillingState(busSalesOrderReturnVehApply.getContractNo(), vehSid); finVehicleInvoiceFeign.updateBillingState(busSalesOrderReturnVehApply.getContractNo(), vehSid);
//修改出库申请车辆状态 //修改出库申请车辆状态
busDeliveredApplyDetailsService.updateIsDel(vehSid); busDeliveredApplyDetailsService.updateIsDel(vehSid);
//删除推送的单车返利管理
scmVehRebateFeign.delByVehSid(vehSid);
} }
//------------------------修改车辆持久状态-------------------------- //------------------------修改车辆持久状态--------------------------
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.fetchBySid(busSalesOrderReturnVehDetailsVo.getBusVinSid()); BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.fetchBySid(busSalesOrderReturnVehDetailsVo.getBusVinSid());

21
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapply/AppFinPaymentApplyVo.java

@ -1,5 +1,6 @@
package com.yxt.anrui.fin.api.finpaymentapply; package com.yxt.anrui.fin.api.finpaymentapply;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.anrui.fin.api.finpaymentapplydetails.AppFinPaymentapplyDetailVo; import com.yxt.anrui.fin.api.finpaymentapplydetails.AppFinPaymentapplyDetailVo;
import com.yxt.anrui.fin.api.finpaymentapplyvehicle.AppFinPaymentapplyVehicleVo; import com.yxt.anrui.fin.api.finpaymentapplyvehicle.AppFinPaymentapplyVehicleVo;
import com.yxt.common.core.vo.Vo; import com.yxt.common.core.vo.Vo;
@ -18,22 +19,14 @@ import java.util.List;
public class AppFinPaymentApplyVo implements Vo { public class AppFinPaymentApplyVo implements Vo {
private static final long serialVersionUID = -7421450588161214608L; private static final long serialVersionUID = -7421450588161214608L;
@ApiModelProperty("款项名称")
private String costTitleValue;
//创建时间 //创建时间
private String createTime; private String createTime;
//申请人 //申请人
private String name; private String name;
//款项类别 //款项类别
private String costTypeValue; private String costTypeValue;
//业务编号
private String busSid;
//金额
private String cost;
//付款单位名称 //付款单位名称
private String payCompany; private String payCompany;
//收款单位名称
private String receiveCompany;
//付款备注 //付款备注
private String remarks; private String remarks;
//是否涉及车辆 //是否涉及车辆
@ -58,4 +51,16 @@ public class AppFinPaymentApplyVo implements Vo {
@ApiModelProperty("品牌") @ApiModelProperty("品牌")
private String brand; private String brand;
@ApiModelProperty("分公司-部门")
private String publishInfo;
@ApiModelProperty("申请编号")
private String billNo;
@ApiModelProperty("款项范围")
private String costRangeValue;
@ApiModelProperty("付款信息金额合计")
private String payApplyTotal;
@ApiModelProperty("是否已销售,1是0否")
private String isSales;
@ApiModelProperty("款项是否已交清,1是0否")
private String isSettle;
} }

15
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplydetails/AppFinPaymentapplyDetailVo.java

@ -1,9 +1,14 @@
package com.yxt.anrui.fin.api.finpaymentapplydetails; package com.yxt.anrui.fin.api.finpaymentapplydetails;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.anrui.fin.api.finpaymentapplydetailsbelow.FinPaymentapplyDetailsBelowDetailsVo;
import com.yxt.common.core.vo.Vo; import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/** /**
* @Author dimengzhe * @Author dimengzhe
* @Date 2022/10/6 14:41 * @Date 2022/10/6 14:41
@ -12,6 +17,7 @@ import lombok.Data;
@Data @Data
public class AppFinPaymentapplyDetailVo implements Vo { public class AppFinPaymentapplyDetailVo implements Vo {
private static final long serialVersionUID = -5474423439043642156L; private static final long serialVersionUID = -5474423439043642156L;
private String sid;
@ApiModelProperty("厂家销售通路") @ApiModelProperty("厂家销售通路")
private String actualPay; private String actualPay;
@ApiModelProperty("付款方式") @ApiModelProperty("付款方式")
@ -24,4 +30,13 @@ public class AppFinPaymentapplyDetailVo implements Vo {
private String payAccount; private String payAccount;
@ApiModelProperty("备注") @ApiModelProperty("备注")
private String remarks; private String remarks;
@ApiModelProperty("款项名称")
private String costTitleValue;
@ApiModelProperty("收款单位名称")
private String receiveCompany;
@ApiModelProperty("付款信息金额合计")
private BigDecimal payAccountTotal;
@ApiModelProperty
private List<FinPaymentapplyDetailsBelowDetailsVo> finPaymentapplyDetailsBelowList;
} }

31
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplyvehicle/AppFinPaymentapplyVehicleVo.java

@ -1,5 +1,6 @@
package com.yxt.anrui.fin.api.finpaymentapplyvehicle; package com.yxt.anrui.fin.api.finpaymentapplyvehicle;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo; import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -18,4 +19,34 @@ public class AppFinPaymentapplyVehicleVo implements Vo {
private String vinNo; private String vinNo;
@ApiModelProperty("厂家结算价") @ApiModelProperty("厂家结算价")
private String money; private String money;
@ApiModelProperty("内部编码")
private String insideCode;
@ApiModelProperty("版本")
private String marketSegmentsValue;
@ApiModelProperty("颜色")
private String carColor;
@ApiModelProperty("排放")
private String emissionStandardValue;
@ApiModelProperty("变速箱")
private String tranCaseTypeValue;
@ApiModelProperty("后桥")
private String rearAxleValue;
@ApiModelProperty("厂家库龄")
private String libraryAge;
@ApiModelProperty("公司库龄")
private String orgLibraryAge;
@ApiModelProperty("上装名称")
private String topName;
@ApiModelProperty("销售订单类型")
private String saleTypeValue;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("合同号")
private String contractNo;
@ApiModelProperty("销售订单编号")
private String saleBillNo;
@ApiModelProperty("买断状态")
private String settlementStatusValue;
@ApiModelProperty("是否申请买断")
private String isSettle;
} }

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationRest.java

@ -62,7 +62,7 @@ import java.util.List;
* @since 1.0 * @since 1.0
*/ */
@Api(tags = "收款确认表") @Api(tags = "收款确认表")
@RestController("com.yxt.anrui.fin.biz.fincollectionconfirmation.FinCollectionConfirmationRest") @RestController
@RequestMapping("/fincollectionconfirmation") @RequestMapping("/fincollectionconfirmation")
public class FinCollectionConfirmationRest implements FinCollectionConfirmationFeign { public class FinCollectionConfirmationRest implements FinCollectionConfirmationFeign {

67
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -117,6 +117,9 @@ import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetail; import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetail;
import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy; import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateDto;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateFeign;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVehDto;
import com.yxt.common.base.config.component.DocPdfComponent; import com.yxt.common.base.config.component.DocPdfComponent;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
@ -227,6 +230,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
private LoanSettleApplyFeign loanSettleApplyFeign; private LoanSettleApplyFeign loanSettleApplyFeign;
@Autowired @Autowired
private AsBusrepairBillFeign asBusrepairBillFeign; private AsBusrepairBillFeign asBusrepairBillFeign;
@Autowired
private ScmVehRebateFeign scmVehRebateFeign;
private QueryWrapper<FinCollectionConfirmation> createQueryWrapper(FinCollectionConfirmationQuery query) { private QueryWrapper<FinCollectionConfirmation> createQueryWrapper(FinCollectionConfirmationQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
@ -2200,6 +2205,34 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
creditResult.setResultDetails(collectionDetailDtoListOne); creditResult.setResultDetails(collectionDetailDtoListOne);
creditResult.setRemarks("放款差额"); creditResult.setRemarks("放款差额");
creditResultService.pushOtherReceivableBill(creditResult); creditResultService.pushOtherReceivableBill(creditResult);
//推送单车返利管理
ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto();
List<ScmVehRebateVehDto> scmVehRebateVehDtos = new ArrayList<>();
ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto();
scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid());
scmVehRebateDto.setRebateTypeKey("029");
scmVehRebateDto.setRebateTypeValue("金融贴息");
scmVehRebateDto.setRebateName("金融贴息");
scmVehRebateDto.setCalculationStandard(loanSolutions.getActualDiscount().add(loanSolutionsOtherpolicy.getOtherActualDiscount()).toString());
scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM"));
scmVehRebateDto.setCalculationModeKey("002");
scmVehRebateDto.setCalculationModeValue("固定金额");
scmVehRebateDto.setOrgPath(confirmation.getOrgSidPath());
scmVehRebateVehDto.setState("2");
scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid());
scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName());
scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid());
scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName());
scmVehRebateVehDto.setVehSid(baseVehicle.getSid());
scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8));
scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString());
scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString());
scmVehRebateVehDto.setEstimateRebate(loanSolutions.getActualDiscount().add(loanSolutionsOtherpolicy.getOtherActualDiscount()).toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString()); finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString());
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed); finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
} }
@ -2327,23 +2360,46 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
creditResult.setResultDetails(collectionDetailDtoListOne); creditResult.setResultDetails(collectionDetailDtoListOne);
creditResult.setRemarks("放款差额"); creditResult.setRemarks("放款差额");
creditResultService.pushOtherReceivableBill(creditResult); creditResultService.pushOtherReceivableBill(creditResult);
//推送单车返利管理
ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto();
List<ScmVehRebateVehDto> scmVehRebateVehDtos = new ArrayList<>();
ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto();
scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid());
scmVehRebateDto.setRebateTypeKey("029");
scmVehRebateDto.setRebateTypeValue("金融贴息");
scmVehRebateDto.setRebateName("金融贴息");
scmVehRebateDto.setCalculationStandard(loanSolutions.getActualDiscount().add(loanSolutionsOtherpolicy.getOtherActualDiscount()).toString());
scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM"));
scmVehRebateDto.setCalculationModeKey("002");
scmVehRebateDto.setCalculationModeValue("固定金额");
scmVehRebateDto.setOrgPath(confirmation.getOrgSidPath());
scmVehRebateVehDto.setState("2");
scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid());
scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName());
scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid());
scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName());
scmVehRebateVehDto.setVehSid(baseVehicle.getSid());
scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8));
scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString());
scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString());
scmVehRebateVehDto.setEstimateRebate(loanSolutions.getActualDiscount().add(loanSolutionsOtherpolicy.getOtherActualDiscount()).toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString()); finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString());
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed); finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
} }
} }
} else { } else {
//无差额 //无差额
} }
} }
if (!loanDiffDetailssDtos.isEmpty()) { if (!loanDiffDetailssDtos.isEmpty()) {
//推送待办 //推送待办
ResultBean resultBean = loanDiffFeign.save(loanDiffsDto); ResultBean resultBean = loanDiffFeign.save(loanDiffsDto);
} }
} }
} }
@ -3676,6 +3732,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
/** /**
* 转换大写数字 * 转换大写数字
*
* @param bigDecimal * @param bigDecimal
* @return * @return
*/ */

9
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyMapper.xml

@ -135,8 +135,6 @@
fp.createBySid, fp.createBySid,
fp.name, fp.name,
fp.costTypeValue, fp.costTypeValue,
fp.busSid,
fp.cost,
fp.payCompany, fp.payCompany,
fp.remarks, fp.remarks,
fp.isVeh, fp.isVeh,
@ -147,7 +145,12 @@
fp.createBySid, fp.createBySid,
fp.taskId, fp.taskId,
fp.procInstId, fp.procInstId,
fp.carBrandName brand fp.carBrandName brand,
CONCAT(fp.useOrgName,'-',fp.deptName) AS publishInfo,
fp.billNo,
fp.costRangeValue,
fp.isSales,
fp.isSettle
from fin_paymentapply fp from fin_paymentapply fp
where sid = #{sid} where sid = #{sid}
</select> </select>

5
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java

@ -944,6 +944,11 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
ResultBean<AppFinPaymentApplyVo> rb = ResultBean.fireFail(); ResultBean<AppFinPaymentApplyVo> rb = ResultBean.fireFail();
AppFinPaymentApplyVo vo = baseMapper.getPaymentApply(sid); AppFinPaymentApplyVo vo = baseMapper.getPaymentApply(sid);
List<AppFinPaymentapplyDetailVo> paymentList = finPaymentapplyDetailsService.getDetailsList(sid); List<AppFinPaymentapplyDetailVo> paymentList = finPaymentapplyDetailsService.getDetailsList(sid);
vo.setPayApplyTotal(paymentList.stream().map(AppFinPaymentapplyDetailVo::getPayAccountTotal).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
for (AppFinPaymentapplyDetailVo appFinPaymentapplyDetailVo : paymentList) {
List<FinPaymentapplyDetailsBelowDetailsVo> finPaymentapplyDetailsBelowDetailsVos = finPaymentapplyDetailsBelowService.selByMainSid(appFinPaymentapplyDetailVo.getSid());
appFinPaymentapplyDetailVo.setFinPaymentapplyDetailsBelowList(finPaymentapplyDetailsBelowDetailsVos);
}
vo.setPaymentList(paymentList); vo.setPaymentList(paymentList);
if ("1".equals(vo.getIsVeh())) {//涉及车辆 if ("1".equals(vo.getIsVeh())) {//涉及车辆
List<AppFinPaymentapplyVehicleVo> carList = finPaymentapplyVehicleService.getCarList(sid); List<AppFinPaymentapplyVehicleVo> carList = finPaymentapplyVehicleService.getCarList(sid);

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplydetails/FinPaymentapplyDetailsMapper.xml

@ -2,14 +2,21 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.yxt.anrui.fin.biz.finpaymentapplydetails.FinPaymentapplyDetailsMapper"> <mapper namespace="com.yxt.anrui.fin.biz.finpaymentapplydetails.FinPaymentapplyDetailsMapper">
<select id="getDetailsList" resultType="com.yxt.anrui.fin.api.finpaymentapplydetails.AppFinPaymentapplyDetailVo"> <select id="getDetailsList" resultType="com.yxt.anrui.fin.api.finpaymentapplydetails.AppFinPaymentapplyDetailVo">
select fd.actualPay, select fd.sid,
fd.actualPay,
fd.paymentType, fd.paymentType,
fd.bank, fd.bank,
fd.receivingAccount, fd.receivingAccount,
fd.payAccount, fd.payAccount,
fd.remarks fd.remarks,
fd.costTitleValue,
fd.receiveCompany,
SUM(fdb.payAccount) AS payAccountTotal
from fin_paymentapply_details fd from fin_paymentapply_details fd
LEFT JOIN fin_paymentapply_details_below fdb
ON fd.sid = fdb.detailSid
where fd.applySid = #{sid} where fd.applySid = #{sid}
GROUP BY fd.sid
</select> </select>
<delete id="deleteDetail"> <delete id="deleteDetail">

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplyvehicle/FinPaymentapplyVehicleMapper.xml

@ -2,9 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.yxt.anrui.fin.biz.finpaymentapplyvehicle.FinPaymentapplyVehicleMapper"> <mapper namespace="com.yxt.anrui.fin.biz.finpaymentapplyvehicle.FinPaymentapplyVehicleMapper">
<select id="getCarList" resultType="com.yxt.anrui.fin.api.finpaymentapplyvehicle.AppFinPaymentapplyVehicleVo"> <select id="getCarList" resultType="com.yxt.anrui.fin.api.finpaymentapplyvehicle.AppFinPaymentapplyVehicleVo">
select fv.modelName, select fv.*
fv.vinNo,
fv.money
from fin_paymentapply_vehicle fv from fin_paymentapply_vehicle fv
where applySid = #{sid} where applySid = #{sid}
</select> </select>

34
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java

@ -52,6 +52,9 @@ import com.yxt.anrui.riskcenter.biz.loanfinbank.LoanFinBankService;
import com.yxt.anrui.riskcenter.biz.loanfinpolicy.LoanFinPolicyService; import com.yxt.anrui.riskcenter.biz.loanfinpolicy.LoanFinPolicyService;
import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService; import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService;
import com.yxt.anrui.riskcenter.biz.loantemplate.LoanTemplateMapper; import com.yxt.anrui.riskcenter.biz.loantemplate.LoanTemplateMapper;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateDto;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateFeign;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVehDto;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -109,6 +112,8 @@ public class LoanDiffService extends MybatisBaseService<LoanDiffMapper, LoanDiff
private LoanFinPolicyService loanFinPolicyService; private LoanFinPolicyService loanFinPolicyService;
@Autowired @Autowired
private LoanFinBankService loanFinBankService; private LoanFinBankService loanFinBankService;
@Autowired
private ScmVehRebateFeign scmVehRebateFeign;
/** /**
* 判断提交的流程是否被允许 * 判断提交的流程是否被允许
@ -293,6 +298,7 @@ public class LoanDiffService extends MybatisBaseService<LoanDiffMapper, LoanDiff
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
CapitalCreditResult creditResult = new CapitalCreditResult(); CapitalCreditResult creditResult = new CapitalCreditResult();
LoanDiffDetails loanDiffDetails = list.get(i); LoanDiffDetails loanDiffDetails = list.get(i);
LoanDiff loanDiff = fetchBySid(loanDiffDetails.getMainSid());
String busVinSid = loanDiffDetails.getBusVinSid(); String busVinSid = loanDiffDetails.getBusVinSid();
BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectByBusVinSid(busVinSid); BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectByBusVinSid(busVinSid);
BaseVehicle baseVehicle = baseMapper.selectByVSid(busVinSid); BaseVehicle baseVehicle = baseMapper.selectByVSid(busVinSid);
@ -415,6 +421,34 @@ public class LoanDiffService extends MybatisBaseService<LoanDiffMapper, LoanDiff
creditResult.setResultDetails(collectionDetailDtoListOne); creditResult.setResultDetails(collectionDetailDtoListOne);
creditResult.setRemarks("放款差额"); creditResult.setRemarks("放款差额");
finKingDeeFeign.pushOtherReceivableBill(creditResult); finKingDeeFeign.pushOtherReceivableBill(creditResult);
//推送单车返利管理
ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto();
List<ScmVehRebateVehDto> scmVehRebateVehDtos = new ArrayList<>();
ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto();
scmVehRebateDto.setCreateBySid(loanDiff.getCreateBySid());
scmVehRebateDto.setRebateTypeKey("029");
scmVehRebateDto.setRebateTypeValue("金融贴息");
scmVehRebateDto.setRebateName("金融贴息");
scmVehRebateDto.setCalculationStandard(loanDiffDetails.getRealityDiscount().add(loanDiffDetails.getRealityOtherDiscount()).toString());
scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM"));
scmVehRebateDto.setCalculationModeKey("002");
scmVehRebateDto.setCalculationModeValue("固定金额");
scmVehRebateDto.setOrgPath(loanDiff.getOrgSidPath());
scmVehRebateVehDto.setState("2");
scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid());
scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName());
scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid());
scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName());
scmVehRebateVehDto.setVehSid(baseVehicle.getSid());
scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8));
scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString());
scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString());
scmVehRebateVehDto.setEstimateRebate(loanDiffDetails.getRealityDiscount().add(loanDiffDetails.getRealityOtherDiscount()).toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
int updateCount = baseMapper.selectByBusVnS(loanDiffDetails.getBusVinSid(), loanDiffDetails.getRealityLoan().toString()); int updateCount = baseMapper.selectByBusVnS(loanDiffDetails.getBusVinSid(), loanDiffDetails.getRealityLoan().toString());
} }
} }

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyFeign.java

@ -27,6 +27,7 @@ package com.yxt.anrui.scm.api.scmspecialrebatecheckapply;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.*; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -85,6 +86,11 @@ public interface ScmSpecialrebateCheckapplyFeign {
@ResponseBody @ResponseBody
public ResultBean<ScmSpecialrebateCheckapplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); public ResultBean<ScmSpecialrebateCheckapplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("生成专项返利核对pdf")
@PostMapping("/createPdf")
@ResponseBody
ResultBean<PdfPath> createPdf(@RequestParam("specialCheckSid") String specialCheckSid, @RequestParam("userName") String userName);
/**************************************专项返利核对审批流程*******************************************/ /**************************************专项返利核对审批流程*******************************************/
@ApiOperation("提交专项返利核对申请") @ApiOperation("提交专项返利核对申请")

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyFeignFallback.java

@ -30,6 +30,7 @@ import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.GetNodeVo;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.ScmSpecialRebateCheckApplyCompleteDto; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.ScmSpecialRebateCheckApplyCompleteDto;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.ScmSpecialRebateCheckApplyDelegateQuery; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.ScmSpecialRebateCheckApplyDelegateQuery;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.SubmitScmSpecialRebateCheckApplyDto; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.SubmitScmSpecialRebateCheckApplyDto;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -79,6 +80,11 @@ public class ScmSpecialrebateCheckapplyFeignFallback implements ScmSpecialrebate
return rb.setMsg("接口anrui-scm/scmspecialrebatecheckapply/fetchDetailsBySid无法访问"); return rb.setMsg("接口anrui-scm/scmspecialrebatecheckapply/fetchDetailsBySid无法访问");
} }
@Override
public ResultBean<PdfPath> createPdf(String specialCheckSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitSpecialRebateCheckApply(SubmitScmSpecialRebateCheckApplyDto dto) { public ResultBean submitSpecialRebateCheckApply(SubmitScmSpecialRebateCheckApplyDto dto) {
return null; return null;

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatewithapply/ScmSpecialRebateWithApplyFeign.java

@ -27,6 +27,7 @@ package com.yxt.anrui.scm.api.scmspecialrebatewithapply;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*; import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
@ -85,6 +86,11 @@ public interface ScmSpecialRebateWithApplyFeign {
@ResponseBody @ResponseBody
public ResultBean<ScmSpecialRebateWithApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); public ResultBean<ScmSpecialRebateWithApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("生成专项返利预提pdf")
@PostMapping("/createPdf")
@ResponseBody
ResultBean<PdfPath> createPdf(@RequestParam("specialWithSid") String specialWithSid, @RequestParam("userName") String userName);
/**************************************专项返利预提审批流程*******************************************/ /**************************************专项返利预提审批流程*******************************************/
@ApiOperation("提交专项返利预提申请") @ApiOperation("提交专项返利预提申请")

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatewithapply/ScmSpecialRebateWithApplyFeignFallback.java

@ -27,6 +27,7 @@ package com.yxt.anrui.scm.api.scmspecialrebatewithapply;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*; import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -76,6 +77,11 @@ public class ScmSpecialRebateWithApplyFeignFallback implements ScmSpecialRebateW
return rb.setMsg("接口anrui-scm/scmspecialrebatewithapply/fetchDetailsBySid无法访问"); return rb.setMsg("接口anrui-scm/scmspecialrebatewithapply/fetchDetailsBySid无法访问");
} }
@Override
public ResultBean<PdfPath> createPdf(String specialWithSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitSpecialRebateWithApply(SubmitScmSpecialRebateWithApplyDto dto) { public ResultBean submitSpecialRebateWithApply(SubmitScmSpecialRebateWithApplyDto dto) {
return null; return null;

4
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java

@ -135,4 +135,8 @@ public interface ScmVehRebateFeign {
@ResponseBody @ResponseBody
public ResultBean getExcelInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request,@RequestParam("userSid") String userSid,@RequestParam("orgPath") String orgPath) throws IOException, ParseException; public ResultBean getExcelInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request,@RequestParam("userSid") String userSid,@RequestParam("orgPath") String orgPath) throws IOException, ParseException;
@ApiOperation("根据车辆sid删除记录")
@DeleteMapping("/delByVehSid")
@ResponseBody
ResultBean delByVehSid(@RequestParam("vehSid") String vehSid);
} }

5
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeignFallback.java

@ -128,4 +128,9 @@ public class ScmVehRebateFeignFallback implements ScmVehRebateFeign {
public ResultBean getExcelInfo(MultipartFile file, HttpServletRequest request, String userSid, String orgPath) throws IOException, ParseException { public ResultBean getExcelInfo(MultipartFile file, HttpServletRequest request, String userSid, String orgPath) throws IOException, ParseException {
return null; return null;
} }
@Override
public ResultBean delByVehSid(String vehSid) {
return null;
}
} }

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapply/ScmVehrebateCheckapplyFeign.java

@ -27,6 +27,7 @@ package com.yxt.anrui.scm.api.scmvehrebatecheckapply;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*; import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -86,6 +87,11 @@ public interface ScmVehrebateCheckapplyFeign {
@ResponseBody @ResponseBody
public ResultBean<ScmVehrebateCheckapplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); public ResultBean<ScmVehrebateCheckapplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("生成单车返利核对pdf")
@PostMapping("/createPdf")
@ResponseBody
ResultBean<PdfPath> createPdf(@RequestParam("vehCheckSid") String vehCheckSid, @RequestParam("userName") String userName);
/**************************************单车返利核对审批流程*******************************************/ /**************************************单车返利核对审批流程*******************************************/
@ApiOperation("提交单车返利核对申请") @ApiOperation("提交单车返利核对申请")

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapply/ScmVehrebateCheckapplyFeignFallback.java

@ -27,6 +27,7 @@ package com.yxt.anrui.scm.api.scmvehrebatecheckapply;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*; import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -76,6 +77,11 @@ public class ScmVehrebateCheckapplyFeignFallback implements ScmVehrebateCheckapp
return rb.setMsg("接口anrui-scm/scmvehrebatecheckapply/fetchDetailsBySid无法访问"); return rb.setMsg("接口anrui-scm/scmvehrebatecheckapply/fetchDetailsBySid无法访问");
} }
@Override
public ResultBean<PdfPath> createPdf(String vehCheckSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitVehRebateCheckApply(SubmitScmVehRebateCheckApplyDto dto) { public ResultBean submitVehRebateCheckApply(SubmitScmVehRebateCheckApplyDto dto) {
return null; return null;

66
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewith/ScmVehRebateWithPdfVo.java

@ -0,0 +1,66 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmvehrebatewith;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(单车返利预提申请) <br/>
* File: ScmVehRebateWithVo.java <br/>
* Class: com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithVo <br/>
* Description: 单车返利预提表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-08-25 09:04:38 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "单车返利预提表 视图数据对象", description = "单车返利预提表 视图数据对象")
public class ScmVehRebateWithPdfVo implements Vo {
private Integer id; // sid
@ApiModelProperty("采购系统")
private String cgxt;
@ApiModelProperty("品牌")
private String pp;
@ApiModelProperty("返利类型")
private String fllx;
@ApiModelProperty("台数")
private String ts;
@ApiModelProperty("预提返利")
private String ytfl;
@ApiModelProperty("其中待支付费用")
private String dzf;
@ApiModelProperty("其中抵顶费用")
private String dd;
}

16
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/PdfPath.java

@ -0,0 +1,16 @@
package com.yxt.anrui.scm.api.scmvehrebatewithapply;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PdfPath {
@ApiModelProperty("pdf文件路径")
private String pdfPath;
@ApiModelProperty("附件文件路径")
private String fjPath;
@ApiModelProperty("附件文件后缀")
private String fjType;
}

3
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyDetailsVo.java

@ -62,6 +62,9 @@ public class ScmVehRebateWithApplyDetailsVo implements Vo {
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("创建日期") @ApiModelProperty("创建日期")
private Date createTime; private Date createTime;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("办结日期")
private Date finishTime;
@ApiModelProperty("申请人sid") @ApiModelProperty("申请人sid")
private String createBySid; // 申请人sid private String createBySid; // 申请人sid
@ApiModelProperty("备注") @ApiModelProperty("备注")

5
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyFeign.java

@ -86,6 +86,11 @@ public interface ScmVehRebateWithApplyFeign {
@ResponseBody @ResponseBody
public ResultBean<ScmVehRebateWithApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); public ResultBean<ScmVehRebateWithApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("生成单车返利预提pdf")
@PostMapping("/createPdf")
@ResponseBody
ResultBean<PdfPath> createPdf(@RequestParam("vehWithSid") String vehWithSid,@RequestParam("userName") String userName);
/**************************************单车返利预提审批流程*******************************************/ /**************************************单车返利预提审批流程*******************************************/
@ApiOperation("提交单车返利预提申请") @ApiOperation("提交单车返利预提申请")

5
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatewithapply/ScmVehRebateWithApplyFeignFallback.java

@ -76,6 +76,11 @@ public class ScmVehRebateWithApplyFeignFallback implements ScmVehRebateWithApply
return rb.setMsg("接口anrui-scm/scmvehrebatewithapply/fetchDetailsBySid无法访问"); return rb.setMsg("接口anrui-scm/scmvehrebatewithapply/fetchDetailsBySid无法访问");
} }
@Override
public ResultBean<PdfPath> createPdf(String vehWithSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitVehRebateWithApply(SubmitScmVehRebateWithApplyDto dto) { public ResultBean submitVehRebateWithApply(SubmitScmVehRebateWithApplyDto dto) {
return null; return null;

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyRest.java

@ -31,6 +31,7 @@ import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.*; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.*;
import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.*; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -86,6 +87,11 @@ public class ScmSpecialrebateCheckapplyRest implements ScmSpecialrebateCheckappl
return scmSpecialrebateCheckapplyService.fetchDetailsVoBySid(sid); return scmSpecialrebateCheckapplyService.fetchDetailsVoBySid(sid);
} }
@Override
public ResultBean<PdfPath> createPdf(String specialCheckSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitSpecialRebateCheckApply(SubmitScmSpecialRebateCheckApplyDto dto) { public ResultBean submitSpecialRebateCheckApply(SubmitScmSpecialRebateCheckApplyDto dto) {
return scmSpecialrebateCheckapplyService.submitSpecialRebateCheckApply(dto); return scmSpecialrebateCheckapplyService.submitSpecialRebateCheckApply(dto);

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatewithapply/ScmSpecialRebateWithApplyRest.java

@ -31,6 +31,7 @@ import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmspecialrebatewithapply.*; import com.yxt.anrui.scm.api.scmspecialrebatewithapply.*;
import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*; import com.yxt.anrui.scm.api.scmspecialrebatewithapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -99,6 +100,11 @@ public class ScmSpecialRebateWithApplyRest implements ScmSpecialRebateWithApplyF
return scmSpecialRebateWithApplyService.fetchAllDetailsVo(sid); return scmSpecialRebateWithApplyService.fetchAllDetailsVo(sid);
} }
@Override
public ResultBean<PdfPath> createPdf(String specialWithSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitSpecialRebateWithApply(SubmitScmSpecialRebateWithApplyDto dto) { public ResultBean submitSpecialRebateWithApply(SubmitScmSpecialRebateWithApplyDto dto) {
return scmSpecialRebateWithApplyService.submitSpecialRebateWithApply(dto); return scmSpecialRebateWithApplyService.submitSpecialRebateWithApply(dto);

8
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java

@ -32,12 +32,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.scm.api.scmvehrebate.OneExcelVo; import com.yxt.anrui.scm.api.scmvehrebate.OneExcelVo;
import com.yxt.anrui.scm.api.scmvehrebate.TwoExcelVo; import com.yxt.anrui.scm.api.scmvehrebate.TwoExcelVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.*;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate; import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate;
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo; import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo;
import org.apache.ibatis.annotations.Update;
import java.util.List; import java.util.List;
@ -82,4 +79,7 @@ public interface ScmVehRebateMapper extends BaseMapper<ScmVehRebate> {
@Update("update scm_veh_rebate set onceCheckState = #{onceCheckState} where sid = #{sid}") @Update("update scm_veh_rebate set onceCheckState = #{onceCheckState} where sid = #{sid}")
void updateOnceCheckState(@Param("sid") String sid, @Param("onceCheckState") int onceCheckState); void updateOnceCheckState(@Param("sid") String sid, @Param("onceCheckState") int onceCheckState);
@Delete("delete from scm_veh_rebate where vehSid = #{vehSid}")
void delByVehSid(String vehSid);
} }

7
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java

@ -59,7 +59,7 @@ import java.util.List;
* @since 1.0 * @since 1.0
*/ */
@Api(tags = "单车返利表") @Api(tags = "单车返利表")
@RestController("com.yxt.anrui.scm.biz.scmvehrebate.ScmVehRebateRest") @RestController
@RequestMapping("v1/scmvehrebate") @RequestMapping("v1/scmvehrebate")
public class ScmVehRebateRest implements ScmVehRebateFeign { public class ScmVehRebateRest implements ScmVehRebateFeign {
@ -191,4 +191,9 @@ public class ScmVehRebateRest implements ScmVehRebateFeign {
public ResultBean getExcelInfo(MultipartFile file, HttpServletRequest request, String userSid, String orgPath) throws IOException, ParseException { public ResultBean getExcelInfo(MultipartFile file, HttpServletRequest request, String userSid, String orgPath) throws IOException, ParseException {
return scmVehRebateService.getExcelInfo(file, request, userSid, orgPath); return scmVehRebateService.getExcelInfo(file, request, userSid, orgPath);
} }
@Override
public ResultBean delByVehSid(String vehSid) {
return scmVehRebateService.delByVehSid(vehSid);
}
} }

8
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java

@ -539,7 +539,9 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
scmVehRebate.setUseOrgName(sysOrganizationVo.getName()); scmVehRebate.setUseOrgName(sysOrganizationVo.getName());
scmVehRebate.setOrgPath(dto.getOrgPath()); scmVehRebate.setOrgPath(dto.getOrgPath());
scmVehRebate.setCreateBySid(dto.getCreateBySid()); scmVehRebate.setCreateBySid(dto.getCreateBySid());
if (!"2".equals(scmVehRebateVeh.getState())){
scmVehRebate.setState(0); scmVehRebate.setState(0);
}
scmVehRebate.setPurchaseSystemSid(scmVehRebateVeh.getPurchaseSystemSid()); scmVehRebate.setPurchaseSystemSid(scmVehRebateVeh.getPurchaseSystemSid());
scmVehRebate.setPurchaseSystemName(scmVehRebateVeh.getPurchaseSystemName()); scmVehRebate.setPurchaseSystemName(scmVehRebateVeh.getPurchaseSystemName());
save(scmVehRebate); save(scmVehRebate);
@ -1913,4 +1915,10 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
public void updateOnceCheckState(String sid, int onceCheckState) { public void updateOnceCheckState(String sid, int onceCheckState) {
baseMapper.updateOnceCheckState(sid, onceCheckState); baseMapper.updateOnceCheckState(sid, onceCheckState);
} }
public ResultBean delByVehSid(String vehSid) {
ResultBean rb = ResultBean.fireFail();
baseMapper.delByVehSid(vehSid);
return rb.success();
}
} }

8
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapply/ScmVehrebateCheckapplyRest.java

@ -31,6 +31,7 @@ import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.*; import com.yxt.anrui.scm.api.scmvehrebatecheckapply.*;
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*; import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.PdfPath;
import com.yxt.anrui.scm.biz.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailService; import com.yxt.anrui.scm.biz.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailService;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
@ -56,7 +57,7 @@ import java.util.List;
* @since 1.0 * @since 1.0
*/ */
@Api(tags = "单车返利核对申请表") @Api(tags = "单车返利核对申请表")
@RestController("com.yxt.anrui.scm.biz.scmvehrebatecheckapply.ScmVehrebateCheckapplyRest") @RestController
@RequestMapping("v1/scmvehrebatecheckapply") @RequestMapping("v1/scmvehrebatecheckapply")
public class ScmVehrebateCheckapplyRest implements ScmVehrebateCheckapplyFeign { public class ScmVehrebateCheckapplyRest implements ScmVehrebateCheckapplyFeign {
@ -100,6 +101,11 @@ public class ScmVehrebateCheckapplyRest implements ScmVehrebateCheckapplyFeign {
return scmVehrebateCheckapplyService.fetchDetailsBySid(sid); return scmVehrebateCheckapplyService.fetchDetailsBySid(sid);
} }
@Override
public ResultBean<PdfPath> createPdf(String vehCheckSid, String userName) {
return null;
}
@Override @Override
public ResultBean submitVehRebateCheckApply(SubmitScmVehRebateCheckApplyDto dto) { public ResultBean submitVehRebateCheckApply(SubmitScmVehRebateCheckApplyDto dto) {
return scmVehrebateCheckapplyService.submitVehRebateCheckApply(dto); return scmVehrebateCheckapplyService.submitVehRebateCheckApply(dto);

9
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyRest.java

@ -55,7 +55,7 @@ import java.util.List;
* @since 1.0 * @since 1.0
*/ */
@Api(tags = "单车返利预提申请表") @Api(tags = "单车返利预提申请表")
@RestController("com.yxt.anrui.scm.biz.scmvehrebatewithapply.ScmVehRebateWithApplyRest") @RestController
@RequestMapping("v1/scmvehrebatewithapply") @RequestMapping("v1/scmvehrebatewithapply")
public class ScmVehRebateWithApplyRest implements ScmVehRebateWithApplyFeign { public class ScmVehRebateWithApplyRest implements ScmVehRebateWithApplyFeign {
@ -99,6 +99,13 @@ public class ScmVehRebateWithApplyRest implements ScmVehRebateWithApplyFeign {
return scmVehRebateWithApplyService.fetchAllDetailsVo(sid); return scmVehRebateWithApplyService.fetchAllDetailsVo(sid);
} }
@Override
public ResultBean<PdfPath> createPdf(String vehWithSid, String userName) {
ResultBean rb = ResultBean.fireFail();
PdfPath pdf = scmVehRebateWithApplyService.createPdf(vehWithSid, userName);
return rb.success().setData(pdf);
}
@Override @Override
public ResultBean submitVehRebateWithApply(SubmitScmVehRebateWithApplyDto dto) { public ResultBean submitVehRebateWithApply(SubmitScmVehRebateWithApplyDto dto) {
return scmVehRebateWithApplyService.submitVehRebateWithApply(dto); return scmVehRebateWithApplyService.submitVehRebateWithApply(dto);

63
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java

@ -55,6 +55,7 @@ import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate;
import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWith; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWith;
import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDetailsVo; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDetailsVo;
import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDto; import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithDto;
import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithPdfVo;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.*; import com.yxt.anrui.scm.api.scmvehrebatewithapply.*;
import com.yxt.anrui.scm.api.scmvehrebatewithapply.flow.GetNodeQuery; 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.GetNodeVo;
@ -64,6 +65,7 @@ import com.yxt.anrui.scm.biz.scmvehrebate.ScmVehRebateService;
import com.yxt.anrui.scm.biz.scmvehrebatewith.ScmVehRebateWithService; import com.yxt.anrui.scm.biz.scmvehrebatewith.ScmVehRebateWithService;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.WordUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -686,4 +688,65 @@ public class ScmVehRebateWithApplyService extends MybatisBaseService<ScmVehRebat
flowFeign.assignTask(delegateQuery); flowFeign.assignTask(delegateQuery);
return rb.success(); return rb.success();
} }
public PdfPath createPdf(String vehWithSid, String userName) {
PdfPath pdfPath = new PdfPath();
ScmVehRebateWithApplyDetailsVo scmVehRebateWithApplyDetailsVo = fetchAllDetailsVo(vehWithSid).getData();
//获取单车返利预提
List<ScmVehRebateWithDetailsVo> scmVehRebateWiths = scmVehRebateWithApplyDetailsVo.getScmVehRebateWiths();
Map<String, Object> dataMap = new HashMap<String, Object>();
//分公司
dataMap.put("useOrgName", scmVehRebateWithApplyDetailsVo.getCreateOrgName());
//创建部门
dataMap.put("deptName", scmVehRebateWithApplyDetailsVo.getDeptName());
//创建人
dataMap.put("createByName", scmVehRebateWithApplyDetailsVo.getCreateByName());
//创建日期
dataMap.put("scmVehRebateWithApply", scmVehRebateWithApplyDetailsVo.getCreateTime());
//办结日期
dataMap.put("finishTime", scmVehRebateWithApplyDetailsVo.getFinishTime());
//审批编号
dataMap.put("billNo", scmVehRebateWithApplyDetailsVo.getBillNo());
List<ScmVehRebateWithPdfVo> scmVehRebateWithPdfVos = new ArrayList<>();
//循环获取车辆信息
Integer i = 1;
for (ScmVehRebateWithDetailsVo scmVehRebateWithDetailsVo : scmVehRebateWiths) {
ScmVehRebateWithPdfVo scmVehRebateWithPdfVo = new ScmVehRebateWithPdfVo();
scmVehRebateWithPdfVo.setId(i);
i = i + 1;
scmVehRebateWithPdfVo.setCgxt(scmVehRebateWithDetailsVo.getPurchaseSystemName());
scmVehRebateWithPdfVo.setPp(scmVehRebateWithDetailsVo.getBrandName());
scmVehRebateWithPdfVo.setFllx(scmVehRebateWithDetailsVo.getRebateTypeValue());
scmVehRebateWithPdfVo.setTs(scmVehRebateWithDetailsVo.getNum());
scmVehRebateWithPdfVo.setYtfl(scmVehRebateWithDetailsVo.getWithRebate().toString());
scmVehRebateWithPdfVo.setDzf(scmVehRebateWithDetailsVo.getExpectTreatCost().toString());
scmVehRebateWithPdfVo.setDd(scmVehRebateWithDetailsVo.getExpectSuppCost().toString());
}
dataMap.put("wlList", scmVehRebateWithPdfVos);
dataMap.put("ytflt", scmVehRebateWiths.stream().map(ScmVehRebateWithDetailsVo::getWithRebate).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
dataMap.put("dzft", scmVehRebateWiths.stream().map(ScmVehRebateWithDetailsVo::getExpectTreatCost).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
dataMap.put("ddt", scmVehRebateWiths.stream().map(ScmVehRebateWithDetailsVo::getExpectSuppCost).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
dataMap.put("remarks", scmVehRebateWithApplyDetailsVo.getRemarks());
//下载人
dataMap.put("downName", userName);
//下载时间
dataMap.put("downTime", DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"));
//获取模板
//模板路径
String sourcePath = "D:\\anrui\\upload\\template\\";
//生成word文件名
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
// 生成文件路径
String targetPath = sourcePath + dateStr;
WordUtils.creatWord(dataMap, "dcyt", sourcePath, targetPath, typeName);
//新生成的word路径
String wordPath = targetPath + "\\" + typeName;
//生成出门证文件名
String pdfName = "单车返利预提_" + dateStr + seconds + ".pdf";
WordUtils.doc2pdf(wordPath, targetPath, pdfName, "");
pdfPath.setPdfPath("/template/" + dateStr + "/" + pdfName);
return pdfPath;
}
} }

8507
anrui-scm/anrui-scm-biz/src/main/resources/ftl/dcyt.ftl

File diff suppressed because it is too large

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/specialrebatewithapply/AppSpecialRebateWithApplyDetailsVo.java

@ -54,6 +54,7 @@ public class AppSpecialRebateWithApplyDetailsVo implements Vo {
private String sid; // sid private String sid; // sid
private String publishInfo;
@ApiModelProperty("单据编号") @ApiModelProperty("单据编号")
private String billNo; private String billNo;
@ApiModelProperty("创建日期") @ApiModelProperty("创建日期")

18
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyDetailsVo.java

@ -5,6 +5,9 @@ import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/** /**
* @Author dimengzhe * @Author dimengzhe
* @Date 2022/10/6 15:52 * @Date 2022/10/6 15:52
@ -14,12 +17,14 @@ import lombok.Data;
public class PaymentApplyDetailsVo implements Vo { public class PaymentApplyDetailsVo implements Vo {
private static final long serialVersionUID = -3182165897761808808L; private static final long serialVersionUID = -3182165897761808808L;
@ApiModelProperty("厂家销售通路") @ApiModelProperty("款项名称")
@JsonProperty("paymentName") private String costTitleValue;
private String actualPay;
@ApiModelProperty("付款方式") @ApiModelProperty("付款方式")
@JsonProperty("state")
private String paymentType; private String paymentType;
@ApiModelProperty("厂家销售通路")
private String actualPay;
@ApiModelProperty("收款单位名称")
private String receiveCompany;
@ApiModelProperty("开户行") @ApiModelProperty("开户行")
@JsonProperty("depositBank") @JsonProperty("depositBank")
private String bank; private String bank;
@ -31,4 +36,9 @@ public class PaymentApplyDetailsVo implements Vo {
private String payAccount; private String payAccount;
@ApiModelProperty("备注") @ApiModelProperty("备注")
private String remarks; private String remarks;
@ApiModelProperty("付款信息金额合计")
private BigDecimal payAccountTotal;
@ApiModelProperty
private List<PaymentapplyDetailsBelowDetailsVo> finPaymentapplyDetailsBelowList;
} }

31
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyVehicleVo.java

@ -20,7 +20,38 @@ public class PaymentApplyVehicleVo implements Vo {
@ApiModelProperty("车架号") @ApiModelProperty("车架号")
@JsonProperty("vin") @JsonProperty("vin")
private String vinNo; private String vinNo;
@ApiModelProperty("内部编码")
private String insideCode;
@ApiModelProperty("版本")
private String marketSegmentsValue;
@ApiModelProperty("颜色")
private String carColor;
@ApiModelProperty("排放")
private String emissionStandardValue;
@ApiModelProperty("变速箱")
private String tranCaseTypeValue;
@ApiModelProperty("后桥")
private String rearAxleValue;
@ApiModelProperty("厂家库龄")
private String libraryAge;
@ApiModelProperty("公司库龄")
private String orgLibraryAge;
@ApiModelProperty("上装名称")
private String topName;
@ApiModelProperty("厂家结算价") @ApiModelProperty("厂家结算价")
@JsonProperty("price") @JsonProperty("price")
private String money; private String money;
@ApiModelProperty("销售订单类型")
private String saleTypeValue;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("合同号")
private String contractNo;
@ApiModelProperty("销售订单编号")
private String saleBillNo;
@ApiModelProperty("买断状态")
private String settlementStatusValue;
@ApiModelProperty("是否申请买断")
private String isSettle;
} }

56
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/paymentapply/PaymentApplyVo.java

@ -17,54 +17,52 @@ import java.util.List;
public class PaymentApplyVo implements Vo { public class PaymentApplyVo implements Vo {
private static final long serialVersionUID = 1191604961683000023L; private static final long serialVersionUID = 1191604961683000023L;
@ApiModelProperty("款项名称") private String sid;
@JsonProperty("paymentName") private String taskId;
private String costTitleValue; @JsonProperty("procInsId")
//创建时间 private String procInstId;
@JsonProperty("applyDate") @JsonProperty("userSid")
private String createTime; private String createBySid;
@ApiModelProperty("分公司-部门")
private String publishInfo;
@ApiModelProperty("申请编号")
private String billNo;
//申请人 //申请人
@JsonProperty("applyName") @JsonProperty("applyName")
private String name; private String name;
//创建时间
@JsonProperty("applyDate")
private String createTime;
@ApiModelProperty("品牌")
private String brand;
@ApiModelProperty("款项范围")
private String costRangeValue;
//款项类别 //款项类别
@JsonProperty("paymentType") @JsonProperty("paymentType")
private String costTypeValue; private String costTypeValue;
//业务编号
@JsonProperty("businessId")
private String busSid;
//金额
@JsonProperty("price")
private String cost;
//付款单位名称 //付款单位名称
@JsonProperty("payerName") @JsonProperty("payerName")
private String payCompany; private String payCompany;
//收款单位名称 @ApiModelProperty("付款明细合计")
@JsonProperty("payeeName") private String paymentTotal;
private String receiveCompany;
//付款备注 //付款备注
@JsonProperty("paymentRemarks") @JsonProperty("paymentRemarks")
private String remarks; private String remarks;
@ApiModelProperty("付款信息金额合计")
private String payApplyTotal;
@ApiModelProperty("车辆金额合计")
private String carTotal;
//是否涉及车辆 //是否涉及车辆
@JsonProperty("involveCarKey") @JsonProperty("involveCarKey")
private String isVeh; private String isVeh;
@JsonProperty("involveCar") @JsonProperty("involveCar")
private String isVehValue; private String isVehValue;
@ApiModelProperty("是否已销售,1是0否")
private String isSales;
@ApiModelProperty("款项是否已交清,1是0否")
private String isSettle;
//付款明细List //付款明细List
private List<PaymentApplyDetailsVo> paymentList = new ArrayList<>(); private List<PaymentApplyDetailsVo> paymentList = new ArrayList<>();
@ApiModelProperty("付款明细合计")
private String paymentTotal;
//车辆列表 //车辆列表
private List<PaymentApplyVehicleVo> carList = new ArrayList<>(); private List<PaymentApplyVehicleVo> carList = new ArrayList<>();
@ApiModelProperty("车辆金额合计")
private String carTotal;
@JsonProperty("userSid")
private String createBySid;
private String taskId;
@JsonProperty("procInsId")
private String procInstId;
@ApiModelProperty("品牌")
private String brand;
} }

1
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/specialrebatewithapply/AppSpecialRebateWithApplyService.java

@ -70,6 +70,7 @@ public class AppSpecialRebateWithApplyService {
ScmSpecialRebateWithApplyDetailsVo data = scmSpecialRebateWithApplyFeign.fetchDetailsBySid(sid).getData(); ScmSpecialRebateWithApplyDetailsVo data = scmSpecialRebateWithApplyFeign.fetchDetailsBySid(sid).getData();
AppSpecialRebateWithApplyDetailsVo appSpecialRebateWithApplyDetailsVo = new AppSpecialRebateWithApplyDetailsVo(); AppSpecialRebateWithApplyDetailsVo appSpecialRebateWithApplyDetailsVo = new AppSpecialRebateWithApplyDetailsVo();
appSpecialRebateWithApplyDetailsVo.setProcInsId(data.getProcInstId()); appSpecialRebateWithApplyDetailsVo.setProcInsId(data.getProcInstId());
appSpecialRebateWithApplyDetailsVo.setPublishInfo(data.getCreateOrgName() + "-" + data.getDeptName());
BeanUtil.copyProperties(data,appSpecialRebateWithApplyDetailsVo); BeanUtil.copyProperties(data,appSpecialRebateWithApplyDetailsVo);
List<AppSpecialRebateWithDetailsVo> scmSpecialRebateWiths = appSpecialRebateWithApplyDetailsVo.getScmSpecialRebateWiths(); List<AppSpecialRebateWithDetailsVo> scmSpecialRebateWiths = appSpecialRebateWithApplyDetailsVo.getScmSpecialRebateWiths();
for (AppSpecialRebateWithDetailsVo appSpecialRebateWithDetailsVo : scmSpecialRebateWiths) { for (AppSpecialRebateWithDetailsVo appSpecialRebateWithDetailsVo : scmSpecialRebateWiths) {

63
工作内容需要的文档/单据模板/单车返利预提模板/dcyt.docx

@ -0,0 +1,63 @@
${title!}
分公司:
${useOrgName!}
创建部门:
${deptName!}
创建人:
${createByName!}
创建日期:
${createTime!}
办结日期:
${finishTime!}
审批编号:
${billNo!}
序号
采购系统
品牌
返利类型
台数
预提返利
其中待支付费用
其中抵顶费用
${id!}
${cgxt!}
${pp!}
${fllx!}
${ts!}
${ytfl!}
${dzf!}
${dd!}
合计
${ytflt!}
备注
明细见导表
审批流程
${lc.comment!}
${lc.name!}
${lc.spsj!}
下载人:
${downName!}
下载时间:
${downTime!}

8355
工作内容需要的文档/单据模板/单车返利预提模板/dcyt.ftl

File diff suppressed because it is too large
Loading…
Cancel
Save