diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java index ae634f20bd..c82bb2beca 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java @@ -913,7 +913,7 @@ public class BusDeliveredApplyService extends MybatisBaseService trailerList = baseTrailerFeign.trailerList(busDeliveredApplyDetails.getVinSid(), busDeliveredApply.getContractNo()); - if(trailerList.getData() != null){ + if (trailerList.getData() != null) { if (trailerList.getData().getList().isEmpty()) { appCarListVo.setShowHandCarBtn(false); } else { appCarListVo.setShowHandCarBtn(true); } - }else{ + } else { appCarListVo.setShowHandCarBtn(false); } @@ -2318,14 +2318,14 @@ public class BusDeliveredApplyService extends MybatisBaseService carList = dto.getCarList(); if (!carList.isEmpty()) { List vinNoLists = new ArrayList<>(); - List vinSidLists = baseMapper.selectSid(dto.getContractId(),dto.getSid()); + List vinSidLists = baseMapper.selectSid(dto.getContractId(), dto.getSid()); //判断合同编号是否一致 for (int a = 0; a < carList.size(); a++) { BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(dto.getContractId(), carList.get(a).getVinSid()); if (busSalesOrderVehicle == null) { return rb.setMsg("所选车辆与合同编号不匹配"); } - if(vinSidLists.contains(carList.get(a).getVinSid())){ + if (vinSidLists.contains(carList.get(a).getVinSid())) { vinNoLists.add(carList.get(a).getVinSid()); } } @@ -2335,9 +2335,9 @@ public class BusDeliveredApplyService extends MybatisBaseService num) { return rb.setMsg("本次出库为该订单最后一批出库,还存在未赠送的套餐,不允许提交"); @@ -2602,7 +2602,7 @@ public class BusDeliveredApplyService extends MybatisBaseService receiveSeleteVoList = receiveInvoiceVoResultBean.getData().getReceiveSeleteVoList(); List voList = Optional.ofNullable(receiveSeleteVoList).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinSelectVo.class)).collect(Collectors.toList()); - voList.removeAll(Collections.singleton(null)); - List finSelectVos = new ArrayList<>(); - if (!voList.isEmpty()) { - for (FinSelectVo finSelectVo : voList) { - String receivablesSid = finSelectVo.getReceivablesSid(); - FinSelectedReceivablesDetailed data = finSelectedReceivablesDetailedFeign.fetchByReceivablesSidLimt(receivablesSid).getData(); - if (data != null) { - String collSid = data.getCollSid(); - if (StringUtils.isNotBlank(data.getSubscriptionDate())) { - finSelectVo.setSubscriptionDate(data.getSubscriptionDate()); - } - FinCollectionConfirmationDetailsVo confirmationDetailsVo = finCollectionConfirmationFeign.fetchBySid(collSid).getData(); - if (null != confirmationDetailsVo) { - if (StringUtils.isNotBlank(confirmationDetailsVo.getCollectionBank())) { - finSelectVo.setCollectionBank(confirmationDetailsVo.getCollectionBank()); - } - if (StringUtils.isNotBlank(confirmationDetailsVo.getReceivingName())) { - finSelectVo.setReceivingName(confirmationDetailsVo.getReceivingName()); - } - if (StringUtils.isNotBlank(confirmationDetailsVo.getPayerName())) { - finSelectVo.setPayerName(confirmationDetailsVo.getPayerName()); - } - if (StringUtils.isNotBlank(confirmationDetailsVo.getCollectionDate())) { - finSelectVo.setCollectionDate(confirmationDetailsVo.getCollectionDate()); - } - } - } - finSelectVos.add(finSelectVo); - } - } - deliveredFinVo.setFinSelectVoList(finSelectVos); + deliveredFinVo.setFinSelectVoList(voList); InvoiceVo invoiceVo = receiveInvoiceVoResultBean.getData().getInvoiceVo(); if (invoiceVo != null) { VinInvoiceVo vinInvoiceVo = new VinInvoiceVo(); diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinDeliveredFinVo.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinDeliveredFinVo.java new file mode 100644 index 0000000000..aca3e2b583 --- /dev/null +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinDeliveredFinVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.fin.api.finvehicleinvoice; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Administrator + * @description + * @date 2023/8/10 13:34 + */ +@Data +public class FinDeliveredFinVo { + + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("销售类型") + private String paymentMethod; + @ApiModelProperty("合同编号") + private String contractNo; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("车型") + private String modelName; + @ApiModelProperty("款项情况") + private List finSelectVoList = new ArrayList<>(); + @ApiModelProperty("发票情况") + private FinVinInvoiceVo vinInvoiceVo = new FinVinInvoiceVo(); + +} diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinSelectInvoiceVo.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinSelectInvoiceVo.java new file mode 100644 index 0000000000..552952e2a0 --- /dev/null +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinSelectInvoiceVo.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.fin.api.finvehicleinvoice; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/10 13:35 + */ +@Data +public class FinSelectInvoiceVo { + + @ApiModelProperty("款项名称") + private String receivablesName; + @ApiModelProperty("付款方式") + private String collectionTypeValue; + @ApiModelProperty("已收金额") + private String subscriptionMoneyAll; + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("付款时间") + private String subscriptionDate; + @ApiModelProperty("收款账号") + private String collectionBankNum; + @ApiModelProperty("收款账户") + private String receivingName; + @ApiModelProperty("付款人") + private String payerName; + @ApiModelProperty("收款时间") + private String collectionDate; + // @ApiModelProperty("应收金额") +// private String reveivableMoney; + // @ApiModelProperty("未收金额") +// private String notSubscriptionMoney; +} diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java index c3a8eb2bb3..a68ad29b53 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java @@ -118,5 +118,10 @@ public interface FinVehicleInvoiceFeign { @ResponseBody ResultBean selectByVinAndContractNo(@RequestParam("vinSid") String vinSid, @RequestParam("contractNo") String contractNo); + @ApiOperation("查看车辆的款票情况") + @GetMapping("/deliveredFinSelect") + @ResponseBody + ResultBean deliveredFinSelect(@RequestParam("contractNo") String contractNo, @RequestParam("vinSid") String vinSid); + } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java index 417998f3a9..e4826f9168 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java @@ -129,4 +129,9 @@ public class FinVehicleInvoiceFeignFallback implements FinVehicleInvoiceFeign { return null; } + @Override + public ResultBean deliveredFinSelect(String contractNo, String vinSid) { + return null; + } + } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVinInvoiceVo.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVinInvoiceVo.java new file mode 100644 index 0000000000..3d5fb2911e --- /dev/null +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVinInvoiceVo.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.fin.api.finvehicleinvoice; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/10 13:34 + */ +@Data +public class FinVinInvoiceVo { + //开票名称 + private String invoicingName; + //税号 + private String invoiceNo; + //开票单位 + private String invoiceTitle; + //开票类型 + private String invoiceType; + //开票状态 + private String billingState; + //开票金额 + private String invoiceAmount; + //开票日期 + private String invoiceDate; + //移交状态 + private String transferState; + @ApiModelProperty("地址") + private String address; + @ApiModelProperty("联系电话") + private String telPhone; + @ApiModelProperty("开户行") + private String openingBank; + @ApiModelProperty("银行账号") + private String bankNum; + @ApiModelProperty("接收人") + private String recipient; + @ApiModelProperty("移交日期") + private String transferTime; +} diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java index ff25c31eef..fd063e76eb 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java @@ -68,4 +68,6 @@ public interface FinVehicleInvoiceMapper extends BaseMapper { @Update("update fin_vehicle_invoice set isTakeTicket = '是' where sid = #{sid}") void updateIsLPBySid(String sid); + + List getFinSelectInvoiceVoListByBusVinSid(String busVinSid); } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml index 16a90f3f52..4e50e226b2 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml @@ -260,4 +260,23 @@ where vehicleSid = #{vinSid} and contractNo = #{contractNo} + \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java index 99ab3a9ec4..330f32a34e 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java @@ -249,4 +249,9 @@ public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign { return finVehicleInvoiceService.selectByVinAndContractNo(vinSid, contractNo); } + @Override + public ResultBean deliveredFinSelect(String contractNo, String vinSid) { + return finVehicleInvoiceService.deliveredFinSelect(contractNo,vinSid); + } + } diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java index 2ee839bc21..0ae4d5bfc2 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java @@ -1,6 +1,7 @@ package com.yxt.anrui.fin.biz.finvehicleinvoice; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo; @@ -11,14 +12,27 @@ import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo; import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign; import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo; import com.yxt.anrui.base.common.enums.CertificState; +import com.yxt.anrui.buscenter.api.busdeliveredapply.DeliveredFinVo; +import com.yxt.anrui.buscenter.api.busdeliveredapply.FinSelectVo; +import com.yxt.anrui.buscenter.api.busdeliveredapply.VinInvoiceVo; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; +import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordEnum; import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsDto; import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsFeign; import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo; +import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationDetailsVo; +import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailed; +import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo; +import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo; import com.yxt.anrui.fin.api.finvehicleinvoice.*; import com.yxt.anrui.fin.biz.finbillfile.FinBillFileService; +import com.yxt.anrui.fin.biz.fincollectionconfirmation.FinCollectionConfirmationService; +import com.yxt.anrui.fin.biz.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedService; +import com.yxt.anrui.fin.biz.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedService; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgByUserVo; @@ -40,6 +54,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.*; +import java.util.stream.Collectors; /** * Project: anrui-fin(财务管理)
@@ -82,6 +97,15 @@ public class FinVehicleInvoiceService extends MybatisBaseService listPage(PagerQuery pq) { FinVehicleInvoiceQuery query = pq.getParams(); @@ -406,7 +430,7 @@ public class FinVehicleInvoiceService extends MybatisBaseService selectByVinSids(String vinSid) { ResultBean rb = ResultBean.fireFail(); VehicleInvoiceVo vehicleInvoiceVo = baseMapper.selectByVinSids(vinSid); - if(StringUtils.isNotBlank(vehicleInvoiceVo.getFilePath())){ + if (StringUtils.isNotBlank(vehicleInvoiceVo.getFilePath())) { List filePathList = Arrays.asList(vehicleInvoiceVo.getFilePath().split(",")); vehicleInvoiceVo.setInvoiceImages(filePathList); } @@ -434,11 +458,11 @@ public class FinVehicleInvoiceService extends MybatisBaseService deliveredFinSelect(String contractNo, String vinSid) { + ResultBean rb = ResultBean.fireFail(); + FinDeliveredFinVo deliveredFinVo = new FinDeliveredFinVo(); + //查询销售订单 + ResultBean resultBean = busSalesOrderFeign.getSaleOrderDetailsByContractNo(contractNo); + AppOrderDetailsVo appOrderDetailsVo = resultBean.getData(); + //根据合同号和车辆sid查询车辆 + BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(contractNo, vinSid).getData(); + if (busSalesOrderVehicle != null) { + deliveredFinVo.setVinNo(busSalesOrderVehicle.getLinkNo()); + deliveredFinVo.setPaymentMethod(appOrderDetailsVo.getPayType()); + deliveredFinVo.setContractNo(contractNo); + deliveredFinVo.setCustomerName(appOrderDetailsVo.getName()); + deliveredFinVo.setModelName(appOrderDetailsVo.getModelInfo().getModelName()); + //根据销售订单车辆查询款项情况 + ResultBean receiveInvoiceVoResultBean = finUncollectedReceivablesDetailedService.receivedSelect(busSalesOrderVehicle.getSid(), busSalesOrderVehicle.getLinkSid()); + if (receiveInvoiceVoResultBean.getData() != null) { + List finSelectVoList = baseMapper.getFinSelectInvoiceVoListByBusVinSid(busSalesOrderVehicle.getSid()); + finSelectVoList.removeAll(Collections.singleton(null)); + if (!finSelectVoList.isEmpty()) { + deliveredFinVo.setFinSelectVoList(finSelectVoList); + } + InvoiceVo invoiceVo = receiveInvoiceVoResultBean.getData().getInvoiceVo(); + if (invoiceVo != null) { + FinVinInvoiceVo vinInvoiceVo = new FinVinInvoiceVo(); + BeanUtil.copyProperties(invoiceVo, vinInvoiceVo); + deliveredFinVo.setVinInvoiceVo(vinInvoiceVo); + } + } + } + return rb.success().setData(deliveredFinVo); + } } \ No newline at end of file diff --git a/anrui-riskcenter-ui/src/components/publicPage/financialscheme.vue b/anrui-riskcenter-ui/src/components/publicPage/financialscheme.vue index fbb5939dd6..fa122b42b8 100644 --- a/anrui-riskcenter-ui/src/components/publicPage/financialscheme.vue +++ b/anrui-riskcenter-ui/src/components/publicPage/financialscheme.vue @@ -26,10 +26,10 @@
*主车发票价 - 配件 - 挂车 - 保险 - 购置税 + 配件 + 挂车 + 保险 + 购置税
@@ -86,9 +86,7 @@
贴息用途
- - - + {{ finance.factoryDiscountUse }}
@@ -114,7 +112,7 @@
贴息抵车款
- {{ finance.discountCar }} +
@@ -389,21 +387,8 @@ export default { dealWay_list: [], policy_list: [], other_list: [], - factoryDiscountUse_list: [], finance: {}, rules: { - // mainVehicleAmount: [{ required: true, message: '主车发票价不能为空', trigger: 'blur' }], - // downPayAmount: [{ required: true, message: '首付金额不能为空', trigger: 'blur' }], - // loanPeriod: [{ required: true, message: '产品期数不能为空', trigger: 'blur' }], - // bondAmount: [{ required: true, message: '贷款保证金不能为空', trigger: 'blur' }], - // factoryDiscount: [{ required: true, message: '厂家贴息不能为空', trigger: 'blur' }], - // loanPayMoney: [{ required: true, message: '月还金额不能为空', trigger: 'blur' }], - // otherPolicyAmount: [{ required: true, message: '贷款金额不能为空', trigger: 'blur' }], - // otherPolicyPeriod: [{ required: true, message: '期数不能为空', trigger: 'blur' }], - // otherPolicyMonthlyRepay: [{ required: true, message: '月还金额不能为空', trigger: 'blur' }], - // returnTime: [{ required: true, message: '预计首期还款日不能为空', trigger: 'blur' }], - // serviceAmount: [{ required: true, message: '服务费不能为空', trigger: 'blur' }], - // factoryDiscountUse: [{ required: true, message: '厂家贴息用途不能为空', trigger: 'blur' }] } } }, @@ -422,11 +407,6 @@ export default { this.dealWay_list = resp.data } }) - typeValues({ type: 'factoryDiscountUse' }).then((resp) => { - if (resp.success) { - this.factoryDiscountUse_list = resp.data - } - }) }, methods: { // 输入数字正则 @@ -480,22 +460,54 @@ export default { }, // 主方案 -- 融资项目总额 financingProject() { - if (this.finance.mainVehicleAmount !== '') { + if (!this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && !this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) - if (this.finance.mainVehicleAmount !== '' && this.finance.accessoriesAmountCb) { - this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) - } - if (this.finance.mainVehicleAmount !== '' && this.finance.accessoriesAmountCb && this.finance.trailerAmountCb) { - this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) - } - if (this.finance.mainVehicleAmount !== '' && this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && this.finance.premiumCb) { - this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) - } - if (this.finance.mainVehicleAmount !== '' && this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && this.finance.premiumCb && this.finance.purchaseTaxCb) { - this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) - } - } else { - this.finance.loanTotal = '' + } else if (this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && !this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + } else if (this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && !this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 挂车 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + } else if (this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 保险 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.premium)) + } else if (this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && !this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 挂车 + 保险 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) + } else if (this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && !this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 挂车 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 保险 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (!this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && !this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 挂车 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + } else if (!this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 挂车 + 保险 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) + } else if (!this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && !this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 挂车 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (!this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && !this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 挂车 + 保险 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (!this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && this.finance.premiumCb && !this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 保险 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.premium)) + } else if (!this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 保险 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (!this.finance.accessoriesAmountCb && !this.finance.trailerAmountCb && !this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (this.finance.accessoriesAmountCb && this.finance.trailerAmountCb && this.finance.premiumCb && this.finance.purchaseTaxCb) { + // 融资项目总额 = 主车发票价 + 配件 + 挂车 + 保险 + 购置税 + this.finance.loanTotal = parseInt(this.arguments(this.finance.mainVehicleAmount)) + parseInt(this.arguments(this.finance.accessoriesAmount)) + parseInt(this.arguments(this.finance.trailerAmount)) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) } // 首次计算出或修改融资项目总额 if (this.finance.loanTotal !== '') { @@ -552,7 +564,7 @@ export default { // 计算利息总额 this.finance.loanInterest = parseInt(this.arguments(this.finance.loanInterest)) - parseInt(this.arguments(this.finance.factoryDiscount)) // 计算月还金额 - this.finance.loanPayMoney = (parseInt(this.arguments(this.finance.loanPayMoney)) - parseInt(this.arguments(this.finance.factoryDiscount))) / parseInt(this.arguments(this.finance.loanPeriod)) + this.finance.loanPayMoney = ((parseInt(this.arguments(this.finance.loanPayMoney)) - parseInt(this.arguments(this.finance.factoryDiscount))) / parseInt(this.arguments(this.finance.loanPeriod))).toFixed(0) // 年利率 this.finance.policyYearRatio = (parseFloat(this.rate(this.finance.loanPeriod, this.finance.loanPayMoney, this.finance.loanAmount, 0, 0, 0.01)) * 12).toFixed(2) } @@ -592,18 +604,6 @@ export default { } return rate }, - // 主方案 -- 贴息用途 - changeFactoryDiscountUse(value) { - const choose = this.factoryDiscountUse_list.filter((item) => item.dictValue === value) - if (choose.length > 0 && choose !== null) { - this.finance.factoryDiscountUseKey = choose[0].dictKey - } else { - this.finance.factoryDiscountUseKey = '' - } - if (this.finance.factoryDiscountUseKey === '02') { - this.factoryDiscountInput() - } - }, // 其它融--名称 changeOtherPolicy(value) { const choose = this.other_list.filter((item) => item.name === value) @@ -789,12 +789,14 @@ export default { }, // 应收明细 -- 车辆总价 vehTotalPrice() { - this.finance.vehTotalPrice = parseInt(this.arguments(this.finance.downPayAmounts)) + parseInt(this.arguments(this.finance.serviceAmount)) + parseInt(this.arguments(this.finance.proxyAccidentPremium)) + parseInt(this.arguments(this.finance.registerAmount)) + parseInt(this.arguments(this.finance.operationAmount)) + parseInt(this.arguments(this.finance.vehOtherPrice)) + parseInt(this.arguments(this.finance.otherAmount)) + parseInt(this.arguments(parseInt(this.arguments(this.finance.loanPayMoney)) * parseInt(this.arguments(this.finance.loanPeriod)))) + parseInt(this.arguments(parseInt(this.arguments(this.finance.otherPolicyMonthlyRepay)) * parseInt(this.arguments(this.finance.otherPolicyPeriod)))) - if (!this.finance.premiumCb && this.finance.premium !== '' && this.finance.premium !== null) { + if (!this.finance.premiumCb && this.finance.purchaseTaxCb) { this.finance.vehTotalPrice = parseInt(this.arguments(this.finance.downPayAmounts)) + parseInt(this.arguments(this.finance.serviceAmount)) + parseInt(this.arguments(this.finance.proxyAccidentPremium)) + parseInt(this.arguments(this.finance.registerAmount)) + parseInt(this.arguments(this.finance.operationAmount)) + parseInt(this.arguments(this.finance.vehOtherPrice)) + parseInt(this.arguments(this.finance.otherAmount)) + parseInt(this.arguments(parseInt(this.arguments(this.finance.loanPayMoney)) * parseInt(this.arguments(this.finance.loanPeriod)))) + parseInt(this.arguments(parseInt(this.arguments(this.finance.otherPolicyMonthlyRepay)) * parseInt(this.arguments(this.finance.otherPolicyPeriod)))) + parseInt(this.arguments(this.finance.premium)) - } - if (!this.finance.purchaseTaxCb && this.finance.purchaseTax !== '' && this.finance.purchaseTax !== null) { + } else if (this.finance.premiumCb && !this.finance.purchaseTaxCb) { + this.finance.vehTotalPrice = parseInt(this.arguments(this.finance.downPayAmounts)) + parseInt(this.arguments(this.finance.serviceAmount)) + parseInt(this.arguments(this.finance.proxyAccidentPremium)) + parseInt(this.arguments(this.finance.registerAmount)) + parseInt(this.arguments(this.finance.operationAmount)) + parseInt(this.arguments(this.finance.vehOtherPrice)) + parseInt(this.arguments(this.finance.otherAmount)) + parseInt(this.arguments(parseInt(this.arguments(this.finance.loanPayMoney)) * parseInt(this.arguments(this.finance.loanPeriod)))) + parseInt(this.arguments(parseInt(this.arguments(this.finance.otherPolicyMonthlyRepay)) * parseInt(this.arguments(this.finance.otherPolicyPeriod)))) + parseInt(this.arguments(this.finance.purchaseTax)) + } else if (!this.finance.premiumCb && !this.finance.purchaseTaxCb) { this.finance.vehTotalPrice = parseInt(this.arguments(this.finance.downPayAmounts)) + parseInt(this.arguments(this.finance.serviceAmount)) + parseInt(this.arguments(this.finance.proxyAccidentPremium)) + parseInt(this.arguments(this.finance.registerAmount)) + parseInt(this.arguments(this.finance.operationAmount)) + parseInt(this.arguments(this.finance.vehOtherPrice)) + parseInt(this.arguments(this.finance.otherAmount)) + parseInt(this.arguments(parseInt(this.arguments(this.finance.loanPayMoney)) * parseInt(this.arguments(this.finance.loanPeriod)))) + parseInt(this.arguments(parseInt(this.arguments(this.finance.otherPolicyMonthlyRepay)) * parseInt(this.arguments(this.finance.otherPolicyPeriod)))) + parseInt(this.arguments(this.finance.premium)) + parseInt(this.arguments(this.finance.purchaseTax)) + } else { + this.finance.vehTotalPrice = parseInt(this.arguments(this.finance.downPayAmounts)) + parseInt(this.arguments(this.finance.serviceAmount)) + parseInt(this.arguments(this.finance.proxyAccidentPremium)) + parseInt(this.arguments(this.finance.registerAmount)) + parseInt(this.arguments(this.finance.operationAmount)) + parseInt(this.arguments(this.finance.vehOtherPrice)) + parseInt(this.arguments(this.finance.otherAmount)) + parseInt(this.arguments(parseInt(this.arguments(this.finance.loanPayMoney)) * parseInt(this.arguments(this.finance.loanPeriod)))) + parseInt(this.arguments(parseInt(this.arguments(this.finance.otherPolicyMonthlyRepay)) * parseInt(this.arguments(this.finance.otherPolicyPeriod)))) } return this.finance.vehTotalPrice }, diff --git a/anrui-riskcenter-ui/src/components/publicPage/financialschemeInfo.vue b/anrui-riskcenter-ui/src/components/publicPage/financialschemeInfo.vue index b6804b9ca6..bfaf7c496b 100644 --- a/anrui-riskcenter-ui/src/components/publicPage/financialschemeInfo.vue +++ b/anrui-riskcenter-ui/src/components/publicPage/financialschemeInfo.vue @@ -1,14 +1,8 @@