Browse Source

完善售后服务套餐模块选择商品信息、优化贷后工作

master
fanzongzhe 1 year ago
parent
commit
a26e32060b
  1. 65
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  2. 1
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanPlanDetailsVoForFundVoucher.java
  3. 6
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeign.java
  4. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeignFallback.java
  5. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.java
  6. 116
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.xml
  7. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsRest.java
  8. 162
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsService.java
  9. 2
      yxt-as/src/main/java/com/yxt/anrui/as/api/asserviceitem/AsServiceItemVo.java
  10. 44
      yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/GoodsListVo.java
  11. 15
      yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/PackageGoodsQuery.java
  12. 4
      yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/PackageItemVo.java
  13. 17
      yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/SubjectVo.java
  14. 7
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageMapper.java
  15. 9
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageMapper.xml
  16. 11
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageRest.java
  17. 30
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageService.java
  18. 15
      yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsgoods/WmsGoodsPackageQuery.java
  19. 34
      yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsgoods/WmsGoodsPackageVo.java

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

@ -236,11 +236,11 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (StringUtils.isNotBlank(query.getAuditState())) { if (StringUtils.isNotBlank(query.getAuditState())) {
qw.eq("auditState", query.getAuditState()); qw.eq("auditState", query.getAuditState());
} }
if(StringUtils.isNotBlank(query.getPayerName())){ if (StringUtils.isNotBlank(query.getPayerName())) {
qw.like("payerName",query.getPayerName()); qw.like("payerName", query.getPayerName());
} }
if(StringUtils.isNotBlank(query.getFinBillNo())){ if (StringUtils.isNotBlank(query.getFinBillNo())) {
qw.like("billNo",query.getFinBillNo()); qw.like("billNo", query.getFinBillNo());
} }
} }
} }
@ -3588,7 +3588,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (StringUtils.isNotBlank(data.getVinNo()) && StringUtils.isNotBlank(data.getVehMark())) { if (StringUtils.isNotBlank(data.getVinNo()) && StringUtils.isNotBlank(data.getVehMark())) {
rsk.setVinNo(data.getVinNo() + "/" + data.getVehMark()); rsk.setVinNo(data.getVinNo() + "/" + data.getVehMark());
} }
String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid,v.getReceivablesSid()); String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid, v.getReceivablesSid());
if (StringUtils.isNotBlank(noReturnMoney)) { if (StringUtils.isNotBlank(noReturnMoney)) {
rsk.setNoReceivableMoney(noReturnMoney); rsk.setNoReceivableMoney(noReturnMoney);
} }
@ -3891,17 +3891,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
} }
//认资金占用费消减平台资金占用费 //认资金占用费消减平台资金占用费
if (v.getReceivablesName().equals("资金占用费")) { if (v.getReceivablesName().equals("资金占用费")) {
// FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
// LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(jr.getBusSid()).getData();
// if (planDetails != null) {
// if (planDetails.getFund() != null) {
// BigDecimal fund = planDetails.getFund();
// String subscriptionMoney = v.getSubscriptionMoney();
// BigDecimal subtract = fund.subtract(new BigDecimal(subscriptionMoney));
// planDetails.setFund(subtract);
// loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
// }
// }
try { try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build(); .setNameFormat("demo-pool-%d").build();
@ -3909,6 +3898,10 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
1000, TimeUnit.MILLISECONDS, 1000, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new org.apache.tomcat.util.threads.ThreadPoolExecutor.AbortPolicy()); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new org.apache.tomcat.util.threads.ThreadPoolExecutor.AbortPolicy());
//推送资金占用费收款凭证 //推送资金占用费收款凭证
Future future1 = pool.submit(() -> {
pushFundVoucher(v, sid);
});
//推送资金占用费收款凭证
Future future = pool.submit(() -> { Future future = pool.submit(() -> {
pushFeeVoucher(v, sid); pushFeeVoucher(v, sid);
}); });
@ -3917,22 +3910,22 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
log.error("推送数据失败=========================" + e.getMessage()); log.error("推送数据失败=========================" + e.getMessage());
} }
} }
if("月还".equals(v.getReceivablesName()) if ("月还".equals(v.getReceivablesName())
|| "垫资方逾期利息".equals(v.getReceivablesName()) || "垫资方逾期利息".equals(v.getReceivablesName())
||"资金占用费".equals(v.getReceivablesName()) || "资金占用费".equals(v.getReceivablesName())
|| "结清时资方逾期利息".equals(v.getReceivablesName()) || "结清时资方逾期利息".equals(v.getReceivablesName())
||"资方逾期利息".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())
||"名义价".equals(v.getReceivablesName()) || "名义价".equals(v.getReceivablesName())
||"合同违约金".equals(v.getReceivablesName()) || "合同违约金".equals(v.getReceivablesName())
|| "其他费用".equals(v.getReceivablesName()) || "其他费用".equals(v.getReceivablesName())
){ ) {
BigDecimal unall = BigDecimal.ZERO;//应收 BigDecimal unall = BigDecimal.ZERO;//应收
String busVinSid = ""; String busVinSid = "";
BigDecimal yAll = BigDecimal.ZERO; BigDecimal yAll = BigDecimal.ZERO;
FinUncollectedReceivablesDetailedJR finUncollectedReceivablesDetailedJR = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid()); FinUncollectedReceivablesDetailedJR finUncollectedReceivablesDetailedJR = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if(finUncollectedReceivablesDetailedJR == null){ if (finUncollectedReceivablesDetailedJR == null) {
LoanRepaymentPlanDetails loanRepaymentPlanDetails = baseMapper.selectByBss(v.getReceivablesSid()); LoanRepaymentPlanDetails loanRepaymentPlanDetails = baseMapper.selectByBss(v.getReceivablesSid());
if(loanRepaymentPlanDetails != null){ if (loanRepaymentPlanDetails != null) {
busVinSid = loanRepaymentPlanDetails.getBusVinSid(); busVinSid = loanRepaymentPlanDetails.getBusVinSid();
BigDecimal a1 = baseMapper.selectA1(busVinSid); BigDecimal a1 = baseMapper.selectA1(busVinSid);
// BigDecimal a2 = baseMapper.selectA2(busVinSid); // BigDecimal a2 = baseMapper.selectA2(busVinSid);
@ -3946,9 +3939,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
yAll = yAll.add(a4).add(a5); yAll = yAll.add(a4).add(a5);
} }
}else{ } else {
LoanRepaymentPlanDetails loanRepaymentPlanDetails = baseMapper.selectByBss(finUncollectedReceivablesDetailedJR.getBusSid()); LoanRepaymentPlanDetails loanRepaymentPlanDetails = baseMapper.selectByBss(finUncollectedReceivablesDetailedJR.getBusSid());
if(loanRepaymentPlanDetails != null){ if (loanRepaymentPlanDetails != null) {
busVinSid = loanRepaymentPlanDetails.getBusVinSid(); busVinSid = loanRepaymentPlanDetails.getBusVinSid();
List<String> stringList = baseMapper.selectBys(loanRepaymentPlanDetails.getBusVinSid()); List<String> stringList = baseMapper.selectBys(loanRepaymentPlanDetails.getBusVinSid());
BigDecimal a3 = baseMapper.selectA3(stringList); BigDecimal a3 = baseMapper.selectA3(stringList);
@ -3961,7 +3954,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
yAll = yAll.add(a4).add(a5); yAll = yAll.add(a4).add(a5);
} }
} }
if(yAll.compareTo(unall)>=0){ if (yAll.compareTo(unall) >= 0) {
LoanSettleApply loanSettleApply = baseMapper.selectApply(busVinSid); LoanSettleApply loanSettleApply = baseMapper.selectApply(busVinSid);
LoanSettleBankCost loanSettleBankCost = baseMapper.selectMainSid(loanSettleApply.getSid()); LoanSettleBankCost loanSettleBankCost = baseMapper.selectMainSid(loanSettleApply.getSid());
LoanFinBank loanFinBank = baseMapper.selectByBanks(loanSettleApply.getSaleOrderSid()); LoanFinBank loanFinBank = baseMapper.selectByBanks(loanSettleApply.getSaleOrderSid());
@ -3996,8 +3989,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
} }
} }
}); });
//查询该申请已认款金额总数 //查询该申请已认款金额总数
@ -4018,6 +4009,18 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
return rb.success().setMsg("款项确认成功"); return rb.success().setMsg("款项确认成功");
} }
private void pushFundVoucher(FinSelectedReceivablesDetailedVo v, String sid) {
String planSid = "";
FinCollectionConfirmation finCollectionConfirmation = fetchBySid(sid);
if (null != finCollectionConfirmation) {
FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if (jr != null) {
planSid = jr.getBusSid();
loanRepaymentPlanDetailsFeign.pushFund(planSid);
}
}
}
private void pushFeeVoucher(FinSelectedReceivablesDetailedVo v, String sid) { private void pushFeeVoucher(FinSelectedReceivablesDetailedVo v, String sid) {
String planSid = ""; String planSid = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@ -4641,7 +4644,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
rsk.setVin(data.getVinNo()); rsk.setVin(data.getVinNo());
} }
} }
String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid,v.getReceivablesSid()); String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid, v.getReceivablesSid());
if (StringUtils.isNotBlank(noReturnMoney)) { if (StringUtils.isNotBlank(noReturnMoney)) {
rsk.setNoReceivable(new BigDecimal(noReturnMoney)); rsk.setNoReceivable(new BigDecimal(noReturnMoney));
} }
@ -4879,7 +4882,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
rsk.setVin(data.getVinNo()); rsk.setVin(data.getVinNo());
} }
} }
String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid,v.getReceivablesSid()); String noReturnMoney = finUncollectedReceivablesDetailedJRService.selNoReturnMoneyJR(busSid, v.getReceivablesSid());
if (StringUtils.isNotBlank(noReturnMoney)) { if (StringUtils.isNotBlank(noReturnMoney)) {
rsk.setResidueMoney(new BigDecimal(noReturnMoney)); rsk.setResidueMoney(new BigDecimal(noReturnMoney));
} }

1
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanPlanDetailsVoForFundVoucher.java

@ -11,6 +11,7 @@ import java.math.BigDecimal;
*/ */
@Data @Data
public class LoanPlanDetailsVoForFundVoucher { public class LoanPlanDetailsVoForFundVoucher {
private String sid;
private String busVinSid; private String busVinSid;
private String useOrgName; private String useOrgName;
private BigDecimal duePushMoney; private BigDecimal duePushMoney;

6
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeign.java

@ -62,4 +62,10 @@ public interface LoanRepaymentPlanDetailsFeign {
@PostMapping("/updateVehSidAndPeriod") @PostMapping("/updateVehSidAndPeriod")
@ResponseBody @ResponseBody
ResultBean updateVehSidAndPeriod(@RequestParam("busVinSid") String busVinSid,@RequestParam("period") String period,@RequestParam("paymentMoney") String paymentMoney,@RequestParam("paymentInterest") String paymentInterest); ResultBean updateVehSidAndPeriod(@RequestParam("busVinSid") String busVinSid,@RequestParam("period") String period,@RequestParam("paymentMoney") String paymentMoney,@RequestParam("paymentInterest") String paymentInterest);
@ApiOperation("推送资金占用费计提凭证")
@PostMapping("/pushFund")
@ResponseBody
public ResultBean pushFund(@RequestParam("sid") String sid);
} }

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeignFallback.java

@ -56,4 +56,9 @@ public class LoanRepaymentPlanDetailsFeignFallback implements LoanRepaymentPlanD
public ResultBean updateVehSidAndPeriod(String busVinSid, String period, String paymentMoney, String paymentInterest) { public ResultBean updateVehSidAndPeriod(String busVinSid, String period, String paymentMoney, String paymentInterest) {
return null; return null;
} }
@Override
public ResultBean pushFund(String sid) {
return null;
}
} }

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.java

@ -73,4 +73,6 @@ public interface LoanRepaymentPlanDetailsMapper extends BaseMapper<LoanRepayment
LoanRepaymentPlanDetails selOneByBankNoAndBusVinSid(@Param("bankContractNo") String bankContractNo,@Param("saleVehSid") String saleVehSid); LoanRepaymentPlanDetails selOneByBankNoAndBusVinSid(@Param("bankContractNo") String bankContractNo,@Param("saleVehSid") String saleVehSid);
CheckPayStateVo checkPayState(@Param("pSid") String pSid); CheckPayStateVo checkPayState(@Param("pSid") String pSid);
LoanPlanDetailsVoForFundVoucher pushFund(@Param("sid") String sid);
} }

116
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.xml

@ -151,7 +151,7 @@
FROM (SELECT j.busSid, j.sid, j.reveivableMoney FROM (SELECT j.busSid, j.sid, j.reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j
WHERE j.payCostTitleKey = '006') as fj) as fjj WHERE j.payCostTitleKey = '006') as fj) as fjj
WHERE fjj.busSid = a.sid),0) as fund WHERE fjj.busSid = a.sid), 0) as fund
FROM ( FROM (
SELECT pd.dueDate, SELECT pd.dueDate,
pd.useOrgSid, pd.useOrgSid,
@ -279,7 +279,7 @@
FROM (SELECT j.busSid, j.sid, j.reveivableMoney FROM (SELECT j.busSid, j.sid, j.reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j
WHERE j.payCostTitleKey = '006') as fj) as fjj WHERE j.payCostTitleKey = '006') as fj) as fjj
WHERE fjj.busSid = a.sid),0) as fund WHERE fjj.busSid = a.sid), 0) as fund
FROM ( FROM (
SELECT pd.loanContractNo, SELECT pd.loanContractNo,
pd.oweState, pd.oweState,
@ -366,7 +366,7 @@
FROM (SELECT j.busSid, j.sid, j.reveivableMoney FROM (SELECT j.busSid, j.sid, j.reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j
WHERE j.payCostTitleKey = '006') as fj) as fjj WHERE j.payCostTitleKey = '006') as fj) as fjj
WHERE fjj.busSid = a.sid),0) as fund WHERE fjj.busSid = a.sid), 0) as fund
FROM ( FROM (
SELECT pd.paymentMoney, SELECT pd.paymentMoney,
pd.oweState, pd.oweState,
@ -466,7 +466,7 @@
FROM (SELECT j.busSid, j.sid, j.reveivableMoney FROM (SELECT j.busSid, j.sid, j.reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j FROM anrui_fin.fin_uncollected_receivables_detailed_jr as j
WHERE j.payCostTitleKey = '006') as fj) as fjj WHERE j.payCostTitleKey = '006') as fj) as fjj
WHERE fjj.busSid = a.sid),0) as fund WHERE fjj.busSid = a.sid), 0) as fund
FROM ( FROM (
SELECT pd.paymentMoney, SELECT pd.paymentMoney,
pd.oweState, pd.oweState,
@ -580,72 +580,56 @@
</select> </select>
<select id="checkPayState" <select id="checkPayState"
resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.CheckPayStateVo"> resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.CheckPayStateVo">
SELECT SELECT b.repaidMoney AS actualMoney,
b.repaidMoney AS actualMoney,
CASE CASE
WHEN ( b.outstandingMoney + b.bankBeInter + b.fund ) > 0 THEN WHEN (b.outstandingMoney + b.bankBeInter + b.fund) > 0 THEN
'0' '0'
WHEN ( b.outstandingMoney + b.bankBeInter + b.fund ) &lt;= 0 THEN WHEN (b.outstandingMoney + b.bankBeInter + b.fund) &lt;= 0 THEN
'1' '1'
END AS checkState END AS checkState
FROM FROM (
( SELECT a.*,
SELECT
a.*,
IFNULL((
SELECT
( fjj.reveivableMoney - fjj.m )
FROM
(
SELECT
IFNULL(( IFNULL((
SELECT SELECT (fjj.reveivableMoney - fjj.m)
SUM( subscriptionMoney ) FROM (
FROM SELECT IFNULL((
anrui_fin.fin_selected_receivables_detailed AS s SELECT SUM(subscriptionMoney)
WHERE FROM anrui_fin.fin_selected_receivables_detailed AS s
s.auditState = '3' WHERE s.auditState = '3'
AND s.receivablesSid = fj.sid AND s.receivablesSid = fj.sid
), ),
0 0
) AS m, ) AS m,
fj.* fj.*
FROM FROM (SELECT j.busSid, j.sid, j.reveivableMoney
( SELECT j.busSid, j.sid, j.reveivableMoney FROM anrui_fin.fin_uncollected_receivables_detailed_jr AS j WHERE j.payCostTitleKey = '006' ) AS fj FROM anrui_fin.fin_uncollected_receivables_detailed_jr AS j
WHERE j.payCostTitleKey = '006') AS fj
) AS fjj ) AS fjj
WHERE WHERE fjj.busSid = a.sid
fjj.busSid = a.sid
), ),
0 0
) AS fund ) AS fund
FROM FROM (
( SELECT pd.dueDate,
SELECT
pd.dueDate,
pd.useOrgSid, pd.useOrgSid,
pd.sid, pd.sid,
pd.dueMoney, pd.dueMoney,
pd.overdue, pd.overdue,
t.repaidMoney, t.repaidMoney,
t.outstandingMoney, t.outstandingMoney,
IFNULL( pd.paymentInterest, 0 ) AS bankBeInter, IFNULL(pd.paymentInterest, 0) AS bankBeInter,
pd.overdue AS dueOverdue, pd.overdue AS dueOverdue,
pd.updateTime AS updateDate pd.updateTime AS updateDate
FROM FROM loan_repayment_plan_details AS pd
loan_repayment_plan_details AS pd
LEFT JOIN anrui_buscenter.bus_sales_order AS s ON s.sid = pd.salesOrderSid LEFT JOIN anrui_buscenter.bus_sales_order AS s ON s.sid = pd.salesOrderSid
LEFT JOIN ( LEFT JOIN (
SELECT SELECT p.sid,
p.sid,
IFNULL(( IFNULL((
SELECT SELECT SUM(
SUM( IFNULL(h.actualMoney, 0))
IFNULL( h.actualMoney, 0 )) FROM loan_repayment_history AS h
FROM WHERE h.planDetailSid = p.sid
loan_repayment_history AS h
WHERE
h.planDetailSid = p.sid
AND h.updateState = '1' AND h.updateState = '1'
), ),
0 0
@ -653,26 +637,48 @@
IFNULL( IFNULL(
( (
p.dueMoney - IFNULL(( p.dueMoney - IFNULL((
SELECT SELECT SUM(
SUM( IFNULL(h.actualMoney, 0))
IFNULL( h.actualMoney, 0 )) FROM loan_repayment_history AS h
FROM WHERE h.planDetailSid = p.sid
loan_repayment_history AS h
WHERE
h.planDetailSid = p.sid
AND h.updateState = '1' AND h.updateState = '1'
), ),
0 0
)), )),
0 0
) AS outstandingMoney ) AS outstandingMoney
FROM FROM loan_repayment_plan_details AS p
loan_repayment_plan_details AS p
) AS t ON pd.sid = t.sid ) AS t ON pd.sid = t.sid
) AS a ) AS a
WHERE WHERE a.dueDate &lt;= a.updateDate
a.dueDate &lt;= a.updateDate
AND a.sid = #{pSid} AND a.sid = #{pSid}
) AS b ) AS b
</select> </select>
<select id="pushFund"
resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanPlanDetailsVoForFundVoucher">
SELECT c.*,
(c.reveivableMoney - c.fund) AS duePushMoney
FROM (
SELECT b.*
FROM (
SELECT a.*,
IFNULL((SELECT SUM(fund)
FROM loan_push_fund_history AS ph
WHERE ph.busVinSid = a.busVinSid), 0) AS fund
FROM (
SELECT p.sid,
p.busVinSid,
p.useOrgSid,
p.useOrgName,
SUM(j.reveivableMoney) AS reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr AS j
LEFT JOIN loan_repayment_plan_details AS p ON j.busSid = p.sid
WHERE j.payCostTitleKey = '006'
GROUP BY p.busVinSid
) AS a
) AS b
WHERE b.reveivableMoney - b.fund > 0
AND b.sid = #{sid}
) c
</select>
</mapper> </mapper>

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsRest.java

@ -70,4 +70,9 @@ public class LoanRepaymentPlanDetailsRest implements LoanRepaymentPlanDetailsFei
loanRepaymentPlanDetailsService.updateVehSidAndPeriod(busVinSid, period, paymentMoney, paymentInterest); loanRepaymentPlanDetailsService.updateVehSidAndPeriod(busVinSid, period, paymentMoney, paymentInterest);
return rb.success(); return rb.success();
} }
@Override
public ResultBean pushFund(String sid) {
return loanRepaymentPlanDetailsService.pushFund(sid);
}
} }

162
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsService.java

@ -1,62 +1,39 @@
package com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails; package com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo; import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign; import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractFeign;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo; import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.voucher.GeneralVoucher;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.riskcenter.api.loanpushfundhistory.LoanPushFundHistory;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.DifferenceVo; import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.DifferenceVo;
import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.HistoryOverDueVo; import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.HistoryOverDueVo;
import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.LoanRepaymentHistoryDto;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.*; import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.*;
import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.*; import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.*;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo; import com.yxt.anrui.riskcenter.biz.loanpushfundhistory.LoanPushFundHistoryService;
import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy;
import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformation;
import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService; import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService;
import com.yxt.anrui.riskcenter.biz.loanrepaymentschedule.LoanRepaymentScheduleService; import com.yxt.anrui.riskcenter.biz.loanrepaymentschedule.LoanRepaymentScheduleService;
import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService;
import com.yxt.anrui.riskcenter.biz.loansolutionsotherpolicy.LoanSolutionsOtherpolicyService;
import com.yxt.anrui.riskcenter.biz.loanwarrantinformation.LoanWarrantInformationService;
import com.yxt.common.base.config.component.DocPdfComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.MsgWs;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.base.utils.WordConvertUtils;
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.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessagePushTransferDto;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.io.File;
import java.io.InputStream;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors;
/** /**
@ -67,11 +44,25 @@ import java.util.stream.Collectors;
@Service @Service
public class LoanRepaymentPlanDetailsService extends MybatisBaseService<LoanRepaymentPlanDetailsMapper, LoanRepaymentPlanDetails> { public class LoanRepaymentPlanDetailsService extends MybatisBaseService<LoanRepaymentPlanDetailsMapper, LoanRepaymentPlanDetails> {
@Autowired
private BusSalesOrderFeign busSalesOrderFeign;
@Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
@Autowired @Autowired
private LoanRepaymentHistoryService loanRepaymentHistoryService; private LoanRepaymentHistoryService loanRepaymentHistoryService;
@Autowired @Autowired
private LoanRepaymentScheduleService loanRepaymentScheduleService; private LoanRepaymentScheduleService loanRepaymentScheduleService;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private FinKingDeeFeign finKingDeeFeign;
@Autowired
private BusSalesOrderBorrowerFeign busSalesOrderBorrowerFeign;
@Autowired
private BasePurchaseSystemFeign basePurchaseSystemFeign;
@Autowired
private LoanPushFundHistoryService loanPushFundHistoryService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResultBean<String> savePlanDetails(LoanRepaymentPlanDetailsDto dto) { public ResultBean<String> savePlanDetails(LoanRepaymentPlanDetailsDto dto) {
@ -206,10 +197,105 @@ public class LoanRepaymentPlanDetailsService extends MybatisBaseService<LoanRepa
} }
public LoanRepaymentPlanDetails selOneByBankNoAndBusVinSid(String bankContractNo, String saleVehSid) { public LoanRepaymentPlanDetails selOneByBankNoAndBusVinSid(String bankContractNo, String saleVehSid) {
return baseMapper.selOneByBankNoAndBusVinSid(bankContractNo,saleVehSid); return baseMapper.selOneByBankNoAndBusVinSid(bankContractNo, saleVehSid);
} }
public CheckPayStateVo checkPayState(String pSid) { public CheckPayStateVo checkPayState(String pSid) {
return baseMapper.checkPayState(pSid); return baseMapper.checkPayState(pSid);
} }
public ResultBean pushFund(String sid) {
ResultBean rb = ResultBean.fireFail();
LoanPlanDetailsVoForFundVoucher v = baseMapper.pushFund(sid);
if (null != v) {
List<LoanPushFundHistory> fundHistoryList = new ArrayList<>();
LoanRepaymentPlanDetails planDetails = fetchBySid(sid);
GeneralVoucher generalVoucher = new GeneralVoucher();
List<GeneralVoucher.GeneralVoucherDetail> voucherDetails = new ArrayList<>();
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(planDetails.getUseOrgSid()).getData();
if (null != organizationVo) {
generalVoucher.setUseOrgCode(organizationVo.getOrgCode());
}
GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail1.setSceneCode("贷方");
voucherDetail1.setDataTime(new DateTime());
voucherDetail1.setAmount(v.getDuePushMoney());
List<SysOrganizationVo> deptVo = sysOrganizationFeign.selectChildrenListBySid(planDetails.getUseOrgSid()).getData();
if (!deptVo.isEmpty()) {
deptVo.stream().forEach(d -> {
if (d.getName().equals("金融服务部")) {
voucherDetail1.setDeptCode(d.getOrgCode());
}
});
}
voucherDetails.add(voucherDetail1);
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(v.getBusVinSid()).getData();
if (null != busSalesOrderVehicle) {
BusSalesOrder salesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData();
String deptSid = salesOrder.getOrgSid();
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setSceneCode("借方");
voucherDetail.setDataTime(new DateTime());
SysOrganizationVo organizationDeptVo = sysOrganizationFeign.fetchBySid(deptSid).getData();
if (null != organizationDeptVo) {
voucherDetail.setDeptCode(organizationDeptVo.getOrgCode());
}
if (null != salesOrder) {
if (null != busSalesOrderVehicle) {
String customerNumber = "";
//判断财务系统是否有客户
Boolean aBoolean = finKingDeeFeign.customerExistState(busSalesOrderVehicle.getTemporaryNo()).getData();
String linkNo = "";
BusSalesOrderBorrowerDetailsVo borrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
if (!aBoolean) {
// List<BdCustomer> bdCustomers = new ArrayList<>();
BdCustomer bdCustomer = new BdCustomer();
bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo());
bdCustomer.setFShortName(salesOrder.getContractNo());
BasePurchaseSystemDetailsVo data = basePurchaseSystemFeign.fetchDetailsByDeptSid(salesOrder.getPurchaseSystemSid()).getData();
bdCustomer.setTOrgIds(data.getOrgCode());
if (org.apache.commons.lang3.StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) {
String vinNo = busSalesOrderVehicle.getLinkNo();
if (vinNo.length() > 8) {
linkNo = vinNo.substring(vinNo.length() - 8);
} else {
linkNo = busSalesOrderVehicle.getLinkNo();
}
if (null != borrowerDetailsVo) {
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + linkNo);
}
} else {
if (null != borrowerDetailsVo) {
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo());
}
}
// bdCustomers.add(bdCustomer);
ResultBean<String> resultBean = finKingDeeFeign.draftBdCustomer(bdCustomer);
if (resultBean.getSuccess()) {
customerNumber = bdCustomer.getFNumber();
}
} else {
customerNumber = busSalesOrderVehicle.getTemporaryNo();
}
voucherDetail.setCustomerCode(customerNumber);
}
}
voucherDetail.setAmount(v.getDuePushMoney());
voucherDetails.add(voucherDetail);
}
LoanPushFundHistory loanPushFundHistory = new LoanPushFundHistory();
BeanUtil.copyProperties(v, loanPushFundHistory, "id", "sid", "fund");
if (null != v.getDuePushMoney()) {
loanPushFundHistory.setFund(v.getDuePushMoney());
}
fundHistoryList.add(loanPushFundHistory);
generalVoucher.setVoucherDetails(voucherDetails);
finKingDeeFeign.saveFundVoucher(generalVoucher);
// 生成推送资金占用费历史记录
if (!fundHistoryList.isEmpty()) {
loanPushFundHistoryService.saveLists(fundHistoryList);
}
}
return rb.success();
}
} }

2
yxt-as/src/main/java/com/yxt/anrui/as/api/asserviceitem/AsServiceItemVo.java

@ -57,6 +57,8 @@ public class AsServiceItemVo implements Vo {
private String sitemCode; private String sitemCode;
@ApiModelProperty("工种(分类)") @ApiModelProperty("工种(分类)")
private String serviceType; private String serviceType;
@ApiModelProperty("工种sid(分类)")
private String serviceTypeSid;
@ApiModelProperty("车型") @ApiModelProperty("车型")
private String goodsModel; private String goodsModel;
@ApiModelProperty("备注") @ApiModelProperty("备注")

44
yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/GoodsListVo.java

@ -0,0 +1,44 @@
package com.yxt.anrui.as.api.asservicepackage;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/3/13 10:55
*/
@Data
public class GoodsListVo {
@ApiModelProperty("商品sid")
private String goodsSid; // 商品sid
@ApiModelProperty("商品名称")
private String goodsName; // 商品名称
@ApiModelProperty("商品编码(图号)")
private String goodsCode; // 商品编码(图号)
@ApiModelProperty("车型sid")
private String goodsModelSid; // 车型sid
@ApiModelProperty("车型")
private String goodsModel; // 车型
@ApiModelProperty("单位")
private String unit; // 单位
@ApiModelProperty("规格")
private String specification; // 规格
@ApiModelProperty("数量")
private String count; // 数量
@ApiModelProperty("销售价")
private String price; // 销售价
@ApiModelProperty("仓库名称")
private String warehouse; // 仓库名称
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("货位")
private String warehouseArea;
@ApiModelProperty("备注")
private String remarks; // 备注
@ApiModelProperty("三包价")
private String freePrice; // 三包价
@ApiModelProperty("商品分类")
private String goodsTypeName;
}

15
yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/PackageGoodsQuery.java

@ -1,6 +1,7 @@
package com.yxt.anrui.as.api.asservicepackage; package com.yxt.anrui.as.api.asservicepackage;
import com.yxt.common.core.query.Query; import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
@ -11,5 +12,17 @@ import lombok.Data;
@Data @Data
public class PackageGoodsQuery implements Query { public class PackageGoodsQuery implements Query {
private String orgPath; private String orgPath;
private String goodsName; @ApiModelProperty("商品名称")
private String goodsName; // 商品名称
@ApiModelProperty("零件号")
private String goodsCode; // 商品编码(图号)
@ApiModelProperty("库存")
private String kuCun;
@ApiModelProperty("仓库名称")
private String warehouse; // 仓库名称
@ApiModelProperty("货位")
private String warehouseArea;
@ApiModelProperty("商品分类")
private String goodsTypeName;
private String name;
} }

4
yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/PackageItemVo.java

@ -30,8 +30,8 @@ public class PackageItemVo {
private String price; private String price;
@ApiModelProperty("科目sid") @ApiModelProperty("科目sid")
private String subjectSid; private String subjectSid;
@ApiModelProperty("科目名称") @ApiModelProperty("科目")
private String subjectName; private String subject; // 科目
@ApiModelProperty("折扣(0-10,0免费,10不打折)") @ApiModelProperty("折扣(0-10,0免费,10不打折)")
private String discount; // 折扣(0-10,0免费,10不打折) private String discount; // 折扣(0-10,0免费,10不打折)
@ApiModelProperty("优惠金额(=销售价*(折扣*0.1))") @ApiModelProperty("优惠金额(=销售价*(折扣*0.1))")

17
yxt-as/src/main/java/com/yxt/anrui/as/api/asservicepackage/SubjectVo.java

@ -0,0 +1,17 @@
package com.yxt.anrui.as.api.asservicepackage;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/3/13 14:31
*/
@Data
public class SubjectVo {
@ApiModelProperty("科目sid")
private String subjectSid;
@ApiModelProperty("科目")
private String subject; // 科目
}

7
yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageMapper.java

@ -29,13 +29,10 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; 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.as.api.asservicepackage.PackageAttachItemVo; import com.yxt.anrui.as.api.asservicepackage.*;
import com.yxt.anrui.as.api.asservicepackage.PackageItemVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.as.api.asservicepackage.AsServicePackage;
import com.yxt.anrui.as.api.asservicepackage.AsServicePackageVo;
import java.util.List; import java.util.List;
@ -68,4 +65,6 @@ public interface AsServicePackageMapper extends BaseMapper<AsServicePackage> {
List<PackageItemVo> selItemInfo(@Param("useOrgSid") String useOrgSid); List<PackageItemVo> selItemInfo(@Param("useOrgSid") String useOrgSid);
List<PackageAttachItemVo> selAttItemInfo(@Param("useOrgSid") String useOrgSid); List<PackageAttachItemVo> selAttItemInfo(@Param("useOrgSid") String useOrgSid);
List<SubjectVo> selSubjectInfo(@Param("useOrgSid") String useOrgSid);
} }

9
yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageMapper.xml

@ -31,4 +31,13 @@
FROM as_service_attachitem FROM as_service_attachitem
WHERE createOrgSid = #{useOrgSid} WHERE createOrgSid = #{useOrgSid}
</select> </select>
<select id="selSubjectInfo" resultType="com.yxt.anrui.as.api.asservicepackage.SubjectVo">
SELECT
sid subjectSid,
subjectName as subject
FROM
as_service_subject
WHERE
useOrgSid = #{useOrgSid}
</select>
</mapper> </mapper>

11
yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageRest.java

@ -107,11 +107,18 @@ public class AsServicePackageRest {
List<PackageAttachItemVo> voList = asServicePackageService.selAttItemInfo(orgPath); List<PackageAttachItemVo> voList = asServicePackageService.selAttItemInfo(orgPath);
return rb.success().setData(voList); return rb.success().setData(voList);
} }
@ApiOperation("查询分公司科目")
@GetMapping("/selSubjectInfo")
public ResultBean<List<SubjectVo>> selSubjectInfo(@RequestParam("orgPath") String orgPath){
ResultBean rb = ResultBean.fireFail();
List<SubjectVo> voList = asServicePackageService.selSubjectInfo(orgPath);
return rb.success().setData(voList);
}
@ApiOperation("查询分公司商品信息") @ApiOperation("查询分公司商品信息")
@PostMapping("/selGoodsInfo") @PostMapping("/selGoodsInfo")
public ResultBean<PagerVo<PackageGoodsVo>> selGoodsInfo(@RequestBody PagerQuery<AsServicePackageQuery> pq){ public ResultBean<PagerVo<GoodsListVo>> selGoodsInfo(@RequestBody PagerQuery<PackageGoodsQuery> pq){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<PackageGoodsVo> pagerVo = asServicePackageService.selGoodsInfo(pq); PagerVo<GoodsListVo> pagerVo = asServicePackageService.selGoodsInfo(pq);
return rb.success().setData(pagerVo); return rb.success().setData(pagerVo);
} }
} }

30
yxt-as/src/main/java/com/yxt/anrui/as/biz/asservicepackage/AsServicePackageService.java

@ -193,8 +193,8 @@ public class AsServicePackageService extends MybatisBaseService<AsServicePackage
if (!goodsVos.isEmpty()) { if (!goodsVos.isEmpty()) {
for (PackageGoodsVo goodsVo : goodsVos) { for (PackageGoodsVo goodsVo : goodsVos) {
AsServicePackageGoods goods = new AsServicePackageGoods(); AsServicePackageGoods goods = new AsServicePackageGoods();
goods.setPackageSid(sid);
BeanUtil.copyProperties(goodsVo, goods, "id", "sid"); BeanUtil.copyProperties(goodsVo, goods, "id", "sid");
goods.setPackageSid(sid);
asServicePackageGoodsService.insert(goods); asServicePackageGoodsService.insert(goods);
} }
} }
@ -281,22 +281,32 @@ public class AsServicePackageService extends MybatisBaseService<AsServicePackage
return list; return list;
} }
public PagerVo<PackageGoodsVo> selGoodsInfo(PagerQuery<AsServicePackageQuery> pq) { public PagerVo<GoodsListVo> selGoodsInfo(PagerQuery<PackageGoodsQuery> pq) {
PagerQuery<WmsGoodsPackageQuery> query = new PagerQuery<>(); PagerQuery<WmsGoodsPackageQuery> query = new PagerQuery<>();
BeanUtil.copyProperties(pq, query); BeanUtil.copyProperties(pq, query);
AsServicePackageQuery params = pq.getParams(); PackageGoodsQuery params = pq.getParams();
ResultBean<String> orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(params.getOrgPath()); // ResultBean<String> orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(params.getOrgPath());
if (orgSidByPath.getSuccess()) { // if (orgSidByPath.getSuccess()) {
String useOrgSid = orgSidByPath.getData(); // String useOrgSid = orgSidByPath.getData();
WmsGoodsPackageQuery queryParams = query.getParams(); // WmsGoodsPackageQuery queryParams = query.getParams();
queryParams.setUseOrgSid(useOrgSid); // queryParams.setUseOrgSid(useOrgSid);
} // }
ResultBean<PagerVo<WmsGoodsPackageVo>> voResultBean = wmsGoodsFeign.getPackageGoodsVo(query); ResultBean<PagerVo<WmsGoodsPackageVo>> voResultBean = wmsGoodsFeign.getPackageGoodsVo(query);
PagerVo<PackageGoodsVo> vo = new PagerVo<>(); PagerVo<GoodsListVo> vo = new PagerVo<>();
if (voResultBean.getSuccess()) { if (voResultBean.getSuccess()) {
PagerVo<WmsGoodsPackageVo> data = voResultBean.getData(); PagerVo<WmsGoodsPackageVo> data = voResultBean.getData();
BeanUtil.copyProperties(data, vo); BeanUtil.copyProperties(data, vo);
} }
return vo; return vo;
} }
public List<SubjectVo> selSubjectInfo(String orgPath) {
List<SubjectVo> list = new ArrayList<>();
ResultBean<String> orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(orgPath);
if (orgSidByPath.getSuccess()) {
String useOrgSid = orgSidByPath.getData();
list = baseMapper.selSubjectInfo(useOrgSid);
}
return list;
}
} }

15
yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsgoods/WmsGoodsPackageQuery.java

@ -1,6 +1,7 @@
package com.yxt.anrui.as.feign.wms.wmsgoods; package com.yxt.anrui.as.feign.wms.wmsgoods;
import com.yxt.common.core.query.Query; import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
@ -11,5 +12,17 @@ import lombok.Data;
@Data @Data
public class WmsGoodsPackageQuery implements Query { public class WmsGoodsPackageQuery implements Query {
private String useOrgSid; private String useOrgSid;
private String goodsName; @ApiModelProperty("商品名称")
private String goodsName; // 商品名称
@ApiModelProperty("零件号")
private String goodsCode; // 商品编码(图号)
@ApiModelProperty("库存")
private String kuCun;
@ApiModelProperty("仓库名称")
private String warehouse; // 仓库名称
@ApiModelProperty("货位")
private String warehouseArea;
@ApiModelProperty("商品分类")
private String goodsTypeName;
private String name;
} }

34
yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsgoods/WmsGoodsPackageVo.java

@ -25,24 +25,22 @@ public class WmsGoodsPackageVo {
private String goodsModel; // 车型 private String goodsModel; // 车型
@ApiModelProperty("单位") @ApiModelProperty("单位")
private String unit; // 单位 private String unit; // 单位
// @ApiModelProperty("仓库sid")
// private String warehouseSid; // 仓库sid
// @ApiModelProperty("仓库名称")
// private String warehouse; // 仓库名称
// @ApiModelProperty("科目sid")
// private String subjectSid; // 科目sid
// @ApiModelProperty("科目")
// private String subject; // 科目
// @ApiModelProperty("销售价")
// private String price; // 销售价
// @ApiModelProperty("数量")
// private String count; // 数量
// @ApiModelProperty("折扣(0-10,0免费,10不打折)")
// private String discount; // 折扣(0-10,0免费,10不打折)
// @ApiModelProperty("优惠金额(=销售价*(折扣*0.1))")
// private String discountAmount; // 优惠金额(=销售价*(折扣*0.1))
// @ApiModelProperty("金额(销售价-优惠金额)")
// private String amount; // 金额(销售价-优惠金额)
@ApiModelProperty("规格") @ApiModelProperty("规格")
private String specification; // 规格 private String specification; // 规格
@ApiModelProperty("数量")
private String count; // 数量
@ApiModelProperty("销售价")
private String price; // 销售价
@ApiModelProperty("仓库名称")
private String warehouse; // 仓库名称
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("货位")
private String warehouseArea;
@ApiModelProperty("备注")
private String remarks; // 备注
@ApiModelProperty("三包价")
private String freePrice; // 三包价
@ApiModelProperty("商品分类")
private String goodsTypeName;
} }

Loading…
Cancel
Save