Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
8bf1130fe9
  1. 156
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java
  2. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapplydetails/BusDeliveredApplyDetailsFeign.java
  3. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapplydetails/BusDeliveredApplyDetailsFeignFallback.java
  4. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeign.java
  5. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeignFallback.java
  6. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsMapper.java
  7. 9
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsMapper.xml
  8. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsRest.java
  9. 8
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsService.java
  10. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractRest.java
  11. 171
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java
  12. 7
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java
  13. 6
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java
  14. 47
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/capitalcreditresult/CapitalCreditResult.java
  15. 52
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/capitalcreditresult/CwSystemYT.java
  16. 14
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  17. 59
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultCastToKingDeeBillFields.java
  18. 107
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java
  19. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data.json
  20. 33
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_FEntity.json
  21. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_data.json
  22. 67
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_model.json
  23. 87
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/remarks.txt
  24. 64
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileDto.java
  25. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileexamineFeign.java
  26. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileexamineFeignFallback.java
  27. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultService.java
  28. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineMapper.xml
  29. 14
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineRest.java
  30. 57
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineService.java
  31. 20
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java
  32. 10
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeign.java
  33. 5
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java
  34. 29
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/LoanPreloansQuery.java
  35. 40
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/LoanPreloansVo.java
  36. 10
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/base/common/CommonFeign.java
  37. 73
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineDetailsVo.java
  38. 64
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineDto.java
  39. 76
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineFeign.java
  40. 70
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineFeignFallback.java
  41. 58
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineQuery.java
  42. 65
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineVo.java
  43. 11
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java
  44. 34
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java
  45. 10
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/base/common/CommonRest.java
  46. 57
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/base/common/CommonService.java
  47. 6
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/creditreview/CreditReviewService.java
  48. 78
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/fileexamine/FileexamineRest.java
  49. 107
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/fileexamine/FileexamineService.java

156
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java

@ -2168,7 +2168,29 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
//生成出门证文件名
String pdfName = "销售出库单_" + dateStr + seconds + ".pdf";
WordUtils.doc2pdf(wordPath, targetPath, pdfName, "");
pdfPath.setPdfPath("/template/" + dateStr + "/" + pdfName);
List<File> filesList = new ArrayList<>();
File xsckdFile = new File(docPdfComponent.getUploadTemplateUrl() + dateStr + "/" + pdfName);
filesList.add(xsckdFile);
//生成销售订单审批
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(baseVehicleOutApply.getContractNo()).getData();
String xsddspUrl = busSalesOrderFeign.createPdf(busSalesOrder.getSid(), "").getData();
xsddspUrl = xsddspUrl.replace("template/", "");
File xsddspFile = new File(docPdfComponent.getUploadTemplateUrl() + xsddspUrl);
filesList.add(xsddspFile);
//生成金融报价单
String cksqSid = busDeliveredApplyDetailsFeign.fetchByVehSid(baseVehicleOut1.getVinSid()).getData();
if (StringUtils.isNotBlank(cksqSid)) {
String jrbjdUrl = createjrbjdPdfHB(cksqSid, baseVehicleOut1.getVinSid());
File jrbjdFile = new File(docPdfComponent.getUploadTemplateUrl() + jrbjdUrl);
filesList.add(jrbjdFile);
}
String hbName = "销售出库单_金融报价单_销售订单审批" + ".pdf";
try {
File allFile = WordConvertUtils.mulFile2One(filesList, docPdfComponent.getUploadTemplateUrl() + dateStr + "/" + hbName);
} catch (Exception e) {
e.printStackTrace();
}
pdfPath.setPdfPath("/template/" + dateStr + "/" + hbName);
return pdfPath;
}
@ -2420,7 +2442,11 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
dataMap.put("szTwoPurUnit", "");
dataMap.put("remarks", baseQuotationVo.getRemarks());
//金融方案
dataMap.put("isPack", baseJRFAVo.getIsPack());
if ("1".equals(baseJRFAVo.getIsPack())) {
dataMap.put("isPack", "是");
} else {
dataMap.put("isPack", "否");
}
dataMap.put("policyName", baseJRFAVo.getPolicyName());
dataMap.put("financProject", baseJRFAVo.getFinancProject());
dataMap.put("loanTotal", baseJRFAVo.getLoanTotal());
@ -2503,4 +2529,130 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
pdfPath.setPdfPath("/template/" + dateStr + "/" + typeName);
return pdfPath;
}
public String createjrbjdPdfHB(String sid, String vehSid) {
BaseQuotationVo baseQuotationVo = selectQuotation(sid).getData();
BaseJRFAVo baseJRFAVo = baseQuotationVo.getBaseJRFAVo();
//查询车辆信息
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(vehSid);
//查询出库申请
BusDeliveredApply busDeliveredApply = busDeliveredApplyFeign.fetchBySid(sid).getData();
//销售订单
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(busDeliveredApply.getContractNo()).getData();
Map<String, Object> dataMap = new HashMap<>();
dataMap.put("saleDeptName", baseQuotationVo.getSaleDeptName());
dataMap.put("staffName", baseQuotationVo.getStaffName());
dataMap.put("loanContractNo", baseQuotationVo.getLoanContractNo());
//客户信息
dataMap.put("loanBorrName", baseQuotationVo.getLoanBorrName());
dataMap.put("vinNo", baseVehicle.getVinNo());
dataMap.put("mobile", baseQuotationVo.getMobile());
dataMap.put("address", baseQuotationVo.getAddress());
dataMap.put("affiliatedCompany", baseQuotationVo.getAffiliatedCompany());
//车型及价格
dataMap.put("modelName", baseQuotationVo.getModelName());
//查询挂车信息
List<BaseTrailerVo> baseTrailerVos = baseTrailerService.fetchAllByVehSid(vehSid);
if (baseTrailerVos.size() == 1) {
BaseTrailerVo baseTrailerVo = baseTrailerVos.get(0);
dataMap.put("gcOneModel", baseTrailerVo.getTrailerModel());
dataMap.put("gcOnePurUnit", "");
} else if (baseTrailerVos.size() > 1) {
BaseTrailerVo baseTrailerVo1 = baseTrailerVos.get(0);
dataMap.put("gcOneModel", baseTrailerVo1.getTrailerModel());
dataMap.put("gcOnePurUnit", "");
BaseTrailerVo baseTrailerVo2 = baseTrailerVos.get(1);
dataMap.put("gcTwoModel", baseTrailerVo2.getTrailerModel());
dataMap.put("gcTwoPurUnit", "");
}
//查询上装信息
BaseVehinstallDetailsVo baseVehinstallDetailsVo = baseVehinstallService.fetchByVinNoAndOrgSid(baseVehicle.getVinNo(), busDeliveredApply.getUseOrgSid());
if (baseVehinstallDetailsVo != null) {
BusSalesOrderMakeup busSalesOrderMakeup = busSalesOrderMakeupFeign.selectTop(baseVehinstallDetailsVo.getSid(), busSalesOrder.getSid()).getData();
if (busSalesOrderMakeup != null) {
dataMap.put("szOneName", busSalesOrderMakeup.getTopName());
dataMap.put("szOnePurUnit", busSalesOrderMakeup.getRefitFactory());
}
}
dataMap.put("szTwoName", "");
dataMap.put("szTwoPurUnit", "");
dataMap.put("remarks", baseQuotationVo.getRemarks());
//金融方案
if ("1".equals(baseJRFAVo.getIsPack())) {
dataMap.put("isPack", "是");
} else {
dataMap.put("isPack", "否");
}
dataMap.put("policyName", baseJRFAVo.getPolicyName());
dataMap.put("financProject", baseJRFAVo.getFinancProject());
dataMap.put("loanTotal", baseJRFAVo.getLoanTotal());
dataMap.put("sfbl", baseJRFAVo.getDownPayRatio());
dataMap.put("sfje", baseJRFAVo.getDownPayAmount());
dataMap.put("cpdkje", baseJRFAVo.getLoanAmount());
dataMap.put("cpqs", baseJRFAVo.getLoanPeriod());
dataMap.put("dkbzjbl", baseJRFAVo.getBondRatio());
dataMap.put("dkbzj", baseJRFAVo.getBondAmount());
dataMap.put("cjtx", baseJRFAVo.getFactoryDiscount());
dataMap.put("txyt", baseJRFAVo.getFactoryDiscountUse());
dataMap.put("nll", baseJRFAVo.getPolicyYearRatio());
dataMap.put("yhje", baseJRFAVo.getLoanPayMoney());
dataMap.put("lxze", baseJRFAVo.getLoanInterest());
dataMap.put("txdck", baseJRFAVo.getDiscountCar());
//其他融
dataMap.put("otherPolicyState", baseJRFAVo.isOtherPolicyState());
dataMap.put("otherPolicyName", baseJRFAVo.getOtherPolicyName());
dataMap.put("qtrdkje", baseJRFAVo.getOtherPolicyAmount());
dataMap.put("qtrqs", baseJRFAVo.getOtherPolicyPeriod());
dataMap.put("qtrnll", baseJRFAVo.getOtherPolicyYearRatio());
dataMap.put("qtryhje", baseJRFAVo.getOtherPolicyMonthlyRepay());
dataMap.put("otherPolicyInterest", baseJRFAVo.getOtherPolicyInterest());
//方案汇总
dataMap.put("loanDownPay", baseJRFAVo.getLoanDownPay());
dataMap.put("downPayAmountsRatio", baseJRFAVo.getDownPayAmountsRatio());
dataMap.put("loanAmountTotal", baseJRFAVo.getLoanAmountTotal());
dataMap.put("period", baseJRFAVo.getPeriod());
dataMap.put("monthlyRepay", baseJRFAVo.getMonthlyRepay());
dataMap.put("interest", baseJRFAVo.getInterest());
dataMap.put("returnTime", baseJRFAVo.getReturnTime());
//应收明细
dataMap.put("downPayAmounts", baseJRFAVo.getDownPayAmounts());
dataMap.put("bondAmounts", baseJRFAVo.getBondAmounts());
dataMap.put("depositPremium", baseJRFAVo.getDepositPremium());
dataMap.put("depositSettle", baseJRFAVo.getDepositSettle());
dataMap.put("serviceAmount", baseJRFAVo.getServiceAmount());
dataMap.put("proxyAccidentPremium", baseJRFAVo.getProxyAccidentPremium());
dataMap.put("registerAmount", baseJRFAVo.getRegisterAmount());
dataMap.put("operationAmount", baseJRFAVo.getOperationAmount());
dataMap.put("vehOtherPrice", baseJRFAVo.getVehOtherPrice());
dataMap.put("otherAmount", baseJRFAVo.getOtherAmount());
dataMap.put("otherAmountRemark", baseJRFAVo.getOtherAmountRemark());
dataMap.put("dealWay", baseJRFAVo.getDealWay());
dataMap.put("proxyTotal", baseJRFAVo.getProxyTotal());
dataMap.put("proxyPremium", baseJRFAVo.getProxyPremium());
dataMap.put("proxyPurchasetax", baseJRFAVo.getProxyPurchasetax());
dataMap.put("receivableTotal", baseJRFAVo.getReceivableTotal());
dataMap.put("offsetTotal", baseJRFAVo.getOffsetTotal());
dataMap.put("offsetPremium", baseJRFAVo.getOffsetPremium());
dataMap.put("offsetPurchasetax", baseJRFAVo.getOffsetPurchasetax());
dataMap.put("realTotal", baseJRFAVo.getRealTotal());
dataMap.put("vehTotalPrice", baseJRFAVo.getVehTotalPrice());
dataMap.put("nominalPrice", baseJRFAVo.getNominalPrice());
//获取模板
//模板路径
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, "jrbjd", sourcePath, targetPath, typeName);
//新生成的word路径
String wordPath = targetPath + "\\" + typeName;
//生成出门证文件名
String pdfName = "金融报价单_" + dateStr + seconds + ".pdf";
WordUtils.doc2pdf(wordPath, targetPath, pdfName, "");
return dateStr + "/" + pdfName;
}
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapplydetails/BusDeliveredApplyDetailsFeign.java

@ -85,4 +85,9 @@ public interface BusDeliveredApplyDetailsFeign {
@PostMapping("/selectByApplySid")
@ResponseBody
ResultBean<List<BusDeliveredApplyDetails>> selectByApplySid(@RequestParam("sid") String sid);
@ApiOperation("查询出库申请单sid")
@PostMapping("/fetchByVehSid")
@ResponseBody
ResultBean<String> fetchByVehSid(@RequestParam("vinSid") String vinSid);
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapplydetails/BusDeliveredApplyDetailsFeignFallback.java

@ -74,4 +74,9 @@ public class BusDeliveredApplyDetailsFeignFallback implements BusDeliveredApplyD
public ResultBean<List<BusDeliveredApplyDetails>> selectByApplySid(String sid) {
return null;
}
@Override
public ResultBean<String> fetchByVehSid(String vinSid) {
return null;
}
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeign.java

@ -99,4 +99,9 @@ public interface BusSalesOrderLoancontractFeign {
@PostMapping("/pushLoanOrder")
@ResponseBody
ResultBean pushLoanOrder(@RequestBody LoanContractPush loanContractPush);
@ApiOperation("推送融资放款的其他应收单应收")
@PostMapping("/pushOtherReceivable")
@ResponseBody
ResultBean pushOtherReceivable(@RequestBody LoanContractPush loanContractPush);
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeignFallback.java

@ -94,4 +94,9 @@ public class BusSalesOrderLoancontractFeignFallback implements BusSalesOrderLoan
public ResultBean pushLoanOrder(LoanContractPush loanContractPush) {
return null;
}
@Override
public ResultBean pushOtherReceivable(LoanContractPush loanContractPush) {
return null;
}
}

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsMapper.java

@ -94,4 +94,6 @@ public interface BusDeliveredApplyDetailsMapper extends BaseMapper<BusDeliveredA
List<BusDeliveredApplyDetails> selectByApplySid(String outboundSid);
List<String> selectVinSidByApplySid(String sid);
String fetchByVehSid(String vinSid);
}

9
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsMapper.xml

@ -75,4 +75,13 @@
left join bus_sales_order bo on bo.sid = bv.salesOrderSid
where bd.applySid = #{sid} and bo.contractNo = ba.contractNo
</select>
<select id="fetchByVehSid" resultType="java.lang.String">
SELECT ba.sid
FROM bus_delivered_apply ba
JOIN bus_delivered_apply_details bd
ON ba.sid = bd.applySid
WHERE bd.vinSid = #{vinSid}
AND ba.nodeState = '已办结'
</select>
</mapper>

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsRest.java

@ -97,4 +97,9 @@ public class BusDeliveredApplyDetailsRest implements BusDeliveredApplyDetailsFei
List<BusDeliveredApplyDetails> busDeliveredApplyDetails = busDeliveredApplyDetailsService.selectByApplySid(sid);
return rb.success().setData(busDeliveredApplyDetails);
}
@Override
public ResultBean<String> fetchByVehSid(String vinSid) {
return busDeliveredApplyDetailsService.fetchByVehSid(vinSid);
}
}

8
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapplydetails/BusDeliveredApplyDetailsService.java

@ -46,9 +46,11 @@ import com.yxt.anrui.buscenter.biz.busdeliveredusemessage.BusDeliveredUseMessage
import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.apache.poi.util.StringUtil;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -214,4 +216,10 @@ public class BusDeliveredApplyDetailsService extends MybatisBaseService<BusDeliv
public List<String> selectVinSidByApplySid(String sid) {
return baseMapper.selectVinSidByApplySid(sid);
}
public ResultBean<String> fetchByVehSid(String vinSid) {
ResultBean rb = ResultBean.fireFail();
String cksqSid = baseMapper.fetchByVehSid(vinSid);
return rb.success().setData(cksqSid);
}
}

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractRest.java

@ -123,4 +123,9 @@ public class BusSalesOrderLoancontractRest implements BusSalesOrderLoancontractF
public ResultBean pushLoanOrder(LoanContractPush loanContractPush) {
return busSalesOrderLoancontractService.pushLoanOrder(loanContractPush);
}
@Override
public ResultBean pushOtherReceivable(LoanContractPush loanContractPush) {
return busSalesOrderLoancontractService.pushOtherReceivable(loanContractPush);
}
}

171
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java

@ -26,16 +26,29 @@
package com.yxt.anrui.buscenter.biz.bussalesorderloancontract;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.*;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService;
import com.yxt.anrui.buscenter.biz.bussalesorderborrower.BusSalesOrderBorrowerService;
import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.UnCollectionDto;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CapitalCreditResult;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CwSystemYT;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter;
@ -44,6 +57,8 @@ import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.PushVo;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetailFeign;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -55,7 +70,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@ -83,9 +100,19 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale
@Autowired
private LoanSolutionsFeign loanSolutionsFeign;
@Autowired
private LoanSolutionsDetailFeign loanSolutionsDetailFeign;
@Autowired
private BusSalesOrderService busSalesOrderService;
@Autowired
private FinUncollectedReceivablesDetailedFeign finUncollectedDetailedFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private FinKingDeeFeign finKingDeeFeign;
@Autowired
private BusSalesOrderBorrowerService busSalesOrderBorrowerService;
@Autowired
private BasePurchaseSystemFeign basePurchaseSystemFeign;
private QueryWrapper<BusSalesOrderLoancontract> createQueryWrapper(BusSalesOrderLoancontractQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -260,14 +287,14 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale
BusSalesOrder busSalesOrder = busSalesOrderService.fetchBySid(saleOrderSid);
//根据消贷合同查询贷款人
BusSalesOrderLoancontract busSalesOrderLoancontract = fetchBySid(loanContractSid);
if(busSalesOrderLoancontract != null){
if (busSalesOrderLoancontract != null) {
//根据销售订单的贷款人sid查询车辆表中的数据
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByBorrowSid(busSalesOrderLoancontract.getBorrowerSid());
//这是生成业务系统融资放款应收的逻辑:
// 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中,
//计算融资放款的金额以及厂家贴息金额
ResultBean<PushVo> resultBean = loanSolutionsFeign.selectMoney(saleOrderSid);
if(resultBean.getData() != null){
if (resultBean.getData() != null) {
PushVo pushVo = resultBean.getData();
UnCollectionDto unCollectionDto = new UnCollectionDto();
unCollectionDto.setContractNo(busSalesOrder.getContractNo());
@ -309,4 +336,144 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale
}
return rb.success();
}
public ResultBean pushOtherReceivable(LoanContractPush loanContractPush) {
ResultBean rb = ResultBean.fireFail();
String saleOrderSid = loanContractPush.getSaleOrderSid();
// String loanContractSid = loanContractPush.getLoanContractSid();
BusSalesOrder salesOrder = busSalesOrderService.fetchBySid(saleOrderSid);
if (null != salesOrder) {
BusSalesOrderBorrowerDetailsVo borrowerDetailsVo = busSalesOrderBorrowerService.fetchDetailsByOrderSid(saleOrderSid).getData();
if (null != borrowerDetailsVo) {
//-----------获取其他应收单对象----------------
CapitalCreditResult creditResult = new CapitalCreditResult();
//根据销售订单的贷款人sid查询车辆表中的数据
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByBorrowSid(borrowerDetailsVo.getSid());
if (null != busSalesOrderVehicle) {
String customerNumber = "";
//判断财务系统是否有客户
Boolean aBoolean = finKingDeeFeign.customerExistState(busSalesOrderVehicle.getTemporaryNo()).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 (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) {
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getLinkNo());
} else {
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo());
}
bdCustomers.add(bdCustomer);
ResultBean<String> resultBean = finKingDeeFeign.draftBdCustomers(bdCustomers);
if (resultBean.getSuccess()) {
customerNumber = bdCustomer.getFNumber();
}
} else {
customerNumber = busSalesOrderVehicle.getTemporaryNo();
}
creditResult.setCommUnit(customerNumber);
SysOrganizationVo sysOrganizationVo1 = sysOrganizationFeign.fetchBySid(salesOrder.getUseOrgSid()).getData();
creditResult.setCollectionOrg(sysOrganizationVo1.getOrgCode());
creditResult.setBussDate(DateUtil.formatDate(new Date()));
List<CapitalCreditResult.CapitalCreditResultDetailDto> collectionDetailDtoListOne = new ArrayList<>();
SysOrganizationVo sysOrganizationVo2 = sysOrganizationFeign.fetchBySid(salesOrder.getOrgSid()).getData();
//这是生成业务系统融资放款应收的逻辑:
// 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中,
//计算融资放款的金额以及厂家贴息金额
ResultBean<PushVo> resultBean = loanSolutionsFeign.selectMoney(saleOrderSid);
if (null != resultBean.getData()) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney("-" + resultBean.getData().getMoney());
creditResultDetailDto.setUseTo(CwSystemYT.RONGZI_FANGKUAN.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
SolutionsDetailsVo solutions = loanSolutionsFeign.selectDetails(saleOrderSid).getData();
if (null != solutions) {
//贷款保证金
if (StringUtils.isNotBlank(solutions.getBondAmounts()) && !("0").equals(solutions.getBondAmounts())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getBondAmounts());
creditResultDetailDto.setUseTo(CwSystemYT.BOND_AMOUNTS.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//保险保证金
if (StringUtils.isNotBlank(solutions.getDepositPremium()) && !("0").equals(solutions.getDepositPremium())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getDepositPremium());
creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_PREMIUM.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//落户保证金
if (StringUtils.isNotBlank(solutions.getDepositSettle()) && !("0").equals(solutions.getDepositSettle())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getDepositSettle());
creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_SETTLE.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//服务费
if (StringUtils.isNotBlank(solutions.getServiceAmount()) && !("0").equals(solutions.getServiceAmount())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setUseTo(CwSystemYT.SERVICE_AMOUNT_DANBAO.getType());
creditResultDetailDto.setExTaxMoney(solutions.getServiceAmount());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//代收意外险
if (StringUtils.isNotBlank(solutions.getProxyAccidentPremium()) && !("0").equals(solutions.getProxyAccidentPremium())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setUseTo(CwSystemYT.PROXY_ACCIDENT_PREMIUM.getType());
creditResultDetailDto.setExTaxMoney(solutions.getProxyAccidentPremium());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//上牌费、运管费
if ((StringUtils.isNotBlank(solutions.getRegisterAmount()) && !("0").equals(solutions.getRegisterAmount())) ||
(StringUtils.isNotBlank(solutions.getOperationAmount()) && !("0").equals(solutions.getOperationAmount()))) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
BigDecimal registerAmount = new BigDecimal(solutions.getRegisterAmount());
BigDecimal opertionAmount = new BigDecimal(solutions.getOperationAmount());
BigDecimal add = registerAmount.add(opertionAmount);
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setUseTo(CwSystemYT.SHANGPAI_YUNGUAN.getType());
creditResultDetailDto.setExTaxMoney(add.toString());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//其它费用
if (StringUtils.isNotBlank(solutions.getOtherAmount()) && !("0").equals(solutions.getOtherAmount())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getOtherAmount());
creditResultDetailDto.setUseTo(CwSystemYT.OTHER_AMOUNT.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//补车价
if (StringUtils.isNotBlank(solutions.getVehOtherPrice()) && !("0").equals(solutions.getVehOtherPrice())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getVehOtherPrice());
creditResultDetailDto.setUseTo(CwSystemYT.VEH_OTHER_PRICE.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
//留购价
if (StringUtils.isNotBlank(solutions.getNominalPrice()) && !("0").equals(solutions.getNominalPrice())) {
CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto();
creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode());
creditResultDetailDto.setExTaxMoney(solutions.getNominalPrice());
creditResultDetailDto.setUseTo(CwSystemYT.NOMINAL_PRICE.getType());
collectionDetailDtoListOne.add(creditResultDetailDto);
}
}
creditResult.setResultDetails(collectionDetailDtoListOne);
finKingDeeFeign.pushOtherReceivableBill(creditResult);
}
}
}
return rb.success();
}
}

7
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java

@ -11,6 +11,7 @@ import com.yxt.anrui.fin.api.kingdee.bdempinfo.BDEmpinfo;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CapitalCreditResult;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.cnrecpaypurpose.CNRecpaypurpose;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
@ -66,6 +67,12 @@ public interface FinKingDeeFeign {
@ResponseBody
ResultBean<String> draftOtherReceivableBill(@RequestBody @Valid OtherReceivable otherReceivable);
@ApiOperation("暂存其他应收单的接口(资方信审终审通过后推送)")
@PostMapping("/pushOtherReceivableBill")
@ResponseBody
ResultBean<String> pushOtherReceivableBill(@RequestBody @Valid CapitalCreditResult creditResult);
@ApiOperation("暂存付款单的接口")
@PostMapping("/draftArReceivebill")
@ResponseBody

6
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java

@ -11,6 +11,7 @@ import com.yxt.anrui.fin.api.kingdee.bdempinfo.BDEmpinfo;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CapitalCreditResult;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.cnrecpaypurpose.CNRecpaypurpose;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
@ -42,6 +43,11 @@ implements FinKingDeeFeign{
return null;
}
@Override
public ResultBean<String> pushOtherReceivableBill(CapitalCreditResult creditResult) {
return null;
}
@Override
public ResultBean<String> draftArReceivebill(ARReceivebill arReceivebill) {
return null;

47
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/capitalcreditresult/CapitalCreditResult.java

@ -0,0 +1,47 @@
package com.yxt.anrui.fin.api.kingdee.capitalcreditresult;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/9/12 18:13
*/
@Data
public class CapitalCreditResult {
@ApiModelProperty("单据编号")
public String billNo;
@ApiModelProperty("单据类型")
public String billType = "QTYSD01_SYS";
@ApiModelProperty("往来单位类型")
public String commUnitType = "BD_Customer";
@ApiModelProperty("往来单位")
public String commUnit;
@ApiModelProperty("收款组织")
public String collectionOrg;
@ApiModelProperty("币别")
public String currency = "PRE001";
@ApiModelProperty("业务日期")
public String bussDate;
@ApiModelProperty("收款明细")
public List<CapitalCreditResult.CapitalCreditResultDetailDto> resultDetails;
@Data
public static class CapitalCreditResultDetailDto implements Dto {
@ApiModelProperty("承担部门")
public String dearDept;
@ApiModelProperty("发票类型")
public String invoiceType;
@ApiModelProperty("不含税金额")
public String exTaxMoney;
@ApiModelProperty("用途")
public String useTo;
}
}

52
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/capitalcreditresult/CwSystemYT.java

@ -0,0 +1,52 @@
package com.yxt.anrui.fin.api.kingdee.capitalcreditresult;
/**
* @author Administrator
* @description
* @date 2023/9/13 17:00
*/
public enum CwSystemYT {
BOND_AMOUNTS("YT001", "贷款保证金"),
DEPOSIT_SETTLE("YT002", "落户保证金"),
DEPOSIT_PREMIUM("YT003", "保险保证金"),
SHANGPAI_YUNGUAN("YT004", "上牌费、运管费"),
PROXY_ACCIDENT_PREMIUM("YT005", "代收意外险"),
SERVICE_AMOUNT_DANBAO("YT006", "服务费(担保/非担保业务)"),
VEH_OTHER_PRICE("YT007", "补车价"),
OTHER_AMOUNT("YT009", "其他费用"),
RONGZI_FANGKUAN("YT010", "融资放款"),
DIANKUAN("YT011", "垫款"),
DIANKUAN_LIXI("YT012", "垫款利息"),
NOMINAL_PRICE("YT013", "留购价"),
PEIZHI_SHOUXUFEI("YT014", "加装配置手续费"),
FANLI_DICHEKUAN("YT015", "返利抵车款"),
SERVICE_AMOUNT_SANFANG("YT016", "服务费(三方金融)"),
SANFANG_TIEXI_DIECHEKUAN("YT017", "三方金融厂家贴息抵车款"),
TZSQ("YT018", "款项结转-调账申请");
/**
* 附件类型
*/
private final String type;
/**
* 代号
*/
private final String mark;
CwSystemYT(String type, String mark) {
this.type = type;
this.mark = mark;
}
public String getType() {
return type;
}
public String getMark() {
return mark;
}
}

14
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -13,6 +13,7 @@ import com.yxt.anrui.fin.api.kingdee.bdempinfo.BDEmpinfo;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CapitalCreditResult;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.cnrecpaypurpose.CNRecpaypurpose;
import com.yxt.anrui.fin.api.kingdee.kingdeeUtils.KingDeeOrgAndDeptCode;
@ -35,6 +36,7 @@ import com.yxt.anrui.fin.biz.kingdee.bdempinfo.BDEmpinfoService;
import com.yxt.anrui.fin.biz.kingdee.bdmaterial.BdMaterialService;
import com.yxt.anrui.fin.biz.kingdee.bdstock.BDStockService;
import com.yxt.anrui.fin.biz.kingdee.bdsupplier.BdSupplierService;
import com.yxt.anrui.fin.biz.kingdee.capitalcreditresult.OtherReceivableBillCreditResultService;
import com.yxt.anrui.fin.biz.kingdee.cnbankcnt.CNBankcntService;
import com.yxt.anrui.fin.biz.kingdee.cnrecpaypurpose.CNRecpaypurposeService;
import com.yxt.anrui.fin.biz.kingdee.orgorganizations.OrgOrganizationsService;
@ -168,6 +170,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@Autowired
private OtherReceivableBillService otherReceivableBillService;
/**
* 暂存其他应收单的接口(资方信审终审通过后推送)
*/
@Autowired
private OtherReceivableBillCreditResultService creditResultService;
/**
* 销售退货单
*/
@ -198,6 +206,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
return otherReceivableBillService.otherReceivableBillService(otherReceivable);
}
@Override
public ResultBean<String> pushOtherReceivableBill(CapitalCreditResult creditResult) {
log.info("FinKingDeeFeignRest-pushOtherReceivableBill:{}", JSONObject.toJSONString(creditResult));
return creditResultService.pushOtherReceivableBill(creditResult);
}
@Override
public ResultBean<String> draftSalesReturnOrders(SalesReturn salesReturn) {
log.info("FinKingDeeFeignRest-draftSalesReturnOrders:{}", JSONObject.toJSONString(salesReturn));

59
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultCastToKingDeeBillFields.java

@ -0,0 +1,59 @@
package com.yxt.anrui.fin.biz.kingdee.capitalcreditresult;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 封装转换的类
*/
public class OtherReceivableBillCreditResultCastToKingDeeBillFields {
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @param vehicleList
* @return
*/
public static String getKingDeeData(Map<String,String> map_fEntityModel_,List<Map<String,String>> vehicleList){
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_model.json");
//模板字符创转json
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField);
fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField);
List<JSONObject> list_fEntity_=new ArrayList<>();
//对模板字段赋值 根据传递进来的map数据的集合进行赋值
for(int i=0;i<vehicleList.size();i++){
String fEntity_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_FEntity.json");
Map<String,String> params=vehicleList.get(i);
Map<String,String> map_fEntity_=new HashMap<>();
for (Map.Entry<String, String> entry : params.entrySet()) {
map_fEntity_.put(entry.getKey(),entry.getValue());
}
fEntity_ =KingDeeUtils.replaceTemplateParams(fEntity_, map_fEntity_);
list_fEntity_.add(JSONObject.parseObject(fEntity_,Feature.OrderedField));
}
jsonFEntityModel_.put("FEntity", JSONArray.parseArray(JSON.toJSONString(list_fEntity_)));
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

107
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java

@ -0,0 +1,107 @@
package com.yxt.anrui.fin.biz.kingdee.capitalcreditresult;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.capitalcreditresult.CapitalCreditResult;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class OtherReceivableBillCreditResultService extends FinKingDeeService {
/**
* 生成的其他应收单的数据推送到金蝶的平台中
*
* @param creditResult
* @return
*/
public ResultBean pushOtherReceivableBill(CapitalCreditResult creditResult) {
ResultBean rb = ResultBean.fireFail();
//业务表的主表数据集合
Map<String, String> map_fEntityModel_ = new HashMap<>();
//物料的数组集合
//单据编号
// if (creditResult.getBillNo() == null) {
// return rb.setMsg("单据编号不能为空");
// }
// map_fEntityModel_.put("FBillNo", creditResult.getBillNo());
//业务日期
if (creditResult.getBussDate() == null) {
return rb.setMsg("业务日期不能为空");
}
map_fEntityModel_.put("FDATE", creditResult.getBussDate());
//到期日期
map_fEntityModel_.put("FENDDATE_H", creditResult.getBussDate());
//客户
if (creditResult.getCommUnit() == null) {
return rb.setMsg("客户编码不能为空");
}
map_fEntityModel_.put("FCONTACTUNIT", creditResult.getCommUnit());
//收款组织
if (creditResult.getCollectionOrg() == null) {
return rb.setMsg("收款组织不能为空");
}
map_fEntityModel_.put("FPAYORGID", creditResult.getCollectionOrg());
//收款组织
map_fEntityModel_.put("FSETTLEORGID", creditResult.getCollectionOrg());
//销售组织
map_fEntityModel_.put("FSALEORGID", creditResult.getCollectionOrg());
//销售部门
map_fEntityModel_.put("FSALEDEPTID", creditResult.getResultDetails().get(0).getDearDept());
//申请部门
map_fEntityModel_.put("FDEPARTMENTID", creditResult.getResultDetails().get(0).getDearDept());
List<CapitalCreditResult.CapitalCreditResultDetailDto> collectionDetails = creditResult.getResultDetails() == null ? new ArrayList<>() : creditResult.getResultDetails();
//准备 物料列表的数据
ResultBean<List<Map<String, String>>> vehicleListMap = createVehicleListsForReceivableBill(collectionDetails);
if (!vehicleListMap.getSuccess()) {
return rb.setMsg(vehicleListMap.getMsg());
}
String kingDeeData = OtherReceivableBillCreditResultCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_, vehicleListMap.getData());
try {
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.AR_OTHERRECEIVABLE.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
if (!resultBean1.getSuccess()) {
log.info("其他应收单保存失败!");
return rb.setMsg("其他应收单保存失败!");
}
log.info("其他应收单保存成功!");
// String submitKD = getSubmitKD(resultBean1.getData(),KingDeeBillId.AR_OTHERRECEIVABLE.getID());
// ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.AR_OTHERRECEIVABLE.getID(), submitKD, KingDeeBillUrl.SUBMIT_URL.getURL());
// if(!resultBean2.getSuccess()){
// log.info("其他应收单提交失败!");
// return rb.setMsg("其他应收单提交失败!");
// }
// log.info("其他应收单提交成功!");
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
public ResultBean<List<Map<String, String>>> createVehicleListsForReceivableBill(List<CapitalCreditResult.CapitalCreditResultDetailDto> collectionDetails) {
ResultBean<List<Map<String, String>>> rb = ResultBean.fireFail();
List<Map<String, String>> collectionDetailMap = new ArrayList<>();
for (int i = 0; i < collectionDetails.size(); i++) {
CapitalCreditResult.CapitalCreditResultDetailDto c = collectionDetails.get(i);
Map<String, String> m = new HashMap<>();
if (StringUtils.isBlank(c.getDearDept())) {
return rb.setMsg("承担部门不能为空");
}
if (StringUtils.isBlank(c.getExTaxMoney())) {
return rb.setMsg("不含税金额不能为空");
}
m.put("FCOSTDEPARTMENTID", c.getDearDept());
m.put("FNOTAXAMOUNTFOR", c.getExTaxMoney());
m.put("F_PAEZ_Assistant1", c.getUseTo());
collectionDetailMap.add(m);
}
return rb.success().setData(collectionDetailMap);
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data.json

@ -0,0 +1,4 @@
{
"formId": "AR_OtherRecAble",
"data": "@KD_data"
}

33
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_FEntity.json

@ -0,0 +1,33 @@
{
"FEntryID": "0",
"FCOSTID": {
"FNumber": ""
},
"FCOSTDEPARTMENTID": {
"FNumber": "@KD_FCOSTDEPARTMENTID"
},
"FINVOICETYPE": "",
"FNOTAXAMOUNTFOR": "@KD_FNOTAXAMOUNTFOR",
"FTAXAMOUNTFOR": "0",
"FAMOUNTFOR_D": "0",
"F_PAEZ_Assistant1": {
"FNumber": "@KD_F_PAEZ_Assistant1"
},
"F_PAEZ_Amount": "0",
"FNOTAXAMOUNT_D": "0",
"FTAXAMOUNT_D": "0",
"F_PMZC_Assistant": {
"FNumber": ""
},
"F_PMZC_Base": {
"FNUMBER": ""
},
"F_PMZC_Assistant2": {
"FNumber": ""
},
"FCOMMENT": "",
"FSourceBillNo": "",
"FCREATEINVOICE": "false",
"FIVAmountFor": "0",
"FEntryTaxRate": "0"
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {}
}

67
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/data_model.json

@ -0,0 +1,67 @@
{
"FID": "0",
"FBillTypeID": {
"FNUMBER": "QTYSD01_SYS"
},
"FBillNo": "",
"FDATE": "@KD_FDATE",
"FENDDATE_H": "@KD_FENDDATE_H",
"FISINIT": "false",
"FCONTACTUNITTYPE": "BD_Customer",
"FCONTACTUNIT": {
"FNumber": "@KD_FCONTACTUNIT"
},
"FAMOUNTFOR": "0",
"FCURRENCYID": {
"FNumber": "PRE001"
},
"FDEPARTMENTID": {
"FNumber": "@KD_FDEPARTMENTID"
},
"FSETTLEORGID": {
"FNumber": "@KD_FSETTLEORGID"
},
"FPAYORGID": {
"FNumber": "@KD_FPAYORGID"
},
"FSALEDEPTID": {
"FNumber": "@KD_FSALEDEPTID"
},
"FSALEORGID": {
"FNumber": "@KD_FSALEORGID"
},
"FSALEGROUPID": {
"FNumber": ""
},
"FSALEERID": {
"FNumber": ""
},
"FACCNTTIMEJUDGETIME": "1900-01-01",
"FSettleTypeID": {
"FNumber": ""
},
"FMAINBOOKSTDCURRID": {
"FNumber": "PRE001"
},
"FEXCHANGETYPE": {
"FNumber": "HLTX01_SYS"
},
"FExchangeRate": "1",
"FNOTAXAMOUNT": "0",
"FTAXAMOUNT": "0",
"FCancelStatus": "",
"FAR_OtherRemarks": "",
"FScanPoint": {
"FNUMBER": ""
},
"F_PAEZ_Base": {
"FNUMBER": ""
},
"F_PAEZ_Base1": {
"FNUMBER": ""
},
"F_PMZC_Assistant1": {
"FNumber": ""
},
"FEntity": []
}

87
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/remarks.txt

@ -0,0 +1,87 @@
请求参数说明:
formid:业务对象表单Id,字符串类型(必录)
data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
字段说明:
银行:F_PAEZ_Base
银行帐号:F_PAEZ_Base1
转出往来单位类型:FOUTCONTACTTYPE
转出往来单位:FOUTCONTACTID
项目类别:F_PMZC_Assistant1
备注:FCOMMENT
费用项目名称:FCOSTNAME
费用项目编码:FCOSTID
总金额:FAMOUNTFOR_D
备注:FAR_OtherRemarks
扫描点:FScanPoint
表头-付款申请关联金额:FAPPLYAMOUNT_H
销售组织:FSALEORGID
转销:FIsWriteOff
销售组:FSALEGROUPID
销售部门:FSALEDEPTID
收(退)款单关联金额本位币:FWRITTENOFFAMOUNT
销售员:FSALEERID
税率(%):FEntryTaxRate
已开票金额:FIVAmountFor
发票类型:FINVOICETYPE (必填项)
已生成发票:FCREATEINVOICE
利息:F_PAEZ_Amount
物流车辆:F_PMZC_Base
油卡号码:F_PMZC_Assistant2
用途:F_PAEZ_Assistant1 (必填项)
运输编号:F_PMZC_Assistant
税额:FTAXAMOUNTFOR
不含税金额本位币:FNOTAXAMOUNT_D
总金额本位币:FAMOUNT_D
不含税金额:FNOTAXAMOUNTFOR
税额本位币:FTAXAMOUNT_D
源单类型:FSOURCETYPE
源单编号:FSourceBillNo
费用承担部门:FCOSTDEPARTMENTID (必填项)
付款申请关联金额:FAPPLYAMOUNT
汇率类型:FEXCHANGETYPE (必填项)
汇率:FExchangeRate
收款条件:FPayConditon
本位币:FMAINBOOKSTDCURRID (必填项)
作废日期:FCancelDate
修改日期:FModifyDate
审核人:FAPPROVERID
创建日期:FCreateDate
作废状态:FCancelStatus (必填项)
单据类型:FBillTypeID (必填项)
业务日期:FDATE (必填项)
单据编号:FBillNo
单据状态:FDocumentStatus
到期日:FENDDATE_H
币别:FCURRENCYID (必填项)
结算组织:FSETTLEORGID (必填项)
往来单位:FCONTACTUNIT (必填项)
往来单位类型:FCONTACTUNITTYPE (必填项)
结算方式:FSettleTypeID
已收款核销金额:FWRITTENOFFAMOUNTFOR
来源系统:FSOURCESYSTEM
申请部门:FDEPARTMENTID
是否期初单据:FISINIT
税额本位币:FTAXAMOUNT
收款组织:FPAYORGID (必填项)
到期日计算日期:FACCNTTIMEJUDGETIME
不含税金额本位币:FNOTAXAMOUNT
修改人:FModifierId
创建人:FCreatorId
审核日期:FAPPROVEDATE
作废人:FCancellerId
总金额:FAMOUNTFOR
总金额本位币:FAMOUNT
表头基本 - 收款核销状态:FWRITTENOFFSTATUS
表头基本 - 收(退)款单的关联金额:FRelateHadPayAmount

64
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileDto.java

@ -0,0 +1,64 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.riskcenter.api.loanfileexamine;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineDto.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDto <br/>
* Description: 放款资料审核 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "放款资料审核 数据传输对象", description = "放款资料审核 数据传输对象")
public class LoanFileDto implements Dto {
private String sid;
@ApiModelProperty("银行卡")
private List<String> yhkImages = new ArrayList<>();
@ApiModelProperty("购置税发票")
private List<String> gzsfpImages = new ArrayList<>();
@ApiModelProperty("保险发票")
private List<String> bxfpImages = new ArrayList<>();
@ApiModelProperty("保单")
private List<String> bdImages = new ArrayList<>();
}

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileexamineFeign.java

@ -75,4 +75,9 @@ public interface LoanFileexamineFeign {
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<LoanFileexamineDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("移动端上传附件")
@PostMapping("/uploadFile")
@ResponseBody
public ResultBean uploadFile(@RequestBody LoanFileDto loanFileDto);
}

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfileexamine/LoanFileexamineFeignFallback.java

@ -69,4 +69,9 @@ public class LoanFileexamineFeignFallback implements LoanFileexamineFeign {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-riskcenter/loanfileexamine/fetchDetailsBySid无法访问");
}
@Override
public ResultBean uploadFile(LoanFileDto loanFileDto) {
return null;
}
}

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultService.java

@ -181,6 +181,8 @@ public class LoanCapitalCreditResultService extends MybatisBaseService<LoanCapit
loanContractPush.setLoanContractSid(loanCapitalCreditResult.getLoanContractSid());
loanContractPush.setSaleOrderSid(loanCapitalCreditResult.getSaleOrderSid());
ResultBean resultBean = busSalesOrderLoancontractFeign.pushLoanOrder(loanContractPush);
//资方信审终审通过后推送财务的融资放款及金融方案中各项费用其他应收单
ResultBean pushOtherReceivable = busSalesOrderLoancontractFeign.pushOtherReceivable(loanContractPush);
}
return rb.success();
}

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineMapper.xml

@ -10,7 +10,7 @@
bo.`orgName`,
bo.`staffName`,
lf.`bankStateValue`,
IF(lf.`zlState` = '0', '未齐全', '已齐全'),
IF(lf.`zlState` = 0, '未齐全', '已齐全') AS zlState,
bl.`loanContractNo`,
bl.`vehCount` AS num,
bl.`borrowerName`,

14
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineRest.java

@ -25,6 +25,7 @@
*********************************************************/
package com.yxt.anrui.riskcenter.biz.loanfileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -34,12 +35,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineQuery;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineVo;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDetailsVo;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDto;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeign;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
@ -97,4 +92,11 @@ public class LoanFileexamineRest implements LoanFileexamineFeign {
LoanFileexamineDetailsVo vo = loanFileexamineService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
@Override
public ResultBean uploadFile(LoanFileDto loanFileDto) {
ResultBean rb = ResultBean.fireFail();
loanFileexamineService.uploadFile(loanFileDto);
return rb.success();
}
}

57
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfileexamine/LoanFileexamineService.java

@ -43,6 +43,7 @@ import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum;
import com.yxt.anrui.riskcenter.api.loanfileexamine.*;
import com.yxt.anrui.riskcenter.api.loanhomevisitfileexamine.LoanHomevisitFileexamineVo;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanAttachTypeEnum;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanHomevisitInvestigateFileDetailsVo;
@ -56,11 +57,6 @@ import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineQuery;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineVo;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDetailsVo;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -342,10 +338,10 @@ public class LoanFileexamineService extends MybatisBaseService<LoanFileexamineMa
BusSalesOrderLoancontractDetailsVo busSalesOrderLoancontractDetailsVo = busSalesOrderLoancontractFeign.fetchDetailsBySid(entity.getLoanContractSid()).getData();
vo.setLoanContractNo(busSalesOrderLoancontractDetailsVo.getLoanContractNo());
vo.setBorrowerName(busSalesOrderLoancontractDetailsVo.getBorrowerName());
vo.setNum(busSalesOrderLoancontractDetailsVo.getVehCount());
BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(entity.getSaleOrderSid()).getData();
vo.setStaffName(busSalesOrder.getStaffName());
List<BusSalesOrderVehicle> busSalesOrderVehicles = busSalesOrderVehicleFeign.selectListByOrderSid(entity.getSaleOrderSid()).getData();
vo.setNum(busSalesOrderVehicles.size());
String vinNos = "";
for (BusSalesOrderVehicle busSalesOrderVehicle : busSalesOrderVehicles) {
vinNos = vinNos + busSalesOrderVehicle.getLinkNo() + ",";
@ -429,4 +425,53 @@ public class LoanFileexamineService extends MybatisBaseService<LoanFileexamineMa
vo.setZmfjImages(zmfjImages);
return vo;
}
public void uploadFile(LoanFileDto loanFileDto) {
String sid = loanFileDto.getSid();
List<String> yhkImages = loanFileDto.getYhkImages();
List<String> gzsfpImages = loanFileDto.getGzsfpImages();
List<String> bxfpImages = loanFileDto.getBxfpImages();
List<String> bdImages = loanFileDto.getBdImages();
loanHomevisitInvestigateFileService.delByMainSid(sid);
for (String yhkImage : yhkImages) {
LoanHomevisitInvestigateFileDto loanHomevisitInvestigateFileDto = new LoanHomevisitInvestigateFileDto();
loanHomevisitInvestigateFileDto.setMainSid(sid);
loanHomevisitInvestigateFileDto.setAttachType(LoanAttachTypeEnum.YHK.getAttachType());
if (yhkImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
yhkImage = yhkImage.replace(fileUploadComponent.getUrlPrefix(), "");
}
loanHomevisitInvestigateFileDto.setFileUrl(yhkImage);
loanHomevisitInvestigateFileService.saveOrUpdateDto(loanHomevisitInvestigateFileDto);
}
for (String gzsfpImage : gzsfpImages) {
LoanHomevisitInvestigateFileDto loanHomevisitInvestigateFileDto = new LoanHomevisitInvestigateFileDto();
loanHomevisitInvestigateFileDto.setMainSid(sid);
loanHomevisitInvestigateFileDto.setAttachType(LoanAttachTypeEnum.GZSFP.getAttachType());
if (gzsfpImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
gzsfpImage = gzsfpImage.replace(fileUploadComponent.getUrlPrefix(), "");
}
loanHomevisitInvestigateFileDto.setFileUrl(gzsfpImage);
loanHomevisitInvestigateFileService.saveOrUpdateDto(loanHomevisitInvestigateFileDto);
}
for (String bxfpImage : bxfpImages) {
LoanHomevisitInvestigateFileDto loanHomevisitInvestigateFileDto = new LoanHomevisitInvestigateFileDto();
loanHomevisitInvestigateFileDto.setMainSid(sid);
loanHomevisitInvestigateFileDto.setAttachType(LoanAttachTypeEnum.BXFP.getAttachType());
if (bxfpImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
bxfpImage = bxfpImage.replace(fileUploadComponent.getUrlPrefix(), "");
}
loanHomevisitInvestigateFileDto.setFileUrl(bxfpImage);
loanHomevisitInvestigateFileService.saveOrUpdateDto(loanHomevisitInvestigateFileDto);
}
for (String bdImage : bdImages) {
LoanHomevisitInvestigateFileDto loanHomevisitInvestigateFileDto = new LoanHomevisitInvestigateFileDto();
loanHomevisitInvestigateFileDto.setMainSid(sid);
loanHomevisitInvestigateFileDto.setAttachType(LoanAttachTypeEnum.BD.getAttachType());
if (bdImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
bdImage = bdImage.replace(fileUploadComponent.getUrlPrefix(), "");
}
loanHomevisitInvestigateFileDto.setFileUrl(bdImage);
loanHomevisitInvestigateFileService.saveOrUpdateDto(loanHomevisitInvestigateFileDto);
}
}
}

20
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java

@ -5,6 +5,8 @@ import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.LoanContractPush;
import com.yxt.anrui.riskcenter.api.loanfile.LoanFile;
import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum;
import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReview;
@ -17,6 +19,7 @@ import com.yxt.common.core.result.ResultBean;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.List;
@ -39,6 +42,8 @@ public class LoanNoGuaranteeCreditReviewService extends MybatisBaseService<LoanN
private LoanFileService loanFileService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private BusSalesOrderLoancontractFeign busSalesOrderLoancontractFeign;
public ResultBean<LoanNoGuaranteeCreditReviewDetailsVo> details(String salesOrderSid) {
ResultBean<LoanNoGuaranteeCreditReviewDetailsVo> rb = ResultBean.fireFail();
@ -89,7 +94,7 @@ public class LoanNoGuaranteeCreditReviewService extends MybatisBaseService<LoanN
return rb.success().setData(vo);
}
@Transactional(rollbackFor = Exception.class)
public ResultBean<String> saveReviewInfo(LoanNoGuaranteeCreditReviewDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String salesOrderSid = dto.getSalesOrderSid();
@ -131,6 +136,19 @@ public class LoanNoGuaranteeCreditReviewService extends MybatisBaseService<LoanN
if (!loanReviewFiles.isEmpty()) {
loanFileService.saveAll(sid, loanReviewFiles, LoanFileEnum.LOAN_REVIEW_FILES.getAttachType());
}
//推送其他应收单
LoanNoGuaranteeCreditReview creditReview = fetchBySid(sid);
if (null != creditReview) {
if (StringUtils.isNotBlank(creditReview.getCreditReview())) {
if ("通过".equals(creditReview.getCreditReview())) {
//资方信审终审通过后推送财务的融资放款及金融方案中各项费用其他应收单
LoanContractPush loanContractPush = new LoanContractPush();
loanContractPush.setSaleOrderSid(creditReview.getSalesOrderSid());
ResultBean pushOtherReceivable = busSalesOrderLoancontractFeign.pushOtherReceivable(loanContractPush);
}
}
}
}
return rb.success().setData(salesOrderSid);
}

10
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeign.java

@ -338,16 +338,20 @@ public interface AppBusSalesOrderFeign {
@ApiOperation("保存销售订单贷款人数量")
@PostMapping("/save/saleOrderInputLenderNum/{sid}/{num}")
@ResponseBody
ResultBean saleOrderInputLenderNum(@PathVariable("sid") String sid,@PathVariable("num")String num);
ResultBean saleOrderInputLenderNum(@PathVariable("sid") String sid, @PathVariable("num") String num);
@ApiOperation("保存销售订单贷款人自己")
@PostMapping("/save/saleOrderInputLenderOwn/{saleOrderSid}")
@ResponseBody
ResultBean saleOrderInputLenderOwn(@PathVariable("saleOrderSid")String saleOrderSid);
ResultBean saleOrderInputLenderOwn(@PathVariable("saleOrderSid") String saleOrderSid);
@ApiOperation("保存销售订单贷款人")
@PostMapping("/save/saleOrderInputLender/{saleOrderSid}/{sid}")
@ResponseBody
ResultBean<InputLenderVo> saleOrderInputLender(@PathVariable("saleOrderSid")String saleOrderSid,@PathVariable("sid")String sid);
ResultBean<InputLenderVo> saleOrderInputLender(@PathVariable("saleOrderSid") String saleOrderSid, @PathVariable("sid") String sid);
@ApiOperation("确定贷款人分页列表")
@PostMapping("/getPreLoanList")
@ResponseBody
ResultBean<PagerVo<LoanPreloansVo>> getPreLoanList(@RequestBody PagerQuery<LoanPreloansQuery> pagerQuery);
}

5
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java

@ -315,4 +315,9 @@ public class AppBusSalesOrderFeignFallback implements AppBusSalesOrderFeign {
public ResultBean<InputLenderVo> saleOrderInputLender(String saleOrderSid, String sid) {
return null;
}
@Override
public ResultBean<PagerVo<LoanPreloansVo>> getPreLoanList(PagerQuery<LoanPreloansQuery> pagerQuery) {
return null;
}
}

29
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/LoanPreloansQuery.java

@ -0,0 +1,29 @@
package com.yxt.anrui.terminal.api.autoservice.saleOrders;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2023/9/13
**/
@Data
public class LoanPreloansQuery implements Query {
private static final long serialVersionUID = 4677306476460284056L;
@ApiModelProperty("姓名")
private String custName;
@ApiModelProperty("身份证号码")
private String idCard;
@ApiModelProperty("手机号码")
private String phone;
@ApiModelProperty("用户sid,即销售专员的用户sid")
private String userSid;
@ApiModelProperty("移动端:姓名、身份证、手机号")
private String name;
@ApiModelProperty("销售订单sid")
private String orderSid;
}

40
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/LoanPreloansVo.java

@ -0,0 +1,40 @@
package com.yxt.anrui.terminal.api.autoservice.saleOrders;
import com.yxt.anrui.terminal.api.base.common.CarModelVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2023/9/13
**/
@Data
public class LoanPreloansVo implements Vo {
private static final long serialVersionUID = -6577382635622047300L;
@ApiModelProperty("客户sid")
private String custSid;
@ApiModelProperty("客户名称")
private String custName;
@ApiModelProperty("手机号码")
private String phone;
@ApiModelProperty("公司风控结果")
private String gsfkjg;
@ApiModelProperty("资方名称")
private String capitalName;
@ApiModelProperty("资方风控结果")
private String zffkjg;
@ApiModelProperty("担保人")
private String peoName;
@ApiModelProperty("申请日期")
private String createTime;
private String sid;
@ApiModelProperty("页面地址")
private CarModelVo pluginPage;
}

10
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/base/common/CommonFeign.java

@ -68,4 +68,14 @@ public interface CommonFeign {
@GetMapping("/getLoanSs")
ResultBean<CarModelVo> getLoanSs(@RequestParam("orderSid") String orderSid);
@ApiOperation(value = "信用审核新增页面")
@ResponseBody
@GetMapping("/getInsertPreloan")
ResultBean<CarModelVo> getInsertPreloan(@RequestParam("customerTypeKey") String customerTypeKey,@RequestParam("customerTypeValue")String customerTypeValue);
@ApiOperation(value = "信用审核详情页面")
@ResponseBody
@GetMapping("/getDetailsPreloan")
ResultBean<CarModelVo> getDetailsPreloan(@RequestParam("sid") String sid);
}

73
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineDetailsVo.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineVo.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineVo <br/>
* Description: 放款资料审核 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "放款资料审核 视图数据详情", description = "放款资料审核 视图数据详情")
public class FileexamineDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("消贷合同编号")
private String loanContractNo;
@ApiModelProperty("台数")
private Integer num;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("车架号拼接")
private String vinNo;
@ApiModelProperty("银行卡")
private List<String> yhkImages;
@ApiModelProperty("购置税发票")
private List<String> gzsfpImages;
@ApiModelProperty("保险发票")
private List<String> bxfpImages;
@ApiModelProperty("保单")
private List<String> bdImages;
}

64
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineDto.java

@ -0,0 +1,64 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineDto.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineDto <br/>
* Description: 放款资料审核 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "放款资料审核 数据传输对象", description = "放款资料审核 数据传输对象")
public class FileexamineDto implements Dto {
private String sid; // sid
@ApiModelProperty("银行卡")
private List<String> yhkImages = new ArrayList<>();
@ApiModelProperty("购置税发票")
private List<String> gzsfpImages = new ArrayList<>();
@ApiModelProperty("保险发票")
private List<String> bxfpImages = new ArrayList<>();
@ApiModelProperty("保单")
private List<String> bdImages = new ArrayList<>();
}

76
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineFeign.java

@ -0,0 +1,76 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineFeign.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeign <br/>
* Description: 放款资料审核. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "放款资料审核")
@FeignClient(
contextId = "terminal-Fileexamine",
name = "anrui-terminal",
path = "v1/loanfileexamine",
fallback = FileexamineFeignFallback.class)
public interface FileexamineFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<FileexamineVo>> listPage(@RequestBody PagerQuery<FileexamineQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody FileexamineDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FileexamineDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

70
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineFeignFallback.java

@ -0,0 +1,70 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineFeignFallback.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeignFallback <br/>
* Description: 放款资料审核. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class FileexamineFeignFallback implements FileexamineFeign {
@Override
public ResultBean<PagerVo<FileexamineVo>> listPage(PagerQuery<FileexamineQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-riskcenter/loanfileexamine/listPage无法访问");
}
@Override
public ResultBean save(FileexamineDto dto){
return ResultBean.fireFail().setMsg("接口anrui-riskcenter/loanfileexamine/save无法访问");
}
@Override
public ResultBean delBySids( String[] sids){
return ResultBean.fireFail().setMsg("接口anrui-riskcenter/loanfileexamine/delBySids无法访问");
}
@Override
public ResultBean<FileexamineDetailsVo> fetchDetailsBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-riskcenter/loanfileexamine/fetchDetailsBySid无法访问");
}
}

58
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineQuery.java

@ -0,0 +1,58 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineQuery.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineQuery <br/>
* Description: 放款资料审核 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "放款资料审核 查询条件", description = "放款资料审核 查询条件")
public class FileexamineQuery implements Query {
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("组织全路径")
private String orgPath;
private String menuSid;
private String type;
private String names;
}

65
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/fileexamine/FileexamineVo.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.fileexamine;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineVo.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineVo <br/>
* Description: 放款资料审核 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "放款资料审核 视图数据对象", description = "放款资料审核 视图数据对象")
public class FileexamineVo implements Vo {
private String sid; // sid
@ApiModelProperty("消贷合同编号")
private String loanContractNo;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("台数")
private String num;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("资料状态")
private String zlState;
@ApiModelProperty("是否上传")
private Boolean isUpload = false;
}

11
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java

@ -25,9 +25,9 @@
*********************************************************/
package com.yxt.anrui.terminal.biz.autoservice.saleOrders;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.AppBusSalesOrderFeign;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.InputLenderVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.OrderLoanVo;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanQuery;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.*;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.depositinfo.DepositInfoDto;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.depositinfo.DepositInfoQuery;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.depositinfo.DepositInfoVo;
@ -409,4 +409,9 @@ public class AppBusSalesOrderRest implements AppBusSalesOrderFeign {
return appBusSalesOrderService.saleOrderInputLender(saleOrderSid,sid);
}
@Override
public ResultBean<PagerVo<LoanPreloansVo>> getPreLoanList(PagerQuery<LoanPreloansQuery> pagerQuery) {
return appBusSalesOrderService.getPreLoanList(pagerQuery);
}
}

34
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java

@ -27,6 +27,8 @@ package com.yxt.anrui.terminal.biz.autoservice.saleOrders;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.yxt.anrui.base.api.basemiddleman.BaseMiddlemanQuery;
import com.yxt.anrui.base.api.basemiddleman.BaseMiddlemanVo;
import com.yxt.anrui.base.api.basepurchasesystem.AppBasePurchSystemVo;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
@ -71,13 +73,19 @@ import com.yxt.anrui.buscenter.api.bussalesorderprice.app.AppBusSalesOrderPriceV
import com.yxt.anrui.crm.api.crmvehicledemand.AppCrmOrderVehicleDemandQuery;
import com.yxt.anrui.crm.api.crmvehicledemand.AppOrderCrmVehicleDemandVo;
import com.yxt.anrui.crm.api.crmvehicledemand.CrmVehicledemandFeign;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanOrderPreloanVo;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanCreditApplyFeign;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanQuery;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.InputLenderVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.LoanPreloansQuery;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.LoanPreloansVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.OrderLoanVo;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.flowable.*;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.order.FlowOrderVo;
@ -168,6 +176,8 @@ public class AppBusSalesOrderService {
private LoanPreloanCreditApplyFeign loanPreloanCreditApplyFeign;
@Autowired
private CommonService commonService;
@Autowired
private AppSubsetVersionFeign appSubsetVersionFeign;
/************************************* 销售订单接口 *********************************************/
@ -767,7 +777,7 @@ public class AppBusSalesOrderService {
}
public ResultBean saleOrderInputLenderNum(String sid, String num) {
return busSalesOrderFeign.saveBorrowNum(sid,num);
return busSalesOrderFeign.saveBorrowNum(sid, num);
}
public ResultBean saleOrderInputLenderOwn(String saleOrderSid) {
@ -777,9 +787,29 @@ public class AppBusSalesOrderService {
public ResultBean<InputLenderVo> saleOrderInputLender(String saleOrderSid, String sid) {
ResultBean<InputLenderVo> rb = ResultBean.fireFail();
InputLenderVo inputLenderVo = new InputLenderVo();
ResultBean<SalesLenderVo> resultBean = busSalesOrderFeign.saveSaleOrderInputLender(saleOrderSid,sid);
ResultBean<SalesLenderVo> resultBean = busSalesOrderFeign.saveSaleOrderInputLender(saleOrderSid, sid);
SalesLenderVo vinVo = resultBean.getData();
BeanUtil.copyProperties(vinVo, inputLenderVo);
return rb.success().setData(inputLenderVo);
}
public ResultBean<PagerVo<LoanPreloansVo>> getPreLoanList(PagerQuery<LoanPreloansQuery> pagerQuery) {
ResultBean<PagerVo<LoanPreloansVo>> rb = ResultBean.fireFail();
PagerQuery<LoanPreloanQuery> pq = CoverUtils.getPagerQuery(pagerQuery);
ResultBean<PagerVo<LoanPreloanVo>> resultBean = loanPreloanCreditApplyFeign.getOrderLoanPagerList(pq);
List<LoanPreloansVo> voList = Optional.ofNullable(resultBean.getData().getRecords()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LoanPreloansVo.class)).collect(Collectors.toList());
PagerVo<LoanPreloansVo> v = new PagerVo<>();
BeanUtil.copyProperties(resultBean.getData(), v);
String appSid = "fec4e243-491a-11ec-94cd-fa163e0cb33c";
String moduleAction = "com.anrui.android.plugin.riskcontrol.activity.DetailCreditReviewActivity";
ResultBean<AppSubVersionVo> voResultBean = appSubsetVersionFeign.getLastRiskByAppSid(appSid, moduleAction);
AppSubVersionVo appSubVersionVo = voResultBean.getData();
for (int i = 0; i < voList.size(); i++) {
LoanPreloansVo loanPreloansVo = voList.get(i);
CarModelVo finPage1 = commonService.getDetailsPreloan(loanPreloansVo.getSid(), appSubVersionVo).getData();
loanPreloansVo.setPluginPage(finPage1);
}
v.setRecords(voList);
return rb.success().setMsg("当前共查询到" + v.getTotal() + "条记录").setData(v);
}
}

10
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/base/common/CommonRest.java

@ -68,4 +68,14 @@ public class CommonRest implements CommonFeign {
public ResultBean<CarModelVo> getLoanSs(String orderSid) {
return commonService.getLoanSs(orderSid);
}
@Override
public ResultBean<CarModelVo> getInsertPreloan(String customerTypeKey, String customerTypeValue) {
return commonService.getInsertPreloan(customerTypeKey,customerTypeValue);
}
@Override
public ResultBean<CarModelVo> getDetailsPreloan(String sid) {
return commonService.getDetailsPreloan(sid,null);
}
}

57
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/base/common/CommonService.java

@ -199,4 +199,61 @@ public class CommonService {
carModelVo.setARouterParamValue(aRouterParamValue);
return rb.success().setData(carModelVo);
}
public ResultBean<CarModelVo> getInsertPreloan(String customerTypeKey, String customerTypeValue) {
ResultBean<CarModelVo> rb = ResultBean.fireFail();
String appSid = "fec4e243-491a-11ec-94cd-fa163e0cb33c";
String moduleAction = "com.anrui.android.plugin.riskcontrol.activity.EditCreditReviewActivity";
ResultBean<AppSubVersionVo> voResultBean = appSubsetVersionFeign.getLastRiskByAppSid(appSid, moduleAction);
AppSubVersionVo appSubVersionVo = voResultBean.getData();
CarModelVo carModelVo = new CarModelVo();
Map<String, Object> map = new HashMap<>();
map.put("creditType", 0);
map.put("createSource", 0);
map.put("customerTypeKey", customerTypeKey);
map.put("customerTypeValue", customerTypeValue);
appSubVersionVo.setJson(JSONObject.toJSONString(map));
BeanUtil.copyProperties(appSubVersionVo, carModelVo);
carModelVo.setRequestCode("1004");
carModelVo.setARouterClass("com.anrui.android.plugin.riskcontrol.manager.ARouterManager");
carModelVo.setARouterMethod("EDIT_CREDIT_REVIEW_ACTIVITY");
List<String> aRouterParamType = new ArrayList<>();
aRouterParamType.add("INT");
aRouterParamType.add("INT");
aRouterParamType.add("STRING");
aRouterParamType.add("STRING");
List<String> aRouterParamValue = new ArrayList<>();
aRouterParamValue.add("0");
aRouterParamValue.add("0");
aRouterParamValue.add(customerTypeKey);
aRouterParamValue.add(customerTypeValue);
carModelVo.setARouterParamType(aRouterParamType);
carModelVo.setARouterParamValue(aRouterParamValue);
return rb.success().setData(carModelVo);
}
public ResultBean<CarModelVo> getDetailsPreloan(String sid,AppSubVersionVo appSubVersionVo) {
ResultBean<CarModelVo> rb = ResultBean.fireFail();
if(appSubVersionVo != null){
String appSid = "fec4e243-491a-11ec-94cd-fa163e0cb33c";
String moduleAction = "com.anrui.android.plugin.riskcontrol.activity.DetailCreditReviewActivity";
ResultBean<AppSubVersionVo> voResultBean = appSubsetVersionFeign.getLastRiskByAppSid(appSid, moduleAction);
appSubVersionVo = voResultBean.getData();
}
CarModelVo carModelVo = new CarModelVo();
Map<String, Object> map = new HashMap<>();
map.put("sid", sid);
appSubVersionVo.setJson(JSONObject.toJSONString(map));
BeanUtil.copyProperties(appSubVersionVo, carModelVo);
carModelVo.setRequestCode("1006");
carModelVo.setARouterClass("com.anrui.android.plugin.riskcontrol.manager.ARouterManager");
carModelVo.setARouterMethod("DETAIL_CREDIT_REVIEW_ACTIVITY");
List<String> aRouterParamType = new ArrayList<>();
aRouterParamType.add("STRING");
List<String> aRouterParamValue = new ArrayList<>();
aRouterParamValue.add(sid);
carModelVo.setARouterParamType(aRouterParamType);
carModelVo.setARouterParamValue(aRouterParamValue);
return rb.success().setData(carModelVo);
}
}

6
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/creditreview/CreditReviewService.java

@ -291,6 +291,12 @@ public class CreditReviewService {
identityDetailsVo3.setDictKey("003");
identityDetailsVo3.setDictValue("暂无法判定");
managementResultDict.add(identityDetailsVo3);
IdentityDetailsVo identityDetailsVo4 = new IdentityDetailsVo();
identityDetailsVo4.setSid("004");
identityDetailsVo4.setDictKey("004");
identityDetailsVo4.setDictValue("无需风控审核");
companyResultDict.add(identityDetailsVo4);
managementResultDict.add(identityDetailsVo4);
creditReviewDetailsoffVo.setCompanyResultDict(companyResultDict);
creditReviewDetailsoffVo.setManagementResultDict(managementResultDict);
return rb.success().setData(creditReviewDetailsoffVo);

78
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/fileexamine/FileexamineRest.java

@ -0,0 +1,78 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.risk.fileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.*;
import com.yxt.anrui.terminal.api.risk.fileexamine.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* Project: anrui-riskcenter(放款资料审核) <br/>
* File: LoanFileexamineFeignFallback.java <br/>
* Class: com.yxt.anrui.riskcenter.biz.loanfileexamine.LoanFileexamineRest <br/>
* Description: 放款资料审核. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-09-08 09:43:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "放款资料审核")
@RestController
@RequestMapping("v1/loanfileexamine")
public class FileexamineRest implements FileexamineFeign {
@Autowired
private FileexamineService fileexamineService;
@Override
public ResultBean<PagerVo<FileexamineVo>> listPage(PagerQuery<FileexamineQuery> pq) {
return fileexamineService.listPage(pq);
}
@Override
public ResultBean save(FileexamineDto dto) {
return fileexamineService.save(dto);
}
@Override
public ResultBean delBySids(String[] sids) {
return null;
}
@Override
public ResultBean<FileexamineDetailsVo> fetchDetailsBySid(String sid) {
return fileexamineService.fetchDetailsBySid(sid);
}
}

107
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/fileexamine/FileexamineService.java

@ -0,0 +1,107 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.risk.fileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.*;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanAttachTypeEnum;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanHomevisitInvestigateFileDto;
import com.yxt.anrui.terminal.api.risk.fileexamine.FileexamineDetailsVo;
import com.yxt.anrui.terminal.api.risk.fileexamine.FileexamineDto;
import com.yxt.anrui.terminal.api.risk.fileexamine.FileexamineQuery;
import com.yxt.anrui.terminal.api.risk.fileexamine.FileexamineVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class FileexamineService {
@Autowired
private LoanFileexamineFeign loanFileexamineFeign;
public ResultBean<PagerVo<FileexamineVo>> listPage(PagerQuery<FileexamineQuery> pagerQuery) {
ResultBean<PagerVo<FileexamineVo>> rb = ResultBean.fireFail();
PagerQuery<LoanFileexamineQuery> pq = new PagerQuery<>();
FileexamineQuery params = pagerQuery.getParams();
LoanFileexamineQuery params1 = new LoanFileexamineQuery();
params1.setOrgSidPath(params.getOrgPath());
params1.setUserSid(params.getUserSid());
params1.setNames(params.getNames());
params1.setType(params.getType());
pq.setParams(params1);
ResultBean<PagerVo<LoanFileexamineVo>> resultBean = loanFileexamineFeign.listPage(pq);
List<FileexamineVo> fileexamineVos = new ArrayList<>();
PagerVo<FileexamineVo> v = new PagerVo<>();
List<LoanFileexamineVo> records = resultBean.getData().getRecords();
for (LoanFileexamineVo record : records) {
FileexamineVo fileexamineVo = new FileexamineVo();
fileexamineVo.setSid(record.getSid());
fileexamineVo.setLoanContractNo(record.getLoanContractNo());
fileexamineVo.setZlState(record.getZlState());
fileexamineVo.setBorrowerName(record.getBorrowerName());
fileexamineVo.setNum(record.getNum());
fileexamineVo.setStaffName(record.getUseOrgName() + "-" + record.getOrgName() + "-" + record.getStaffName());
if ("未齐全".equals(record.getZlState())) {
fileexamineVo.setIsUpload(true);
}
fileexamineVos.add(fileexamineVo);
}
v.setRecords(fileexamineVos);
return rb.success().setData(v);
}
public ResultBean<FileexamineDetailsVo> fetchDetailsBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
FileexamineDetailsVo fileexamineDetailsVo = new FileexamineDetailsVo();
LoanFileexamineDetailsVo data = loanFileexamineFeign.fetchDetailsBySid(sid).getData();
fileexamineDetailsVo.setLoanContractNo(data.getLoanContractNo());
fileexamineDetailsVo.setNum(data.getNum());
fileexamineDetailsVo.setStaffName(data.getStaffName());
fileexamineDetailsVo.setVinNo(data.getVinNo());
fileexamineDetailsVo.setYhkImages(data.getYhkImages());
fileexamineDetailsVo.setGzsfpImages(data.getGzsfpImages());
fileexamineDetailsVo.setBxfpImages(data.getBxfpImages());
fileexamineDetailsVo.setBdImages(data.getBdImages());
return rb.success().setData(fileexamineDetailsVo);
}
public ResultBean save(FileexamineDto dto) {
ResultBean rb = ResultBean.fireFail();
LoanFileDto loanFileDto = new LoanFileDto();
loanFileDto.setSid(dto.getSid());
loanFileDto.setYhkImages(dto.getYhkImages());
loanFileDto.setGzsfpImages(dto.getGzsfpImages());
loanFileDto.setBxfpImages(dto.getBxfpImages());
loanFileDto.setBdImages(dto.getBdImages());
loanFileexamineFeign.uploadFile(loanFileDto);
return rb.success();
}
}
Loading…
Cancel
Save