Browse Source

Merge remote-tracking branch 'origin/master'

master
ligaode 3 weeks ago
parent
commit
d97462ff5e
  1. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java
  2. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeignFallback.java
  3. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java
  4. 76
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java
  5. 10
      anrui-buscenter/anrui-buscenter-biz/pom.xml
  6. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/BusCenterApplication.java
  7. 70
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  8. 389
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  9. 4
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  10. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysnotice/SysNoticeVo.java
  11. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java
  12. 3
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysnotice/SysNoticeMapper.xml
  13. 6
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/carsSoldProfit/CarsSoldProfitDto.java
  14. 4
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/carsSoldProfit/CarsSoldProfitFeign.java
  15. 6
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/carsSoldProfit/CarsSoldProfitRest.java
  16. 6
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/carsSoldProfit/CarsSoldProfitService.java
  17. 8
      anrui-riskcenter-ui/src/views/secondarysales/relation/generatecontract.vue
  18. 10
      anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue
  19. 10
      anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue
  20. 9
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue
  21. 9
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue
  22. 9
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue
  23. 9
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue
  24. 2
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java
  25. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.java
  26. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.xml
  27. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyService.java
  28. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java
  29. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml
  30. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java
  31. 51
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java
  32. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingMapper.java
  33. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingMapper.xml
  34. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingService.java
  35. 63
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java
  36. 111
      anrui-system-ui/src/views/Home/Home.vue

5
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java

@ -116,4 +116,9 @@ public interface BusVehicleApplyFeign {
@PostMapping("/getBillNo") @PostMapping("/getBillNo")
@ResponseBody @ResponseBody
ResultBean<BusVehicleApply> getBillNo(@RequestParam("pcApplicationCode") String pcApplicationCode); ResultBean<BusVehicleApply> getBillNo(@RequestParam("pcApplicationCode") String pcApplicationCode);
@ApiOperation("rePushFin")
@PostMapping("/排产已办结没有推送财务出纳")
@ResponseBody
ResultBean rePushFin(@RequestParam("sid")String sid);
} }

5
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeignFallback.java

@ -126,4 +126,9 @@ public class BusVehicleApplyFeignFallback implements BusVehicleApplyFeign {
public ResultBean<BusVehicleApply> getBillNo(String pcApplicationCode) { public ResultBean<BusVehicleApply> getBillNo(String pcApplicationCode) {
return null; return null;
} }
@Override
public ResultBean rePushFin(String sid) {
return null;
}
} }

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java

@ -140,6 +140,11 @@ public class BusVehicleApplyRest implements BusVehicleApplyFeign {
return rb.success().setData(busVehicleApply); return rb.success().setData(busVehicleApply);
} }
@Override
public ResultBean rePushFin(String sid) {
return busVehicleApplyService.rePushFin(sid);
}
/* @Override /* @Override
public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) { public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) {
return busVehicleApplyService.shareBusVehicleApply(shareQuery); return busVehicleApplyService.shareBusVehicleApply(shareQuery);

76
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java

@ -661,7 +661,7 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
//排产申请审核通过后,若申请订金的,需要同时生成财务待支付列表记录。 //排产申请审核通过后,若申请订金的,需要同时生成财务待支付列表记录。
//生成一条未打款、未认款的厂家认款记录;若申请订金为0,则只需要生成一条无需打款、未认款的厂家认款记录。 //生成一条未打款、未认款的厂家认款记录;若申请订金为0,则只需要生成一条无需打款、未认款的厂家认款记录。
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
BaseManufactorSubscriptionDto baseManufactorSubscriptionDto = new BaseManufactorSubscriptionDto(); /* BaseManufactorSubscriptionDto baseManufactorSubscriptionDto = new BaseManufactorSubscriptionDto();
//判断申请的订金 //判断申请的订金
List<BusVehicleApplyDetailVo> vo = busVehicleApplyDetailService.fetchByApplySid(bv.getBusinessSid()); List<BusVehicleApplyDetailVo> vo = busVehicleApplyDetailService.fetchByApplySid(bv.getBusinessSid());
vo.removeAll(Collections.singleton(null)); vo.removeAll(Collections.singleton(null));
@ -721,7 +721,8 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
finPaymentrecordDto.setBusSid(r.getData()); finPaymentrecordDto.setBusSid(r.getData());
finPaymentrecordDto.setBusRemarks(busVehicleApply.getPayRemarks()); finPaymentrecordDto.setBusRemarks(busVehicleApply.getPayRemarks());
finPaymentrecordFeign.save(finPaymentrecordDto); finPaymentrecordFeign.save(finPaymentrecordDto);
} }*/
pushToFin(bv.getBusinessSid());
} else { } else {
busVehicleApply = fetchBySid(businessSid); busVehicleApply = fetchBySid(businessSid);
//==================================添加线程 //==================================添加线程
@ -762,6 +763,71 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
} }
public void pushToFin(String sid){
BusVehicleApply busVehicleApply = fetchBySid(sid);
BaseManufactorSubscriptionDto baseManufactorSubscriptionDto = new BaseManufactorSubscriptionDto();
//判断申请的订金
List<BusVehicleApplyDetailVo> vo = busVehicleApplyDetailService.fetchByApplySid(sid);
vo.removeAll(Collections.singleton(null));
if (busVehicleApply.getCurrentAmount() > 0) {
//未打款、未认款的厂家认款记录
baseManufactorSubscriptionDto.setState(0);//未认款
baseManufactorSubscriptionDto.setPaymentState("0");//未打款
} else {
//无需打款、未认款的厂家认款记录
baseManufactorSubscriptionDto.setState(0);//未认款
baseManufactorSubscriptionDto.setPaymentState("2");//无需打款
}
baseManufactorSubscriptionDto.setCreateOrgSid(busVehicleApply.getCreateOrgSid());
baseManufactorSubscriptionDto.setUseOrgSid(busVehicleApply.getCreateOrgSid());
baseManufactorSubscriptionDto.setPaymentMoney(busVehicleApply.getCurrentAmount().toString());//打款金额
baseManufactorSubscriptionDto.setProSchAppNo(busVehicleApply.getApplicationCode());//排产申请编号
baseManufactorSubscriptionDto.setApplyType(busVehicleApply.getApplyType());
baseManufactorSubscriptionDto.setApplyTypeKey(busVehicleApply.getApplyTypeKey());
ResultBean<String> r = baseManufactorSubscriptionService.saveDto(baseManufactorSubscriptionDto);
//推送到财务出纳
if (busVehicleApply.getCurrentAmount() > 0) {
FinPaymentrecordDto finPaymentrecordDto = new FinPaymentrecordDto();
finPaymentrecordDto.setPurchaseSystemSid(busVehicleApply.getOrgDeptSid());
finPaymentrecordDto.setPurchaseSystemName(busVehicleApply.getOrgDeptName());
finPaymentrecordDto.setApplySid(busVehicleApply.getSid());
finPaymentrecordDto.setPayCompanySid(busVehicleApply.getCreateOrgSid());
finPaymentrecordDto.setPayType(1);
finPaymentrecordDto.setCreateOrgSid(busVehicleApply.getCreateOrgSid());
finPaymentrecordDto.setUseOrgSid(busVehicleApply.getCreateOrgSid());
finPaymentrecordDto.setCost(busVehicleApply.getCurrentAmount().toString());
finPaymentrecordDto.setAccountsReceive(busVehicleApply.getCurrentAmount().toString());
finPaymentrecordDto.setCostTitleKey(ManPurOrderType.CostTitle.DJ_COSTTITLE.getCode());
finPaymentrecordDto.setCostTitleValue(ManPurOrderType.CostTitle.DJ_COSTTITLE.getRemarks());
finPaymentrecordDto.setCostTypeKey(DictCommonEnum.costType.DJ_TYPE.getCode());
finPaymentrecordDto.setCostTypeValue(DictCommonEnum.costType.DJ_TYPE.getRemarks());
finPaymentrecordDto.setDictTypeCode("payCostType");
finPaymentrecordDto.setDictKey("005");
finPaymentrecordDto.setPayRemark(busVehicleApply.getPayRemarks());
finPaymentrecordDto.setCreateBySid(busVehicleApply.getCreateBySid());
finPaymentrecordDto.setRemarks("排产订金");
//查询收款单位和收款账号
List<BusVehicleApplyDetailVo> busVehicleApplyDetailList = busVehicleApplyDetailService.fetchByApplySid(busVehicleApply.getSid());
String modelSid = busVehicleApplyDetailList.get(0).getVehicleSid();
//根据车型sid查询账户名称和银行账号
List<BusApplyVo> busApplyVo = baseManufacturerBankService.selectByApplySid(modelSid);
busApplyVo.removeAll(Collections.singleton(null));
if (!busApplyVo.isEmpty()) {
finPaymentrecordDto.setReceiveBankAccount(busApplyVo.get(0).getNum());
finPaymentrecordDto.setReceiveBank(busApplyVo.get(0).getBankName());
finPaymentrecordDto.setReceiveCompany(busApplyVo.get(0).getName());
}
BaseManufacturer baseManufacturer = baseManufacturerService.fetchBySid(busVehicleApply.getSupplierSid());
if (baseManufacturer != null) {
finPaymentrecordDto.setPayCode(baseManufacturer.getManufacturerCode());
}
finPaymentrecordDto.setBusSid(r.getData());
finPaymentrecordDto.setBusRemarks(busVehicleApply.getPayRemarks());
finPaymentrecordFeign.save(finPaymentrecordDto);
}
}
/** /**
* 获取上一环节 * 获取上一环节
* *
@ -1107,6 +1173,12 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
return rb.success(); return rb.success();
} }
public ResultBean rePushFin(String sid) {
ResultBean rb = ResultBean.fireFail();
pushToFin(sid);
return rb.success();
}
/* public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) { /* public ResultBean shareBusVehicleApply(ShareBusVehicleApplyQuery shareQuery) {
ResultBean rb = ResultBean.fireSuccess(); ResultBean rb = ResultBean.fireSuccess();
log.info("分享功能,厂家采购参数:{}", JSONObject.toJSONString(shareQuery)); log.info("分享功能,厂家采购参数:{}", JSONObject.toJSONString(shareQuery));

10
anrui-buscenter/anrui-buscenter-biz/pom.xml

@ -8,6 +8,11 @@
<version>0.0.1</version> <version>0.0.1</version>
<relativePath/> <relativePath/>
</parent> </parent>
<!-- <parent>
<groupId>com.yxt.anrui</groupId>
<artifactId>anrui-buscenter</artifactId>
<version>0.0.1</version>
</parent>-->
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
@ -16,6 +21,11 @@
<version>0.0.1</version> <version>0.0.1</version>
<dependencies> <dependencies>
<dependency>
<artifactId>anrui-reportcenter-api</artifactId>
<groupId>com.yxt.anrui</groupId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency> <dependency>
<groupId>com.yxt.messagecenter</groupId> <groupId>com.yxt.messagecenter</groupId>
<artifactId>message-center-api</artifactId> <artifactId>message-center-api</artifactId>

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

@ -16,7 +16,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
}) })
@EnableScheduling @EnableScheduling
@EnableDiscoveryClient @EnableDiscoveryClient
@EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.messagecenter","com.yxt.anrui.fin","com.yxt.anrui.scm"}) @EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.messagecenter","com.yxt.anrui.fin","com.yxt.anrui.scm","com.yxt.anrui.reportcenter"})
public class BusCenterApplication { public class BusCenterApplication {
public static void main(String[] args) { public static void main(String[] args) {

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

@ -145,6 +145,8 @@ import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.UserQuery; import com.yxt.anrui.portal.api.sysuser.UserQuery;
import com.yxt.anrui.reportcenter.api.carsSoldProfit.CarsSoldProfitDto;
import com.yxt.anrui.reportcenter.api.carsSoldProfit.CarsSoldProfitFeign;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamine; import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamine;
import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeign; import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeign;
import com.yxt.anrui.riskcenter.api.loanhomevisitfileexamine.LoanHomevisitFileexamineFeign; import com.yxt.anrui.riskcenter.api.loanhomevisitfileexamine.LoanHomevisitFileexamineFeign;
@ -303,6 +305,9 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
@Autowired @Autowired
private FinKingDeeFeign finKingDeeFeign; private FinKingDeeFeign finKingDeeFeign;
@Autowired
private CarsSoldProfitFeign carsSoldProfitFeign;
/** /**
* 构造出库申请的查询条件 * 构造出库申请的查询条件
* *
@ -1184,6 +1189,10 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
Future future10 = pool.submit(() -> { Future future10 = pool.submit(() -> {
pushOtherDocument(busDeliveredApply, detailsList); pushOtherDocument(busDeliveredApply, detailsList);
}); });
/* Future future13 = pool.submit(() -> {
//推送车辆利润报表
pushCarSoldProfit(busDeliveredApply, detailsList);
});*/
//推送单车返利管理 //推送单车返利管理
String concatNo = busDeliveredApply.getContractNo(); String concatNo = busDeliveredApply.getContractNo();
BusSalesOrder busSalesOrder = busSalesOrderService.selectOrderByContractNo(concatNo).getData(); BusSalesOrder busSalesOrder = busSalesOrderService.selectOrderByContractNo(concatNo).getData();
@ -1367,6 +1376,67 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
} }
} }
private void pushCarSoldProfit(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList) {
List<CarsSoldProfitDto> dtoList = new ArrayList<>();
detailsList.removeAll(Collections.singleton(null));
if(!detailsList.isEmpty()){
BusSalesOrder busSalesOrder = busSalesOrderService.selectByContractNos(busDeliveredApply.getContractNo());
for (int i = 0; i < detailsList.size(); i++) {
BusDeliveredApplyDetails busDeliveredApplyDetails = detailsList.get(i);
BaseVehicle baseVehicle = baseVehicleFeign.fetchBySid(busDeliveredApplyDetails.getVinSid()).getData();
CarsSoldProfitDto carsSoldProfitDto = new CarsSoldProfitDto();
carsSoldProfitDto.setStaffSid(busSalesOrder.getStaffSid());//销售专员
carsSoldProfitDto.setStaffName(busSalesOrder.getStaffName());
carsSoldProfitDto.setCustomerSid(busSalesOrder.getCustomerSid());
carsSoldProfitDto.setCustomerName(busSalesOrder.getCustomerName());
//金融服务费
//中介返利
//车辆台账中取
carsSoldProfitDto.setOrgSidPath(baseVehicle.getOrgSidPath());
//分公司
carsSoldProfitDto.setUseOrgSid(baseVehicle.getUseOrgSid());
carsSoldProfitDto.setUseOrgName(baseVehicle.getUseOrgName());
//销售日期
carsSoldProfitDto.setSaleDate(baseVehicle.getSalesDate());
//车架号
carsSoldProfitDto.setVinNo(baseVehicle.getVinNo());
//车型
carsSoldProfitDto.setVehModelSid(baseVehicle.getModelSid());
carsSoldProfitDto.setVehMConfigSid(baseVehicle.getModelConfigSid());
carsSoldProfitDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
carsSoldProfitDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
//入库价
//出库价
carsSoldProfitDto.setExStockPrice(baseVehicle.getContractPrice().toString());
//存放地点
carsSoldProfitDto.setLocationSid(baseVehicle.getLocation());
carsSoldProfitDto.setLocationName(baseVehicle.getLocationName());
//厂家结算价
carsSoldProfitDto.setMakersSettlementPrice(baseVehicle.getSettlePrice().toString());
//排产订单编号
//变速箱
//数据日期
carsSoldProfitDto.setCreateDate(new Date());
dtoList.add(carsSoldProfitDto);
}
}
if(!dtoList.isEmpty()){
ResultBean resultBean = carsSoldProfitFeign.saveOrUpdate(dtoList);
}
}
private void pushVehRebateAdjustBill(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList, SolutionsDetailsVo solutionsDetailsVo) { private void pushVehRebateAdjustBill(BusDeliveredApply busDeliveredApply, List<BusDeliveredApplyDetails> detailsList, SolutionsDetailsVo solutionsDetailsVo) {
BigDecimal cjtx = BigDecimal.ZERO;//厂家贴息 BigDecimal cjtx = BigDecimal.ZERO;//厂家贴息
BigDecimal txdck = BigDecimal.ZERO;//贴息抵车款 BigDecimal txdck = BigDecimal.ZERO;//贴息抵车款

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

@ -4694,7 +4694,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new java.util.concurrent.ThreadPoolExecutor.AbortPolicy()); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new java.util.concurrent.ThreadPoolExecutor.AbortPolicy());
FinCollectionConfirmation finalConfirmation1 = confirmation; FinCollectionConfirmation finalConfirmation1 = confirmation;
Future future1 = pool.submit(() -> { Future future1 = pool.submit(() -> {
pushToRiskToFin(finalConfirmation1, finSelectedReceivablesDetailedVos, collectionDate, voucher); pushToRiskToFin(finalConfirmation1, finSelectedReceivablesDetailedVos, collectionDate, voucher,userSid);
}); });
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
@ -4719,7 +4719,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
return rb.success().setMsg("款项确认成功"); return rb.success().setMsg("款项确认成功");
} }
private void pushToRiskToFin(FinCollectionConfirmation finalConfirmation, List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVoList, String collectionDate, Voucher voucher) { private void pushToRiskToFin(FinCollectionConfirmation finalConfirmation,
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVoList,
String collectionDate, Voucher voucher,String userSid) {
List<Voucher.VoucherResultDetailDto> list = new ArrayList<>(); List<Voucher.VoucherResultDetailDto> list = new ArrayList<>();
List<Voucher.VoucherResultDetailDto> list2 = new ArrayList<>(); List<Voucher.VoucherResultDetailDto> list2 = new ArrayList<>();
BigDecimal all = BigDecimal.ZERO;//赎回 BigDecimal all = BigDecimal.ZERO;//赎回
@ -4736,6 +4738,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
payType = sysMappingInfoVo.getMap_itemKey(); payType = sysMappingInfoVo.getMap_itemKey();
} }
} }
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdfTimes = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(finalConfirmation.getCreateDeptSid()).getData(); SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(finalConfirmation.getCreateDeptSid()).getData();
String customerNumber = ""; String customerNumber = "";
for (int i = 0; i < finSelectedReceivablesDetailedVoList.size(); i++) { for (int i = 0; i < finSelectedReceivablesDetailedVoList.size(); i++) {
@ -4788,7 +4792,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
} else { } else {
customerNumber = busSalesOrderVehicle.getTemporaryNo(); customerNumber = busSalesOrderVehicle.getTemporaryNo();
} }
}
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString()) || "11".equals(busSalesOrderVehicle.getRiskState().toString())) {//赎回中-赎回凭证--交回--转租中 if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString()) || "11".equals(busSalesOrderVehicle.getRiskState().toString())) {//赎回中-赎回凭证--交回--转租中
////营业费用_催收费用 上门催收费用--收回车辆费用(赎回通过后推送的费用) ////营业费用_催收费用 上门催收费用--收回车辆费用(赎回通过后推送的费用)
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){ if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
@ -4833,7 +4836,12 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) { if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
all = all.add(new BigDecimal(v.getSubscriptionMoney())); all = all.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf.setSummary("收款-"+finalConfirmation.getPayerName()); if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
voucherResultDetailDtoDf.setSummary("收款-赎回款");
}else{
voucherResultDetailDtoDf.setSummary("收款-转租款");
}
voucherResultDetailDtoDf.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode());
@ -4841,13 +4849,189 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); voucherResultDetailDtoDf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoDf); list.add(voucherResultDetailDtoDf);
if("月还".equals(v.getReceivablesName())){
//推送间还认款记录
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setUpdateTime(new DateTime());
historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}else{
if (null != planDetails.getPaymentInterest()) {
if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
}
}
} }
//应收贷款车欠款_到期欠款_逾期利息--资金占用费 //应收贷款车欠款_到期欠款_逾期利息--资金占用费
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto();
if ("资金占用费".equals(v.getReceivablesName())) { if ("资金占用费".equals(v.getReceivablesName())) {
all = all.add(new BigDecimal(v.getSubscriptionMoney())); all = all.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf2.setSummary("收款-"+finalConfirmation.getPayerName()); if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
voucherResultDetailDtoDf2.setSummary("收款-赎回款");
}else{
voucherResultDetailDtoDf2.setSummary("收款-转租款");
}
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03"); voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门 //核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
@ -4862,7 +5046,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) { if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf.setSummary("***扣回车辆再次销售款"); voucherResultDetailDtoDf.setSummary(customerNumber+"扣回车辆再次销售款");
voucherResultDetailDtoDf.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode());
@ -4870,12 +5054,183 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); voucherResultDetailDtoDf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney());
list2.add(voucherResultDetailDtoDf); list2.add(voucherResultDetailDtoDf);
if("月还".equals(v.getReceivablesName())){
//推送间还认款记录
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setUpdateTime(new DateTime());
historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}else{
if (null != planDetails.getPaymentInterest()) {
if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
}
}
} }
if ("资金占用费".equals(v.getReceivablesName())) { if ("资金占用费".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf2.setSummary("***扣回车辆再次销售款"); voucherResultDetailDtoDf2.setSummary(customerNumber+"扣回车辆再次销售款");
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03"); voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门 //核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
@ -4888,7 +5243,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if ("预计资方结清费用".equals(v.getReceivablesName())) { if ("预计资方结清费用".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf3.setSummary("**扣回车辆再次销售-资方结清费用"); voucherResultDetailDtoDf3.setSummary(planDetails.getVinNo()+"扣回车辆再次销售-资方结清费用");
voucherResultDetailDtoDf3.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf3.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode());
@ -4900,8 +5255,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if ("停车费".equals(v.getReceivablesName())) { if ("停车费".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.subtract(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoJf2.setSummary("**扣回车辆再次销售-停车费"); voucherResultDetailDtoJf2.setSummary(customerNumber+"扣回车辆再次销售-停车费");
voucherResultDetailDtoJf2.setSubjectNo("6601.32.02"); voucherResultDetailDtoJf2.setSubjectNo("6601.32.02");
//核算部门 //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode());
@ -4911,12 +5266,14 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
list2.add(voucherResultDetailDtoJf2); list2.add(voucherResultDetailDtoJf2);
} }
if ("车辆违章费用".equals(v.getReceivablesName()) || "年检费".equals(v.getReceivablesName()) || if ("车辆违章费用".equals(v.getReceivablesName()) || "年检费".equals(v.getReceivablesName()) ||
"保险费".equals(v.getReceivablesName()) || "过户费".equals(v.getReceivablesName()) "保险费".equals(v.getReceivablesName()) || "过户费".equals(v.getReceivablesName()) || "其他费用".equals(v.getReceivablesName())
) { ) {
otherMoney = otherMoney.add(new BigDecimal(v.getSubscriptionMoney())); otherMoney = otherMoney.add(new BigDecimal(v.getSubscriptionMoney()));
} }
} }
} }
}
//客户赎回收款 //客户赎回收款
if (all.compareTo(BigDecimal.ZERO) > 0) { if (all.compareTo(BigDecimal.ZERO) > 0) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto();
@ -4931,8 +5288,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (otherMoney.compareTo(BigDecimal.ZERO) > 0) { if (otherMoney.compareTo(BigDecimal.ZERO) > 0) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.subtract(otherMoney); all2 = all2.add(otherMoney);
voucherResultDetailDtoJf2.setSummary("**扣回车辆再次销售-费用(违章、年检、保险、过户)"); voucherResultDetailDtoJf2.setSummary(customerNumber+"扣回车辆再次销售-费用(违章、年检、保险、过户)");
voucherResultDetailDtoJf2.setSubjectNo("1133.10.00"); voucherResultDetailDtoJf2.setSubjectNo("1133.10.00");
//核算部门 //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode());
@ -4947,7 +5304,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucherResultDetailDtoJf.setBankAccount(finalConfirmation.getCollectionBankNum()); voucherResultDetailDtoJf.setBankAccount(finalConfirmation.getCollectionBankNum());
} }
voucherResultDetailDtoJf.setSubjectNo(payType); voucherResultDetailDtoJf.setSubjectNo(payType);
voucherResultDetailDtoJf.setSummary("***扣回车辆再次销售-收款" + "(" + collectionDate + ")"); voucherResultDetailDtoJf.setSummary("收款" +finalConfirmation.getPayerName()+ "(" + collectionDate + ")");
voucherResultDetailDtoJf.setDebit(String.valueOf(all2)); voucherResultDetailDtoJf.setDebit(String.valueOf(all2));
list2.add(voucherResultDetailDtoJf); list2.add(voucherResultDetailDtoJf);
} }
@ -4956,7 +5313,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucher.setResultDetails(list); voucher.setResultDetails(list);
finKingDeeFeignRest.saveVoucher(voucher); finKingDeeFeignRest.saveVoucher(voucher);
} }
if (list2.isEmpty()) { if (!list2.isEmpty()) {
voucher.setResultDetails(list2); voucher.setResultDetails(list2);
finKingDeeFeignRest.saveVoucher(voucher); finKingDeeFeignRest.saveVoucher(voucher);
} }
@ -6259,7 +6616,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
for (AppFinSelectedReceivablesDetailedRskDto v : finSelectedReceivablesDetailedDtos) { for (AppFinSelectedReceivablesDetailedRskDto v : finSelectedReceivablesDetailedDtos) {
String loanContractNo = v.getLoanContractNo(); String loanContractNo = v.getLoanContractNo();
String vinNo = v.getVin(); String vinNo = v.getVin();
if (!v.getProjectName().equals("远程控制费")) { if (v.getProjectName().equals("月还") || "资方逾期利息".equals(v.getProjectName())) {
List<AppFinUncollectedReceivablesDetailedRskVo> ruleList = finUncollectedReceivablesDetailedJRService.getRskPaymentDetailsListForRule(loanContractNo, vinNo, finCollectionConfirmation.getUseOrgSid(), finCollectionConfirmation.getPurchaseSystemSid()); List<AppFinUncollectedReceivablesDetailedRskVo> ruleList = finUncollectedReceivablesDetailedJRService.getRskPaymentDetailsListForRule(loanContractNo, vinNo, finCollectionConfirmation.getUseOrgSid(), finCollectionConfirmation.getPurchaseSystemSid());
if (!ruleList.isEmpty()) { if (!ruleList.isEmpty()) {
for (AppFinUncollectedReceivablesDetailedRskVo r : ruleList) { for (AppFinUncollectedReceivablesDetailedRskVo r : ruleList) {

4
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java

@ -301,7 +301,7 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
* @param procInsId 流程实例Id * @param procInsId 流程实例Id
* @return * @return
*/ */
public ResultBean<FlowRecordVo> businessFlowRecord(String procInsId) { public ResultBean<FlowRecordVo> businessFlowRecordOld(String procInsId) {
long startTimes = System.currentTimeMillis(); // 记录开始时间 long startTimes = System.currentTimeMillis(); // 记录开始时间
ResultBean<FlowRecordVo> rb = ResultBean.fireFail(); ResultBean<FlowRecordVo> rb = ResultBean.fireFail();
FlowRecordVo flowRecordVo = new FlowRecordVo(); FlowRecordVo flowRecordVo = new FlowRecordVo();
@ -437,7 +437,7 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
* @param procInsId 流程实例Id * @param procInsId 流程实例Id
* @return * @return
*/ */
public ResultBean<FlowRecordVo> businessFlowRecordOld(String procInsId) { public ResultBean<FlowRecordVo> businessFlowRecord(String procInsId) {
ResultBean<FlowRecordVo> rb = ResultBean.fireFail(); ResultBean<FlowRecordVo> rb = ResultBean.fireFail();
FlowRecordVo flowRecordVo = new FlowRecordVo(); FlowRecordVo flowRecordVo = new FlowRecordVo();
if (StringUtils.isNotBlank(procInsId)) { if (StringUtils.isNotBlank(procInsId)) {

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysnotice/SysNoticeVo.java

@ -21,4 +21,6 @@ public class SysNoticeVo {
private String stateValue; private String stateValue;
@ApiModelProperty("是否置顶") @ApiModelProperty("是否置顶")
private String topping; private String topping;
@ApiModelProperty("PC端页面地址")
private String pcUrl;
} }

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java

@ -165,9 +165,7 @@ public class FlowableRest implements FlowableFeign {
resultBean.setData(flowRecordVo1); resultBean.setData(flowRecordVo1);
return resultBean; return resultBean;
} }
public ResultBean<List<PCHistTaskListAndCommentList>> flowRecordAndCommentOld(String procInsId, String deployId) {
@Override
public ResultBean<List<PCHistTaskListAndCommentList>> flowRecordAndComment(String procInsId, String deployId) {
long startTimes = System.currentTimeMillis(); // 记录开始时间 long startTimes = System.currentTimeMillis(); // 记录开始时间
// 并行调用外部服务 // 并行调用外部服务
CompletableFuture<ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowRecordVo>> flowRecordFuture = CompletableFuture<ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowRecordVo>> flowRecordFuture =
@ -273,8 +271,8 @@ public class FlowableRest implements FlowableFeign {
log.info("流程记录接口耗时 {} ms", endTime - startTimes); log.info("流程记录接口耗时 {} ms", endTime - startTimes);
return resultBean; return resultBean;
} }
@Override
public ResultBean<List<PCHistTaskListAndCommentList>> flowRecordAndCommentOld(String procInsId, String deployId) { public ResultBean<List<PCHistTaskListAndCommentList>> flowRecordAndComment(String procInsId, String deployId) {
ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowRecordVo> flowRecordVoResultBean = flowableService.flowRecord(procInsId, deployId); ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowRecordVo> flowRecordVoResultBean = flowableService.flowRecord(procInsId, deployId);
com.yxt.anrui.flowable.api.flowtask.FlowRecordVo flowRecordVo = flowRecordVoResultBean.getData(); com.yxt.anrui.flowable.api.flowtask.FlowRecordVo flowRecordVo = flowRecordVoResultBean.getData();
List<PCHistTaskListAndCommentList> flowList = new ArrayList<>(); List<PCHistTaskListAndCommentList> flowList = new ArrayList<>();

3
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysnotice/SysNoticeMapper.xml

@ -10,7 +10,8 @@
when 1 when 1
then '开启' then '开启'
when 2 then '关闭' end as stateValue, when 2 then '关闭' end as stateValue,
sn.topping sn.topping,
sn.pcUrl
from sys_notice sn from sys_notice sn
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}

6
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/carsSoldProfit/CarsSoldProfitDto.java

@ -24,7 +24,7 @@ public class CarsSoldProfitDto {
@ApiModelProperty("客户名称") @ApiModelProperty("客户名称")
private String customerName; private String customerName;
@ApiModelProperty("销售日期") @ApiModelProperty("销售日期")
private String saleDate; private Date saleDate;
@ApiModelProperty("分公司sid") @ApiModelProperty("分公司sid")
private String useOrgSid; private String useOrgSid;
@ApiModelProperty("分公司名称") @ApiModelProperty("分公司名称")
@ -72,7 +72,7 @@ public class CarsSoldProfitDto {
@ApiModelProperty("变速箱") @ApiModelProperty("变速箱")
private String gearbox; private String gearbox;
@ApiModelProperty("数据日期") @ApiModelProperty("数据日期")
private String createDate; private Date createDate;
@ApiModelProperty("更新日期") @ApiModelProperty("更新日期")
private String updateDate; private Date updateDate;
} }

4
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/carsSoldProfit/CarsSoldProfitFeign.java

@ -9,6 +9,8 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/** /**
* @description: * @description:
* @author: dimengzhe * @author: dimengzhe
@ -23,7 +25,7 @@ public interface CarsSoldProfitFeign {
@PostMapping("saveOrUpdate") @PostMapping("saveOrUpdate")
@ResponseBody @ResponseBody
ResultBean saveOrUpdate(@RequestBody CarsSoldProfitDto dto); ResultBean saveOrUpdate(@RequestBody List<CarsSoldProfitDto> dtoList);
@PostMapping("list") @PostMapping("list")
@ResponseBody @ResponseBody

6
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/carsSoldProfit/CarsSoldProfitRest.java

@ -13,6 +13,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* @description: * @description:
* @author: dimengzhe * @author: dimengzhe
@ -27,8 +29,8 @@ public class CarsSoldProfitRest implements CarsSoldProfitFeign {
private CarsSoldProfitService carsSoldProfitService; private CarsSoldProfitService carsSoldProfitService;
@Override @Override
public ResultBean saveOrUpdate(CarsSoldProfitDto dto) { public ResultBean saveOrUpdate(List<CarsSoldProfitDto> dtoList) {
return carsSoldProfitService.saveProfit(dto); return carsSoldProfitService.saveProfit(dtoList);
} }
@Override @Override

6
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/carsSoldProfit/CarsSoldProfitService.java

@ -34,8 +34,10 @@ public class CarsSoldProfitService extends MybatisBaseService<CarsSoldProfitMapp
@Autowired @Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
public ResultBean saveProfit(CarsSoldProfitDto dto) { public ResultBean saveProfit(List<CarsSoldProfitDto> dtoList) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
for (int i = 0; i < dtoList.size(); i++) {
CarsSoldProfitDto dto = dtoList.get(i);
CarsSoldProfit carsSoldProfit = baseMapper.selectByVinSid(dto.getVinSid()); CarsSoldProfit carsSoldProfit = baseMapper.selectByVinSid(dto.getVinSid());
if (carsSoldProfit != null) { if (carsSoldProfit != null) {
//预计毛利 //预计毛利
@ -60,6 +62,8 @@ public class CarsSoldProfitService extends MybatisBaseService<CarsSoldProfitMapp
BeanUtil.copyProperties(dto, carsSoldProfit); BeanUtil.copyProperties(dto, carsSoldProfit);
baseMapper.insert(carsSoldProfit); baseMapper.insert(carsSoldProfit);
} }
}
return rb.success(); return rb.success();
} }

8
anrui-riskcenter-ui/src/views/secondarysales/relation/generatecontract.vue

@ -82,7 +82,7 @@
<div class="title">附件</div> <div class="title">附件</div>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<div class="span-sty">合同</div> <div class="span-sty">二次销售合同</div>
<el-form-item> <el-form-item>
<uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.contractFiles" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/> <uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.contractFiles" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item> </el-form-item>
@ -90,7 +90,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<div class="span-sty">证件</div> <div class="span-sty">其他证件</div>
<el-form-item> <el-form-item>
<uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.otherFiles" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/> <uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.otherFiles" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item> </el-form-item>
@ -171,8 +171,12 @@
<script> <script>
import req from '@/api/secondarysales/secondarysales' import req from '@/api/secondarysales/secondarysales'
import { pickCustomer, typeValues } from '@/api/Common/dictcommons' import { pickCustomer, typeValues } from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
export default { export default {
components: {
uploadImg
},
data() { data() {
return { return {
viewTitle: '', viewTitle: '',

10
anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue

@ -286,10 +286,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -301,7 +305,7 @@
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否追偿</div> <div class="span-sty">是否追偿</div>
<el-form-item> <el-form-item>
<el-radio-group class="addinputInfo" v-model="formobj.loanSecondarySalesCost.isRecovery"> <el-radio-group class="addinputInfo" disabled v-model="formobj.loanSecondarySalesCost.isRecovery">
<el-radio label="1"></el-radio> <el-radio label="1"></el-radio>
<el-radio label="0"></el-radio> <el-radio label="0"></el-radio>
</el-radio-group> </el-radio-group>
@ -416,6 +420,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
rules: {} rules: {}
@ -722,6 +727,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
} }
this.submitdisabled = false this.submitdisabled = false

10
anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue

@ -241,10 +241,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -254,7 +258,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否年检</div> <div class="span-sty">是否追偿</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
@ -353,6 +357,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
rules: {} rules: {}
@ -485,6 +490,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
} }
this.$emit('doback') this.$emit('doback')

9
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue

@ -244,10 +244,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -257,7 +261,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否年检</div> <div class="span-sty">是否追偿</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
@ -395,6 +399,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
rules: {}, rules: {},

9
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue

@ -244,10 +244,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -257,7 +261,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否年检</div> <div class="span-sty">是否追偿</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
@ -395,6 +399,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
rules: {}, rules: {},

9
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue

@ -285,10 +285,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -300,7 +304,7 @@
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否追偿</div> <div class="span-sty">是否追偿</div>
<el-form-item> <el-form-item>
<el-radio-group class="addinputInfo" v-model="formobj.loanSecondarySalesCost.isRecovery"> <el-radio-group class="addinputInfo" disabled v-model="formobj.loanSecondarySalesCost.isRecovery">
<el-radio label="1"></el-radio> <el-radio label="1"></el-radio>
<el-radio label="0"></el-radio> <el-radio label="0"></el-radio>
</el-radio-group> </el-radio-group>
@ -415,6 +419,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
rules: {} rules: {}

9
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue

@ -241,10 +241,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="12">
<div class="span-sty">购方应交总金额</div> <div class="span-sty">购方应交总金额</div>
<el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ purchaserMoney }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="12">
<div class="span-sty" style="color: red">竞价结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.result }}</span></el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -254,7 +258,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">是否年检</div> <div class="span-sty">是否追偿</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item> <el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.isRecovery }}</span></el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
@ -353,6 +357,7 @@ export default {
unexpiredMoney: '', unexpiredMoney: '',
useOrgSid: '', useOrgSid: '',
userSid: '', userSid: '',
result: '',
wheFundOccMoney: '' wheFundOccMoney: ''
}, },
// //

2
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java

@ -100,5 +100,7 @@ public class LoanSecondarySalesApplyDetailsVo {
@ApiModelProperty("是否显示竞价按钮") @ApiModelProperty("是否显示竞价按钮")
private boolean validate; private boolean validate;
private String result;
} }

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.java

@ -45,4 +45,6 @@ public interface LoanOutboundApplyMapper extends BaseMapper<LoanOutboundApply> {
int updateLedgerStockStateBySid(@Param("key") String key, @Param("value") String value, @Param("date") String date, @Param("ledgerSid") String ledgerSid); int updateLedgerStockStateBySid(@Param("key") String key, @Param("value") String value, @Param("date") String date, @Param("ledgerSid") String ledgerSid);
String selectByBusVinSid(String busVinSid); String selectByBusVinSid(String busVinSid);
LoanOutboundApply selectByApplySid(String sid);
} }

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.xml

@ -205,4 +205,8 @@
se.receivablesSid in (select sid from anrui_riskcenter.loan_repayment_plan_details where busVinSid = #{busVinSid}) se.receivablesSid in (select sid from anrui_riskcenter.loan_repayment_plan_details where busVinSid = #{busVinSid})
AND se.auditState = '3' and se.receivablesName in('月还','预计资方结清费用') AND se.auditState = '3' and se.receivablesName in('月还','预计资方结清费用')
</select> </select>
<select id="selectByApplySid" resultType="com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApply">
select * from loan_out_bound_apply where applySid = #{sid}
</select>
</mapper> </mapper>

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyService.java

@ -1659,4 +1659,8 @@ public class LoanOutboundApplyService extends MybatisBaseService<LoanOutboundApp
WordUtils.doc2pdf(wordPath, targetPath, pdfName, userName); WordUtils.doc2pdf(wordPath, targetPath, pdfName, userName);
return "/template/" + dateStr + "/" + pdfName; return "/template/" + dateStr + "/" + pdfName;
} }
public LoanOutboundApply selectByApplySid(String sid) {
return baseMapper.selectByApplySid(sid);
}
} }

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java

@ -26,4 +26,6 @@ public interface LoanReturnVehLedgerMapper extends BaseMapper<LoanReturnVehLedge
IPage<LoanReturnVehLedgerVo> selectPageVo(IPage<LoanReturnVehLedger> page, @Param(Constants.WRAPPER) QueryWrapper<LoanReturnVehLedgerQuery> qw); IPage<LoanReturnVehLedgerVo> selectPageVo(IPage<LoanReturnVehLedger> page, @Param(Constants.WRAPPER) QueryWrapper<LoanReturnVehLedgerQuery> qw);
LoanReturnVehLedger selectByPSid(String sid); LoanReturnVehLedger selectByPSid(String sid);
LoanReturnVehLedger selVehLedgerBySid(String ledgerSid);
} }

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml

@ -40,4 +40,10 @@
from loan_return_veh_ledger from loan_return_veh_ledger
where pSid = #{sid} where pSid = #{sid}
</select> </select>
<select id="selVehLedgerBySid" resultType="com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger">
select *
from loan_return_veh_ledger
where sid = #{ledgerSid}
</select>
</mapper> </mapper>

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java

@ -264,4 +264,8 @@ public class LoanReturnVehLedgerService extends MybatisBaseService<LoanReturnVeh
public LoanReturnVehLedger selectByPSid(String sid) { public LoanReturnVehLedger selectByPSid(String sid) {
return baseMapper.selectByPSid(sid); return baseMapper.selectByPSid(sid);
} }
public LoanReturnVehLedger selVehLedgerBySid(String ledgerSid) {
return baseMapper.selVehLedgerBySid(ledgerSid);
}
} }

51
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java

@ -24,8 +24,7 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysnotice.PushNoticeQuery; import com.yxt.anrui.portal.api.sysnotice.*;
import com.yxt.anrui.portal.api.sysnotice.SysNoticeFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
@ -46,6 +45,7 @@ import com.yxt.anrui.riskcenter.api.loanreturninboundtrailer.LoanReturnInboundTr
import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger; import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger;
import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.*; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.*;
import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable.*; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable.*;
import com.yxt.anrui.riskcenter.api.loansecondarysalesbidding.LoanSecondarySalesBidding;
import com.yxt.anrui.riskcenter.api.loansecondarysalesbidding.LoanSecondarySalesBiddingDto; import com.yxt.anrui.riskcenter.api.loansecondarysalesbidding.LoanSecondarySalesBiddingDto;
import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost;
import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo;
@ -86,6 +86,9 @@ import java.math.BigDecimal;
import java.text.DateFormat; import java.text.DateFormat;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
import java.util.concurrent.*; import java.util.concurrent.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -500,6 +503,28 @@ public class LoanSecondarySalesApplyService extends MybatisBaseService<LoanSecon
if (loanSecondarySalesCost != null) { if (loanSecondarySalesCost != null) {
if ((loanSecondarySalesCost.getVehicleEvaluation() == null ? BigDecimal.ZERO : loanSecondarySalesCost.getVehicleEvaluation()).compareTo(loanSecondarySalesCost.getVehPrice()) > 0) { if ((loanSecondarySalesCost.getVehicleEvaluation() == null ? BigDecimal.ZERO : loanSecondarySalesCost.getVehicleEvaluation()).compareTo(loanSecondarySalesCost.getVehPrice()) > 0) {
variables.put("isTrue", true); variables.put("isTrue", true);
LoanSecondarySalesBidding loanSecondarySalesBidding = new LoanSecondarySalesBidding();
loanSecondarySalesBidding.setCreateBySid(bv.getUserSid());
loanSecondarySalesBidding.setMainSid(bv.getBusinessSid());
loanSecondarySalesBidding.setOrgSidPath(loanSecondarySalesApply.getOrgSidPath());
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(loanSecondarySalesApply.getOrgSidPath()).getData();
loanSecondarySalesBidding.setUseOrgSid(useOrgSid);
//创建组织使用组织
ResultBean<SysOrganizationVo> organizationResultBean = sysOrganizationFeign.fetchBySid(useOrgSid);
if (organizationResultBean.getData() != null) {
loanSecondarySalesBidding.setUseOrgName(organizationResultBean.getData().getName());
}
//根据用户sid查询人员姓名
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(bv.getUserSid());
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
loanSecondarySalesBidding.setCreateByName(userVoResultBean.getData().getName());
loanSecondarySalesBidding.setPrice(new BigDecimal(price));
loanSecondarySalesBiddingService.insert(loanSecondarySalesBidding);
} else { } else {
variables.put("isTrue", false); variables.put("isTrue", false);
} }
@ -1194,6 +1219,28 @@ public class LoanSecondarySalesApplyService extends MybatisBaseService<LoanSecon
} }
} }
//查询竞价结果
SysNoticeDetailsVo sysNotice = sysNoticeFeign.getDetails(sid).getData();
if(sysNotice != null){
//查询截止日期,是否小于或等于当前日期
String validityDate = sysNotice.getValidityDate();
// 解析截止日期(假设格式为 yyyy-MM-dd)
LocalDate noticeExpiryDate = LocalDate.parse(validityDate);
LocalDate currentDate = LocalDate.now();
// 判断是否已过期(截止日期 <= 当前日期)
if (noticeExpiryDate.isBefore(currentDate) || noticeExpiryDate.isEqual(currentDate)) {
LoanSecondarySalesBidding loanSecondarySalesBidding = loanSecondarySalesBiddingService.selectByMainSid(sid);
Date createTime = loanSecondarySalesBidding.getCreateTime();
LocalDate localDate = createTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
String formattedDate = localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
String result = loanSecondarySalesBidding.getCreateByName()+"在"+formattedDate+"竞价"+loanSecondarySalesBidding.getPrice()+"元";
loanSecondarySalesApplyDetailsVo.setResult(result);
}
}
} }
return rb.success().setData(loanSecondarySalesApplyDetailsVo); return rb.success().setData(loanSecondarySalesApplyDetailsVo);
} }

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingMapper.java

@ -23,4 +23,6 @@ public interface LoanSecondarySalesBiddingMapper extends BaseMapper<LoanSecondar
String getPrice(String sid); String getPrice(String sid);
String getVinNo(String sid); String getVinNo(String sid);
LoanSecondarySalesBidding selectBySidSort(String sid);
} }

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingMapper.xml

@ -33,4 +33,9 @@
group by lv.mainSid) ss on ss.mainSid = la.sid group by lv.mainSid) ss on ss.mainSid = la.sid
where la.sid = #{sid} where la.sid = #{sid}
</select> </select>
<select id="selectBySidSort"
resultType="com.yxt.anrui.riskcenter.api.loansecondarysalesbidding.LoanSecondarySalesBidding">
select * from loan_secondary_sales_bidding where mainSid = #{sid} order by id desc limit 1
</select>
</mapper> </mapper>

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesbidding/LoanSecondarySalesBiddingService.java

@ -50,7 +50,7 @@ public class LoanSecondarySalesBiddingService extends MybatisBaseService<LoanSec
public ResultBean saveBidding(LoanSecondarySalesBiddingDto dto) { public ResultBean saveBidding(LoanSecondarySalesBiddingDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
LoanSecondarySalesBidding loanSecondarySalesBidding = new LoanSecondarySalesBidding(); LoanSecondarySalesBidding loanSecondarySalesBidding = new LoanSecondarySalesBidding();
loanSecondarySalesBidding.setCreateBySid(dto.getMainSid()); loanSecondarySalesBidding.setCreateBySid(dto.getUserSid());
loanSecondarySalesBidding.setMainSid(dto.getMainSid()); loanSecondarySalesBidding.setMainSid(dto.getMainSid());
loanSecondarySalesBidding.setOrgSidPath(dto.getOrgPath()); loanSecondarySalesBidding.setOrgSidPath(dto.getOrgPath());
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData(); String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData();
@ -128,4 +128,8 @@ public class LoanSecondarySalesBiddingService extends MybatisBaseService<LoanSec
} }
return rb.success().setData(salesBiddingVo); return rb.success().setData(salesBiddingVo);
} }
public LoanSecondarySalesBidding selectByMainSid(String sid) {
return baseMapper.selectBySidSort(sid);
}
} }

63
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java

@ -4,7 +4,12 @@ import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer; import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.crm.api.crmcustomertemp.CustomerSecondSalesDto; import com.yxt.anrui.crm.api.crmcustomertemp.CustomerSecondSalesDto;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApply;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApplyDto;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.OutboundVinListDto;
import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger;
import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply;
import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost;
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.FileQuery; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.FileQuery;
@ -12,6 +17,9 @@ import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySale
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto;
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo;
import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo;
import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.SalesVehVo;
import com.yxt.anrui.riskcenter.biz.loanoutboundapply.LoanOutboundApplyService;
import com.yxt.anrui.riskcenter.biz.loanreturnvehledger.LoanReturnVehLedgerService;
import com.yxt.anrui.riskcenter.biz.loansecondarysalesapply.LoanSecondarySalesApplyService; import com.yxt.anrui.riskcenter.biz.loansecondarysalesapply.LoanSecondarySalesApplyService;
import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostMapper; import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostMapper;
import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostService; import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostService;
@ -44,6 +52,10 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
private LoanSecondarySalesCostMapper loanSecondarySalesCostMapper; private LoanSecondarySalesCostMapper loanSecondarySalesCostMapper;
@Autowired @Autowired
private FileUploadComponent fileUploadComponent; private FileUploadComponent fileUploadComponent;
@Autowired
private LoanOutboundApplyService loanOutboundApplyService;
@Autowired
private LoanReturnVehLedgerService loanReturnVehLedgerService;
public ResultBean saveSalesCustomer(LoanSecondarySalesCustomerDto dto) { public ResultBean saveSalesCustomer(LoanSecondarySalesCustomerDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
@ -106,6 +118,10 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
} }
baseMapper.updateById(loanSecondarySalesCustomer); baseMapper.updateById(loanSecondarySalesCustomer);
} }
if(loanSecondarySalesApply != null){
pushVehOutBound(loanSecondarySalesApply);
}
return rb.success(); return rb.success();
} }
@ -132,6 +148,7 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
salesInitVo.setSaleDate(loanSecondarySalesApply.getCloseDate()); salesInitVo.setSaleDate(loanSecondarySalesApply.getCloseDate());
LoanSecondarySalesCost loanSecondarySalesCost = loanSecondarySalesCostMapper.selectMainSid(sid); LoanSecondarySalesCost loanSecondarySalesCost = loanSecondarySalesCostMapper.selectMainSid(sid);
salesInitVo.setSalePrice(loanSecondarySalesCost.getVehPrice().toString()); salesInitVo.setSalePrice(loanSecondarySalesCost.getVehPrice().toString());
if(loanSecondarySalesCustomer != null){
String contractFiles = loanSecondarySalesCustomer.getContractFiles(); String contractFiles = loanSecondarySalesCustomer.getContractFiles();
String otherFiles = loanSecondarySalesCustomer.getOtherFiles(); String otherFiles = loanSecondarySalesCustomer.getOtherFiles();
if(StringUtils.isNotBlank(contractFiles)){ if(StringUtils.isNotBlank(contractFiles)){
@ -156,6 +173,52 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
salesInitVo.setOtherFiles(otherFileList); salesInitVo.setOtherFiles(otherFileList);
} }
}
return rb.success().setData(salesInitVo); return rb.success().setData(salesInitVo);
} }
private void pushVehOutBound(LoanSecondarySalesApply loanSecondarySalesApply) {
LoanOutboundApply loanOutboundApply = loanOutboundApplyService.selectByApplySid(loanSecondarySalesApply.getSid());
if(loanOutboundApply == null){
LoanOutboundApplyDto dto = new LoanOutboundApplyDto();
List<OutboundVinListDto> vinList = new ArrayList<>();
BeanUtil.copyProperties(loanSecondarySalesApply, dto);
dto.setApplySid(loanSecondarySalesApply.getSid());
dto.setBorrowerName(loanSecondarySalesApply.getLoanName());
dto.setBorrowerSid(loanSecondarySalesApply.getLoanSid());
dto.setCustomer(loanSecondarySalesApply.getCustomerName());
dto.setDisposalKey("03");
dto.setDisposal("二次销售");
if (org.apache.commons.lang3.StringUtils.isNotBlank(loanSecondarySalesApply.getCustomerSid())) {
dto.setNewCustomerSid(loanSecondarySalesApply.getCustomerSid());
CrmCustomerTempVo customerTempVo = crmCustomerTempFeign.fetchSid(loanSecondarySalesApply.getCustomerSid()).getData();
if (null != customerTempVo) {
if (StringUtils.isNotBlank(customerTempVo.getMobile())) {
dto.setPhoneNum(customerTempVo.getMobile());
}
}
}
if (StringUtils.isNotBlank(loanSecondarySalesApply.getCustomerName())) {
dto.setNewCustomer(loanSecondarySalesApply.getCustomerName());
}
List<SalesVehVo> vinLists = loanSecondarySalesVehService.selByMainSid(loanSecondarySalesApply.getSid());
if (!vinLists.isEmpty()) {
vinLists.forEach(v -> {
OutboundVinListDto outboundVinListDto = new OutboundVinListDto();
BeanUtil.copyProperties(v, outboundVinListDto);
LoanReturnVehLedger loanReturnVehLedger = loanReturnVehLedgerService.selVehLedgerBySid(v.getLedgerSid());
if (null != loanReturnVehLedger) {
if (StringUtils.isNotBlank(loanReturnVehLedger.getLocation())) {
outboundVinListDto.setLocation(loanReturnVehLedger.getLocation());
}
}
vinList.add(outboundVinListDto);
});
}
dto.setVinList(vinList);
loanOutboundApplyService.saveOutbound(dto);
}
}
} }

111
anrui-system-ui/src/views/Home/Home.vue

@ -50,7 +50,10 @@
<el-col :span="10"> <el-col :span="10">
<div class="grid-content bg-rtop"> <div class="grid-content bg-rtop">
<img class="anrui" src="@/assets/home/anrui.png"/> <img class="anrui" src="@/assets/home/anrui.png"/>
<p class="rt_title">通知公告</p> <div>
<p class="rt_title_left">通知公告</p>
<p class="rt_title_right" @click="lookInform">更多</p>
</div>
<ul> <ul>
<li v-for="(item, index) in noticeandannouncement" :key="index" @click="lookInfo(item)"> <li v-for="(item, index) in noticeandannouncement" :key="index" @click="lookInfo(item)">
<img class="rtImg" src="../../assets/home/notice.png"/> <img class="rtImg" src="../../assets/home/notice.png"/>
@ -127,6 +130,45 @@
</el-row> </el-row>
</el-form> </el-form>
</el-dialog> </el-dialog>
<el-dialog title="通知公告列表" :visible.sync="informVisible" width="80%">
<div>
<el-form ref="multipleTable" :inline="true" :model="informList" class="vinNoForm" label-width="100px">
<el-form-item label="标题">
<el-input v-model="informList.params.title" placeholder="" clearable/>
</el-form-item>
<el-form-item label="发布日期">
<el-date-picker v-model="informList.params.createDateStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="informList.params.createDateEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="informList.params.state" clearable filterable>
<el-option v-for="item in state_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="selectInform">查询</el-button>
</el-form-item>
</el-form>
</div>
<el-table :key="informKey" v-loading="informLoading" :data="listByinform" border fit highlight-current-row style="width: 100%;">
<el-table-column :index="informindexMethod" align="center" label="序号" type="index" width="80"/>
<el-table-column label="标题" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="lookInformation(scope.row)">{{ scope.row.title }}</span>
</template>
</el-table-column>
<el-table-column prop="createDate" label="发布时间" align="center" width="120" />
<el-table-column prop="validityDate" label="有效期至" align="center" width="120" />
<el-table-column prop="stateValue" label="状态" align="center" width="80" />
<el-table-column prop="topping" label="是否置顶" align="center" width="120" />
</el-table>
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="listByinform.length > 0" :limit.sync="informList.size" :page.sync="informList.current" :total="informList.total" class="pagination" @pagination="getInformList"/>
</div>
</el-dialog>
</div> </div>
</template> </template>
@ -135,7 +177,7 @@ import { getStorage, removeStorage } from '@/utils/auth'
import User from '@/api/User/login.js' import User from '@/api/User/login.js'
import { getLists, getTodoNum } from '@/api/system/home/home' import { getLists, getTodoNum } from '@/api/system/home/home'
import { getToBeReadNum } from '@/api/flow/read' import { getToBeReadNum } from '@/api/flow/read'
import { details } from '@/api/notificationannouncement/notificationannouncement' import { details, listPage } from '@/api/notificationannouncement/notificationannouncement'
export default { export default {
data() { data() {
@ -210,7 +252,33 @@ export default {
typeKey: '', typeKey: '',
validityDate: '', validityDate: '',
userSid: '' userSid: ''
},
informVisible: false,
informKey: 0,
informLoading: false,
listByinform: [],
informList: {
current: 1,
size: 10,
total: 0,
params: {
createDateEnd: '',
createDateStart: '',
state: '',
title: '',
topping: ''
} }
},
state_list: [
{
dictKey: '1',
dictValue: '开启'
},
{
dictKey: '2',
dictValue: '关闭'
}
]
} }
}, },
beforeCreate() { beforeCreate() {
@ -335,6 +403,34 @@ export default {
} }
}) })
}, },
lookInform() {
this.informVisible = true
this.selectInform()
},
selectInform() {
this.informList.current = 1
this.getInformList()
},
informindexMethod(index) {
var pagestart = (this.informList.current - 1) * this.informList.size
var pageindex = index + 1 + pagestart
return pageindex
},
getInformList() {
listPage(this.informList).then((response) => {
this.informLoading = false
if (response.success) {
this.listByinform = response.data.records
this.informList.total = response.data.total
} else {
this.listByinform = []
this.informList.total = 0
}
})
},
lookInformation(row) {
this.lookInfo({ sid: row.sid, pcUrl: row.pcUrl })
},
todowork() { todowork() {
window.open('/#/todo' + '?token=' + getStorage(), '_blank') window.open('/#/todo' + '?token=' + getStorage(), '_blank')
// this.$router.push({ path: '/todo' + '?token=' + getStorage() }) // this.$router.push({ path: '/todo' + '?token=' + getStorage() })
@ -530,7 +626,7 @@ p {
height: 40px; height: 40px;
} }
.rt_title { .rt_title_left {
position: absolute; position: absolute;
top: 10px; top: 10px;
left: 15px; left: 15px;
@ -539,6 +635,15 @@ p {
font-weight: 600; font-weight: 600;
color: #191919; color: #191919;
} }
.rt_title_right {
position: absolute;
top: 10px;
right: 15px;
font-size: 18px;
font-family: SourceHanSerifCN;
font-weight: 600;
color: #191919;
}
ul { ul {
margin: 0px auto; margin: 0px auto;

Loading…
Cancel
Save