|
@@ -0,0 +1,760 @@
|
|
|
+<template>
|
|
|
+ <div class="app-container">
|
|
|
+ <el-form ref="form" :model="form" :rules="rules" :inline="true" style="margin-top: 20px" label-width="auto" >
|
|
|
+ <el-divider content-position="left">补充资料</el-divider>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="融信编号" prop="zfiNumber">
|
|
|
+ <el-input v-model="form.zfiNumber" style="width: 200px" disabled/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="创建时间" prop="createTime">
|
|
|
+ <el-date-picker disabled size="small" style="width: 200px" v-model="form.createTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="创建人" prop="createName">
|
|
|
+ <el-input v-model="form.createName" style="width: 200px" disabled/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="开立方" prop="openName">
|
|
|
+ <el-input v-model="form.openName" style="width: 200px" disabled/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="接收方" prop="zfiSupplierId">
|
|
|
+ <el-select
|
|
|
+ style="width: 200px"
|
|
|
+ v-model="form.zfiSupplierId"
|
|
|
+ filterable
|
|
|
+ clearable
|
|
|
+ remote
|
|
|
+ disabled
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in supplierList"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="签发有效期" prop="zfiEffectiveDate">
|
|
|
+ <el-date-picker clearable size="small" style="width: 200px"
|
|
|
+ v-model="form.zfiEffectiveDate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择签发有效期"
|
|
|
+ disabled>
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="承诺还款日" prop="zfiExpireDate">
|
|
|
+ <el-date-picker clearable size="small" style="width: 200px"
|
|
|
+ v-model="form.zfiExpireDate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择承诺还款日"
|
|
|
+ disabled>
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="授信额度" prop="zfiCoreQuotaId">
|
|
|
+ <el-select
|
|
|
+ style="width: 200px"
|
|
|
+ v-model="form.zfiCoreQuotaId"
|
|
|
+ filterable
|
|
|
+ clearable
|
|
|
+ remote
|
|
|
+ disabled
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in creditLineList"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <span>可用额度:</span>
|
|
|
+ <span>{{availableAmt}}</span>
|
|
|
+ <br>
|
|
|
+ <span>有效期:</span>
|
|
|
+ <span>{{validityDate}}</span>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-divider content-position="left" >应收账款</el-divider>
|
|
|
+ <el-form-item style="margin-left: 100px">
|
|
|
+ <el-button size="mini" type="primary" @click="openTicket">选择</el-button>
|
|
|
+ <el-button size="mini" @click="deleteTicekt">清空全部</el-button>
|
|
|
+ <el-form-item label="合计金额:">
|
|
|
+ <span>{{checkTotalAmt}}</span>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="金额大写:">
|
|
|
+ <span>{{checkTotalBigAmt}}</span>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-table :data="ticketList" style="width: 1100px">
|
|
|
+ <el-table-column label="账款名称" align="center" prop="zbiName" show-overflow-tooltip />
|
|
|
+ <el-table-column label="应收企业" align="center" prop="receiveName"/>
|
|
|
+ <el-table-column label="应收企业" align="center" prop="payName" />
|
|
|
+ <el-table-column label="预计还款期" align="center" prop="zbiPayDate" show-overflow-tooltip />
|
|
|
+ <el-table-column label="金额" align="center" prop="zbiAmount" />
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="250">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-delete"
|
|
|
+ @click="handleDelete(scope.$index, ticketList)"
|
|
|
+ >删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-form-item>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="签发金额" prop="zfiAmount">
|
|
|
+ <el-input v-model="form.zfiAmount" style="width: 200px" disabled @input="getBigSmall"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="金额大写" prop="issuedAmount">
|
|
|
+ {{issuedAmount}}
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
+ <!-- 发票附件 -->
|
|
|
+ <el-divider content-position="left">发票附件</el-divider>
|
|
|
+ <el-table :data="invoiceFileList" border style="width: 100%">
|
|
|
+ <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-view"
|
|
|
+ @click="handleDetail(scope.row)"
|
|
|
+ >下载</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <!-- 合同附件 -->
|
|
|
+ <el-divider content-position="left">合同附件</el-divider>
|
|
|
+ <el-table :data="contractFileList" border style="width: 100%">
|
|
|
+ <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-view"
|
|
|
+ @click="handleDetail(scope.row)"
|
|
|
+ >下载</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <!-- 其他附件 -->
|
|
|
+ <el-divider content-position="left">其他附件</el-divider>
|
|
|
+ <el-table :data="otherFileList" border style="width: 100%">
|
|
|
+ <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-view"
|
|
|
+ @click="handleDetail(scope.row)"
|
|
|
+ >下载</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div class="footer" style="float: right;
|
|
|
+ margin-bottom:2px;">
|
|
|
+ <el-button type="primary" @click="submitForm">确 定</el-button>
|
|
|
+ <el-button @click="cancel">取 消</el-button>
|
|
|
+ </div>
|
|
|
+ <!-- 应收账款信息 -->
|
|
|
+ <el-dialog :title="payTitle" :visible.sync="open" width="1120px" append-to-body>
|
|
|
+ <el-form :model="queryParamsPay" ref="formQuery" :inline="true" label-width="68px" style="margin-bottom: -21px">
|
|
|
+ <el-form-item label="账款名称" prop="zbiName">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParamsPay.zbiName"
|
|
|
+ placeholder="请输入账款名称"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ maxlength="11"
|
|
|
+ @keyup.enter.native="handleQuerys"/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button
|
|
|
+ type="cyan"
|
|
|
+ icon="el-icon-search"
|
|
|
+ size="mini"
|
|
|
+ @click="handleQuerys"
|
|
|
+ >搜索</el-button>
|
|
|
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuerys"
|
|
|
+ >重置</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-table :data="payList"
|
|
|
+ ref="tablePay"
|
|
|
+ class="single-select-table"
|
|
|
+ @selection-change="handleSelectionChange"
|
|
|
+ :row-key="rowkey">
|
|
|
+ <el-table-column
|
|
|
+ type="selection"
|
|
|
+ :reserve-selection="true"
|
|
|
+ width="50"
|
|
|
+ align="center"/>
|
|
|
+ <el-table-column label="序号" type="index" width="50" align="center">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ (queryParamsPay.pageNum - 1) * queryParamsPay.pageSize + scope.$index + 1}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="账款名称" align="center" prop="zbiName" show-overflow-tooltip />
|
|
|
+ <el-table-column label="应收企业" align="center" prop="receiveName"/>
|
|
|
+ <el-table-column label="应收企业" align="center" prop="payName" />
|
|
|
+ <el-table-column label="预计还款期" align="center" prop="zbiPayDate" show-overflow-tooltip />
|
|
|
+ <el-table-column label="金额" align="center" prop="zbiAmount" />
|
|
|
+ </el-table>
|
|
|
+ <pagination
|
|
|
+ v-show="total > 0"
|
|
|
+ :total="total"
|
|
|
+ :page.sync="queryParamsPay.pageNum"
|
|
|
+ :limit.sync="queryParamsPay.pageSize"
|
|
|
+ @pagination="getAccountsCollection" />
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="mini" @click="cancelTicket">取消</el-button>
|
|
|
+ <el-button size="mini" type="primary" @click="closeTicket">确认</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import {getCreditDetail,getReceiverList,listCreditLine,getAvailableBalance,getAccountsCollection,updateCredit,getFile} from "@/api/service/credit/credit";
|
|
|
+import {addInfor} from "@/api/service/credit/creditHandle";
|
|
|
+import {accAdd} from "@/utils/calculation";
|
|
|
+export default {
|
|
|
+ name: "addCredit",
|
|
|
+ components: {},
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ // 总条数
|
|
|
+ total: 0,
|
|
|
+ // 表单参数read
|
|
|
+ form: {
|
|
|
+
|
|
|
+ },
|
|
|
+ // 表单校验
|
|
|
+ rules: {
|
|
|
+
|
|
|
+ },
|
|
|
+ // 是否显示弹出层
|
|
|
+ open: false,
|
|
|
+ //选择的应收账款
|
|
|
+ payList:[],
|
|
|
+ //现有的应收账款
|
|
|
+ ticketList:[],
|
|
|
+ //签发金额大写
|
|
|
+ issuedAmount:"零元整",
|
|
|
+ //合计选中的应收账款的金额
|
|
|
+ checkTotalAmt:"0.00",
|
|
|
+ //合计选中的应收账款的大写金额
|
|
|
+ checkTotalBigAmt:"零元整",
|
|
|
+ //接收方
|
|
|
+ supplierList:[],
|
|
|
+ supplierForm:{},
|
|
|
+ queryParamsPay: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ zbiName:null
|
|
|
+ },
|
|
|
+ //授信额度
|
|
|
+ creditLineList:[],
|
|
|
+ //可用额度
|
|
|
+ availableAmt:"0.00",
|
|
|
+ //有效期
|
|
|
+ validityDate:"",
|
|
|
+ //有效期类型
|
|
|
+ zfpcrDateType:"" ,
|
|
|
+ //产品是否可拆分
|
|
|
+ zfpSplit:"",
|
|
|
+ //融资放款方式
|
|
|
+ zfpcrLoanType:"",
|
|
|
+ //产品编号
|
|
|
+ zfpId:"",
|
|
|
+ //标题
|
|
|
+ payTitle:"",
|
|
|
+ //利率
|
|
|
+ zfiRate:"",
|
|
|
+ //授信额度
|
|
|
+ creditParams: {
|
|
|
+ zfpcrId:null,
|
|
|
+ type:'1'
|
|
|
+ },
|
|
|
+ //合同附件
|
|
|
+ contractFileList:[],
|
|
|
+ //发票附件
|
|
|
+ invoiceFileList:[],
|
|
|
+ //其他文件
|
|
|
+ otherFileList:[] ,
|
|
|
+ //开立方编号
|
|
|
+ zfiCoreId:"",
|
|
|
+ //接收方
|
|
|
+ zfiSupplierId:""
|
|
|
+ };
|
|
|
+ },
|
|
|
+ watch:{
|
|
|
+ 'form.zfiCoreQuotaId':'change'
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ const zfiId = this.$route.params && this.$route.params.zfiId;
|
|
|
+ getCreditDetail(zfiId).then((response) => {
|
|
|
+ if(response.data){
|
|
|
+ //接收方编号
|
|
|
+ this.supplierForm.zfiSupplierId = response.data.financeInf.zfiSupplierId;
|
|
|
+ getReceiverList(this.supplierForm).then((response) => {
|
|
|
+ this.supplierList = response.data.records.map(item => {
|
|
|
+ return { value: item.scyId, label: item.scyName};
|
|
|
+ });
|
|
|
+ });
|
|
|
+ this.listCreditLine(response.data);
|
|
|
+ }
|
|
|
+ if(response.data.payList){
|
|
|
+ this.ticketList = response.data.payList.records;
|
|
|
+ this.getReTotal(this.ticketList);
|
|
|
+ //附件
|
|
|
+ this.getFile(this.ticketList);
|
|
|
+ }
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ // 取消按钮
|
|
|
+ cancel() {
|
|
|
+ this.$store.dispatch("tagsView/delView", this.$route);
|
|
|
+ this.$router.go(-1);
|
|
|
+ },
|
|
|
+ /* 多选框跨页 */
|
|
|
+ rowkeyCustomer(row) {
|
|
|
+ return row.cciId;
|
|
|
+ },
|
|
|
+ //重新合计
|
|
|
+ getReTotal(chooseTicket){
|
|
|
+ //合计
|
|
|
+ this.checkTotalAmt = "0.00";
|
|
|
+ for(var i = 0; i < chooseTicket.length;i++){
|
|
|
+ this.checkTotalAmt = accAdd(this.checkTotalAmt,chooseTicket[i].zbiAmount,2);
|
|
|
+ }
|
|
|
+ this.checkTotalBigAmt = this.smallToBig(this.checkTotalAmt);
|
|
|
+ this.checkTotalAmt = this.amtFormat(this.checkTotalAmt);
|
|
|
+ },
|
|
|
+ //获取附件信息
|
|
|
+ getFile(datas){
|
|
|
+ var queryParamsFile = {};
|
|
|
+ queryParamsFile.ticketList = datas;
|
|
|
+ getFile(queryParamsFile).then((response) => {
|
|
|
+ if(response.data){
|
|
|
+ //获取发票文件
|
|
|
+ this.invoiceFileList = response.data.invoiceFileList;
|
|
|
+ //获取合同文件
|
|
|
+ this.contractFileList = response.data.contractFileList;
|
|
|
+ //获取其他文件
|
|
|
+ this.otherFileList = response.data.otherFileList;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ resetQuerys() {
|
|
|
+ this.resetForm("formQuery");
|
|
|
+ this.handleQuerys();
|
|
|
+ },
|
|
|
+ handleQuerys() {
|
|
|
+ this.queryParamsPay.pageNum = 1;
|
|
|
+ this.getAccountsCollection();
|
|
|
+ },
|
|
|
+ //打开应收账款选择列表
|
|
|
+ openTicket() {
|
|
|
+ this.getAccountsCollection();
|
|
|
+ this.open = true;
|
|
|
+ this.payTitle = "应收账款";
|
|
|
+ },
|
|
|
+ //核心授信额度
|
|
|
+ listCreditLine(data){
|
|
|
+ this.creditParams.zfpcrId = data.financeInf.zfiCoreQuotaId;
|
|
|
+ listCreditLine(this.creditParams).then((response) => {
|
|
|
+ this.creditLineList = response.data.map(item => {
|
|
|
+ return { value: item.zfpcrId, label: item.zfpName,zfpcrDateType:item.zfpcrDateType,zfpcrEndDate:item.zfpcrEndDate,zfpcrLoanType:item.zfpcrLoanType,zfpSplit:item.zfpSplit,zfpId:item.zfpId,zfpcrRate:item.zfpcrRate};
|
|
|
+ });
|
|
|
+ this.form = data.financeInf;
|
|
|
+ //开立方
|
|
|
+ this.form.openName = data.openName;
|
|
|
+ //创建人
|
|
|
+ this.form.createName = data.createName;
|
|
|
+ //签发金额大写
|
|
|
+ this.issuedAmount = this.smallToBig(this.form.zfiAmount);
|
|
|
+ //开立方编号
|
|
|
+ this.zfiCoreId = data.financeInf.zfiCoreId;
|
|
|
+ //接收方
|
|
|
+ this.zfiSupplierId = data.financeInf.zfiSupplierId;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //应收账款查询列表
|
|
|
+ getAccountsCollection() {
|
|
|
+ //开立方为应收企业的
|
|
|
+ this.queryParamsPay.payId = this.zfiCoreId;
|
|
|
+ //接收方
|
|
|
+ this.queryParamsPay.zfiSupplierId = this.zfiSupplierId;
|
|
|
+ getAccountsCollection(this.queryParamsPay).then((response) => {
|
|
|
+ this.payList = response.data.records;
|
|
|
+ this.selectChecked();
|
|
|
+ this.total = response.data.total;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ selectChecked() {
|
|
|
+ this.ticketList.forEach((item) => {
|
|
|
+ this.payList.forEach(row => {
|
|
|
+ if (row.zbiId == item.zbiId) {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.tablePay && this.$refs.tablePay.toggleRowSelection(row, true);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+ //合计
|
|
|
+ this.getReTotal(this.ticketList);
|
|
|
+ //附件
|
|
|
+ this.getFile(this.ticketList);
|
|
|
+ },
|
|
|
+ /* 删除按钮 */
|
|
|
+ handleDelete(index, rows) {
|
|
|
+ rows.splice(index, 1);
|
|
|
+ if(this.$refs.tablePay){
|
|
|
+ this.$refs.tablePay.clearSelection();
|
|
|
+ }
|
|
|
+ this.selectChecked();
|
|
|
+ },
|
|
|
+ /* 多选框跨页 */
|
|
|
+ rowkey(row) {
|
|
|
+ return row.zbiId;
|
|
|
+ },
|
|
|
+ // 多选框选中数据
|
|
|
+ handleSelectionChange(val) {
|
|
|
+ this.chooseTicket = val
|
|
|
+ },
|
|
|
+ // 确认选择
|
|
|
+ closeTicket() {
|
|
|
+ if(this.chooseTicket){
|
|
|
+ //如果长度大于1,则需要进行对比应收企业和预计还款日期是否一致
|
|
|
+ if(this.chooseTicket.length > 1){
|
|
|
+ //获取选中第一个的预计还款日期
|
|
|
+ var zbiPayDate = this.chooseTicket[0].zbiPayDate;
|
|
|
+ for(var i = 0 ;i < this.chooseTicket.length;i++){
|
|
|
+ if(zbiPayDate != this.chooseTicket[i].zbiPayDate){
|
|
|
+ this.$message({
|
|
|
+ message: '请选择预计还款日期相同的应收账款',
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //合计
|
|
|
+ this.getReTotal(this.chooseTicket);
|
|
|
+ this.ticketList = this.chooseTicket;
|
|
|
+ //更新附件信息
|
|
|
+ this.getFile(this.ticketList);
|
|
|
+ this.open = false;
|
|
|
+ }else{
|
|
|
+ this.$message({
|
|
|
+ message: '请选择应收账款',
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //重新合计
|
|
|
+ getReTotal(chooseTicket){
|
|
|
+ //合计
|
|
|
+ this.checkTotalAmt = "0.00";
|
|
|
+ for(var i = 0; i < chooseTicket.length;i++){
|
|
|
+ this.checkTotalAmt = accAdd(this.checkTotalAmt,chooseTicket[i].zbiAmount,2);
|
|
|
+ }
|
|
|
+ this.checkTotalBigAmt = this.smallToBig(this.checkTotalAmt);
|
|
|
+ this.checkTotalAmt = this.amtFormat(this.checkTotalAmt);
|
|
|
+ },
|
|
|
+ //取消选择按钮
|
|
|
+ cancelTicket(){
|
|
|
+ this.ticketList = [];
|
|
|
+ if(this.$refs.tablePay){
|
|
|
+ this.$refs.tablePay.clearSelection();
|
|
|
+ }
|
|
|
+ this.open = false;
|
|
|
+ },
|
|
|
+ /** 清空选择信息 */
|
|
|
+ deleteTicekt() {
|
|
|
+ this.ticketList = [];
|
|
|
+ this.checkTotalAmt = "0.00";
|
|
|
+ this.checkTotalBigAmt = this.smallToBig(this.checkTotalAmt);
|
|
|
+ if(this.$refs.tablePay){
|
|
|
+ this.$refs.tablePay.clearSelection();
|
|
|
+ }
|
|
|
+ //更新附件
|
|
|
+ this.getFile(this.ticketList);
|
|
|
+ },
|
|
|
+ /* 删除按钮 */
|
|
|
+ handleDelete(index, rows) {
|
|
|
+ rows.splice(index, 1);
|
|
|
+ if(this.$refs.tablePay){
|
|
|
+ this.$refs.tablePay.clearSelection();
|
|
|
+ }
|
|
|
+ this.selectChecked();
|
|
|
+ },
|
|
|
+ onSelectAll() {
|
|
|
+ if(this.$refs.tablePay){
|
|
|
+ this.$refs.tablePay.clearSelection();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //格式化金额
|
|
|
+ amtFormat(cellValue) {
|
|
|
+ if(cellValue == null || cellValue== undefined || cellValue == ''){
|
|
|
+ cellValue = '0.00'
|
|
|
+ }
|
|
|
+ cellValue += '';
|
|
|
+ if (!cellValue.includes('.')) {
|
|
|
+ cellValue += '.00';
|
|
|
+ }
|
|
|
+ return cellValue.replace(/(\d)(?=(\d{3})+\.)/g, function ($0, $1) {
|
|
|
+ return $1 + ',';
|
|
|
+ }).replace(/\.$/, '');
|
|
|
+ },
|
|
|
+ //获取签发金额大写
|
|
|
+ getBigSmall(){
|
|
|
+ this.issuedAmount = this.smallToBig(this.form.zfiAmount);
|
|
|
+ },
|
|
|
+ /* // 将数字金额转换为大写金额 */
|
|
|
+ smallToBig(money) {
|
|
|
+ // 将数字金额转换为大写金额
|
|
|
+ var cnNums = new Array(
|
|
|
+ "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" ); //汉字的数字
|
|
|
+ var cnIntRadice = new Array("", "拾", "佰", "仟"); //基本单位
|
|
|
+ var cnIntUnits = new Array("", "万", "亿", "兆"); //对应整数部分扩展单位
|
|
|
+ var cnDecUnits = new Array("角", "分", "毫", "厘"); //对应小数部分单位
|
|
|
+ var cnInteger = "整"; //整数金额时后面跟的字符
|
|
|
+ var cnIntLast = "元"; //整数完以后的单位
|
|
|
+ //最大处理的数字
|
|
|
+ var maxNum = 999999999999999.9999;
|
|
|
+ var integerNum; //金额整数部分
|
|
|
+ var decimalNum; //金额小数部分
|
|
|
+ //输出的中文金额字符串
|
|
|
+ var chineseStr = "";
|
|
|
+ var parts; //分离金额后用的数组,预定义
|
|
|
+ if (money == "" || money == null || money == undefined) {
|
|
|
+ return "零元零角零分";
|
|
|
+ }
|
|
|
+ money = parseFloat(money);
|
|
|
+ if (money >= maxNum) {
|
|
|
+ //超出最大处理数字
|
|
|
+ return "超出最大处理数字";
|
|
|
+ }
|
|
|
+ if (money == 0) {
|
|
|
+ chineseStr = cnNums[0] + cnIntLast + cnInteger;
|
|
|
+ return chineseStr;
|
|
|
+ }
|
|
|
+ //四舍五入保留两位小数,转换为字符串
|
|
|
+ money = Math.round(money * 100).toString();
|
|
|
+ integerNum = money.substr(0, money.length - 2);
|
|
|
+ decimalNum = money.substr(money.length - 2);
|
|
|
+ //获取整型部分转换
|
|
|
+ if (parseInt(integerNum, 10) > 0) {
|
|
|
+ var zeroCount = 0;
|
|
|
+ var IntLen = integerNum.length;
|
|
|
+ for (var i = 0; i < IntLen; i++) {
|
|
|
+ var n = integerNum.substr(i, 1);
|
|
|
+ var p = IntLen - i - 1;
|
|
|
+ var q = p / 4;
|
|
|
+ var m = p % 4;
|
|
|
+ if (n == "0") {
|
|
|
+ zeroCount++;
|
|
|
+ } else {
|
|
|
+ if (zeroCount > 0) {
|
|
|
+ chineseStr += cnNums[0];
|
|
|
+ }
|
|
|
+ //归零
|
|
|
+ zeroCount = 0;
|
|
|
+ chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
|
|
|
+ }
|
|
|
+ if (m == 0 && zeroCount < 4) {
|
|
|
+ chineseStr += cnIntUnits[q];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ chineseStr += cnIntLast;
|
|
|
+ }
|
|
|
+ //小数部分
|
|
|
+ if (decimalNum != "") {
|
|
|
+ var decLen = decimalNum.length;
|
|
|
+ for (var i = 0; i < decLen; i++) {
|
|
|
+ var n = decimalNum.substr(i, 1);
|
|
|
+ if (n != "0") {
|
|
|
+ chineseStr += cnNums[Number(n)] + cnDecUnits[i];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (chineseStr == "") {
|
|
|
+ chineseStr += cnNums[0] + cnIntLast + cnInteger;
|
|
|
+ } else if (decimalNum == "" || /^0*$/.test(decimalNum)) {
|
|
|
+ chineseStr += cnInteger;
|
|
|
+ }
|
|
|
+ return chineseStr;
|
|
|
+ },
|
|
|
+ //选择授信触发
|
|
|
+ change(val) {
|
|
|
+ if (!val) {
|
|
|
+ //可用额度
|
|
|
+ this.availableAmt = "0.00";
|
|
|
+ //有效期
|
|
|
+ this.validityDate ="";
|
|
|
+ //产品是否可拆分
|
|
|
+ this.zfpSplit= "",
|
|
|
+ //融资放款方式
|
|
|
+ this.zfpcrLoanType = "";
|
|
|
+ //产品
|
|
|
+ this.zfpId = "";
|
|
|
+ //利率
|
|
|
+ this.zfiRate = "";
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ let obj = {};
|
|
|
+ obj = this.creditLineList.find(item => {
|
|
|
+ return item.value === val;
|
|
|
+ });
|
|
|
+ //获取有效期的类型
|
|
|
+ this.zfpcrDateType = obj.zfpcrDateType;
|
|
|
+ //产品是否可拆分
|
|
|
+ this.zfpSplit= obj.zfpSplit;
|
|
|
+ //放款方式
|
|
|
+ this.zfpcrLoanType = obj.zfpcrLoanType;
|
|
|
+ //产品
|
|
|
+ this.zfpId = obj.zfpId;
|
|
|
+ //利率
|
|
|
+ this.zfiRate = obj.zfpcrRate;
|
|
|
+ //长期
|
|
|
+ if("0"== this.zfpcrDateType){
|
|
|
+ this.validityDate = "长期";
|
|
|
+ }else{
|
|
|
+ this.validityDate = obj.zfpcrEndDate;
|
|
|
+ }
|
|
|
+ var lineQueryParam = {};
|
|
|
+ lineQueryParam.zfpcrId = val;
|
|
|
+ //获取可用额度
|
|
|
+ getAvailableBalance(lineQueryParam).then((response) => {
|
|
|
+ this.availableAmt = response.data.remaining;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //修改
|
|
|
+ submitForm(){
|
|
|
+ this.$refs["form"].validate(valid => {
|
|
|
+ if(this.ticketList.length < 1){
|
|
|
+ this.$message({
|
|
|
+ message: '请选择应收账款',
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(parseFloat(this.form.zfiAmount) > parseFloat(this.moneyDelete(this.checkTotalAmt))){
|
|
|
+ this.$message({
|
|
|
+ message: '签发金额不可大于合计金额',
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (valid) {
|
|
|
+ const loading = this.$loading({
|
|
|
+ lock: true,
|
|
|
+ text: 'Loading',
|
|
|
+ background: 'rgba(0, 0, 0,0)'
|
|
|
+ });
|
|
|
+ //如果签发金额小于合计金额
|
|
|
+ if((parseFloat(this.form.zfiAmount)) < (parseFloat(this.moneyDelete(this.checkTotalAmt)))){
|
|
|
+ var _this = this;
|
|
|
+ this.$confirm('签发金额小于应收金额合计,是否确认提交', "警告", {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning"
|
|
|
+ }).then(function() {
|
|
|
+ //应收账款
|
|
|
+ _this.form.ticketList = _this.ticketList;
|
|
|
+ addInfor(_this.form).then(response => {
|
|
|
+ loading.close();
|
|
|
+ _this.msgSuccess("补充资料成功");
|
|
|
+ _this.$store.dispatch("tagsView/delView", _this.$route);
|
|
|
+ _this.$router.go(-1);
|
|
|
+ }).catch((response)=>{
|
|
|
+ loading.close();
|
|
|
+ });
|
|
|
+ }).catch((e) => {
|
|
|
+ loading.close();
|
|
|
+ });
|
|
|
+
|
|
|
+ }else{
|
|
|
+ //应收账款
|
|
|
+ this.form.ticketList = this.ticketList;
|
|
|
+ addInfor(this.form).then(response => {
|
|
|
+ loading.close();
|
|
|
+ this.msgSuccess("补充资料成功");
|
|
|
+ this.$store.dispatch("tagsView/delView", this.$route);
|
|
|
+ this.$router.go(-1);
|
|
|
+ }).catch((response)=>{
|
|
|
+ loading.close();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //金额去掉千分位
|
|
|
+ moneyDelete(num){
|
|
|
+ if(num &&num != undefined && num != null){
|
|
|
+ let _num = num;
|
|
|
+ _num = _num.toString();
|
|
|
+ _num = _num.replace(/,/gi,'');
|
|
|
+ return _num;
|
|
|
+ }else{
|
|
|
+ return num;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss">
|
|
|
+
|
|
|
+.uoloadfj .el-upload--picture-card{
|
|
|
+ width:110px;
|
|
|
+ height:110px;
|
|
|
+ line-height:110px;
|
|
|
+}
|
|
|
+.fjUoloadSty .el-upload--picture-card{
|
|
|
+ display:none;
|
|
|
+}
|
|
|
+
|
|
|
+table th.star div::before {
|
|
|
+ content: '*';
|
|
|
+ color: red;
|
|
|
+}
|
|
|
+
|
|
|
+</style>
|