1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585 |
- <template>
- <div class="app-container zap-main">
- <el-row>
- <el-form
- ref="form"
- :model="form"
- :inline="true"
- :rules="rules"
- label-width="95px"
- >
- <div class="zap-title">申请融资信息</div>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item label="选择融信:" prop="zfrFinanceId" size="large">
- <el-select
- v-model="form.zfrFinanceId"
- clearable
- @clear="clearBoth"
- disabled
- >
- <el-option
- v-for="(item, index) in financeInfList"
- :key="index"
- :label="item.zfiNumber"
- :value="item.zfiId"
- @click.native="amount(item)"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item
- label="融资收款账户:"
- prop="zfrCollectionAccount"
- size="large"
- label-width="101px"
- >
- <el-input
- v-model="form.zfrCollectionAccount"
- clearable
- placeholder="请输入融资账户"
- maxlength="25"
- readonly
- />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item label="融信金额:" prop="zfiAmount" size="large">
- <el-input
- v-model="form.zfiAmount"
- clearable
- placeholder="请输入融信金额"
- maxlength="25"
- readonly
- >
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="申请融资方:" prop="companyName" size="large">
- <el-input
- v-model="form.companyName"
- clearable
- placeholder="请输入申请融资方"
- maxlength="25"
- readonly
- />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item label="融资金额:" prop="zfrAmount" size="large">
- <el-input
- v-model="form.zfrAmount"
- clearable
- placeholder="请输入融资金额"
- maxlength="25"
- readonly
- >
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="融资利率:" prop="zfrRate" size="large">
- <el-input
- v-model="form.zfrRate"
- clearable
- placeholder="请输入融资利率"
- maxlength="25"
- readonly
- >
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item
- label="承诺还款日期:"
- prop="zfrRepaymentDate"
- size="large"
- label-width="101px"
- >
- <el-input
- v-model="form.zfrRepaymentDate"
- clearable
- placeholder="请输入承诺还款日期"
- maxlength="25"
- readonly
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="服务费率:" prop="zfpcrChargeRate" size="large">
- <el-input
- v-model="form.zfpcrChargeRate"
- clearable
- placeholder="请输入服务费率"
- maxlength="25"
- readonly
- >
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item
- label="预计融资成本:"
- prop="cost"
- size="large"
- label-width="101px"
- >
- <el-input
- v-model="form.cost"
- clearable
- placeholder="请输入预计融资成本"
- maxlength="25"
- readonly
- >
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item
- label="预计融资期限:"
- prop="term"
- size="large"
- label-width="101px"
- >
- <el-input
- v-model="form.term"
- clearable
- placeholder="请输入预计融资期限"
- maxlength="25"
- readonly
- >
- <template slot="append">天</template>
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row class="zap-form" style="padding-bottom: 0">
- <el-col :span="12">
- <el-form-item
- label="预计净融资额:"
- prop="amount"
- size="large"
- label-width="101px"
- >
- <el-input
- v-model="form.amount"
- clearable
- placeholder="请输入预计净融资额"
- maxlength="25"
- readonly
- >
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <div class="contain">
- <p>说明:</p>
- <p>1. 因银行结算原因,资金到账可能会在申请日期后2-5工作日;</p>
- <p>
- 2.
- 申请融资时,预计融资成本、预计融资期限、预计净融资额,由申请日期单日开始计算;准确数值以银行实际放款日期为准;
- </p>
- <p>
- 3.
- 因填写融资收款账户错误,或其他原因导致银行无法正常放款,款项将汇入备用收款账户,可在电子账户管理查看;
- </p>
- <p>4. 服务费缴纳与退还要求,可详细阅读《融信产品使用协议》</p>
- </div>
- <div class="zap-title">融信信息</div>
- <el-row class="zap-form">
- <el-col>
- <span style="font-size: 14px; color: #333333">融信凭证</span>
- </el-col>
- <table
- class="gridtable"
- style="width: 80%; text-align: center"
- align="center"
- >
- <tr>
- <td rowspan="4">开立方</td>
- <td>全称</td>
- <td>{{ openName }}</td>
- <td rowspan="4">接收方</td>
- <td>全称</td>
- <td>{{ receiveName }}</td>
- </tr>
- <tr>
- <td>社会统一码</td>
- <td>{{ openCode }}</td>
- <td>社会统一码</td>
- <td>{{ receiverCode }}</td>
- </tr>
- <tr>
- <td>开户银行</td>
- <td>{{ openBank }}</td>
- <td>开户银行</td>
- <td>{{ receiverBank }}</td>
- </tr>
- <tr>
- <td>账号</td>
- <td>{{ openAccount }}</td>
- <td>账号</td>
- <td>{{ receiverAccount }}</td>
- </tr>
- <tr>
- <td colspan="2">粮信金额</td>
- <td colspan="4">
- 人民币(大写):{{ issuedAmount }}<br />人民币(小写)¥{{
- form.zfiAmount
- }}
- </td>
- </tr>
- <tr>
- <td colspan="2">起止日期</td>
- <td colspan="4">{{ stopDate }}</td>
- </tr>
- </table>
- </el-row>
- <el-row class="zap-form">
- <el-row type="flex" align="middle" justify="end">
- <el-col>
- <span style="font-size: 14px; color: #333333">资产信息</span>
- </el-col>
- <el-col class="zap-margin-top;">
- <el-row type="flex" align="middle" justify="end">
- <el-form-item label="金额大写:" class="zap-margin-clear">
- <span>{{ smallToBig(allAmount()) }}</span>
- </el-form-item>
- <el-form-item label="合计金额:" class="zap-margin-clear">
- <span>{{ allAmount() }}</span>
- </el-form-item>
- </el-row>
- </el-col>
- </el-row>
- <el-row class="zap-margin-top">
- <el-table :data="billInfList" border stripe>
- <el-table-column
- label="序号"
- type="index"
- width="50"
- align="center"
- >
- <template slot-scope="scope">
- <span>{{
- (queryParams.pageNum - 1) * queryParams.pageSize +
- scope.$index +
- 1
- }}</span>
- </template>
- </el-table-column>
- <el-table-column label="编号" align="center" prop="zbiNumber" />
- <el-table-column label="账款名称" align="center" prop="zbiName" />
- <el-table-column label="应收企业" align="center" prop="payee" />
- <el-table-column label="应付企业" align="center" prop="payer" />
- <el-table-column
- label="还款时间"
- align="center"
- prop="zbiPayDate"
- />
- <el-table-column label="金额" align="center" prop="zbiAmount" />
- <el-table-column
- label="操作"
- align="center"
- class-name="small-padding fixed-width"
- width="250"
- fixed="right"
- >
- <template slot-scope="scope">
- <el-button
- size="mini"
- type="text"
- icon="el-icon-view"
- @click="handleDetail(scope.$index, billInfList)"
- >详情</el-button
- >
- </template>
- </el-table-column>
- </el-table>
- </el-row>
- </el-row>
- </el-form>
- <!-- 签署合同 -->
- <el-row class="zap-margin-top zap-form">
- <div class="zap-title">签署合同</div>
- <el-row class="zap-form" type="flex">
- <attachments v-for="(item, index) in creditSealList" :key="index" :fileName="item.pfiFileName">
- <img class="" src="../../../assets/images/pdf.png" />
- <div class="attachements__marker" slot="marker">
- <el-button class="zap-button-primary" size="mini" @click="handleDownload(item)">下载</el-button>
- <el-button class="zap-button-primary" size="mini" @click="handlePreview(item)">预览</el-button>
- </div>
- </attachments>
- </el-row>
- </el-row>
- <el-row type="flex" align="middle" justify="center" style="height: 77px">
- <el-button type="primary" @click="selectPayment">合同签署</el-button>
- <el-button type="primary" plain="" @click="cancel">取消</el-button>
- </el-row>
- </el-row>
- <!-- 附件详情 -->
- <el-dialog
- title="详情"
- :visible.sync="openDetailBill"
- width="1120px"
- append-to-body
- >
- <detail-bill :zbiId="this.zbiId" v-if="openDetailBill"></detail-bill>
- </el-dialog>
- <!--预览-->
- <el-dialog :visible.sync="openFile" width="1000px" append-to-body>
- <img :src="wordUrl" v-if="show" width="700px" height="500px" />
- <iframe
- :src="wordUrl"
- width="800px"
- height="600px"
- frameborder="1"
- v-if="heid"
- />
- </el-dialog>
- <!-- 合同预览 -->
- <el-dialog title="合同预览" :visible.sync="pdfShowDialog" width="60%" append-to-body :show-close="pdfIsShow">
- <pdf-show
- :pdfFileList="pdfFileList"
- :zfiId="this.form.zfiId"
- :parent="parent"
- ></pdf-show>
- <span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectType" v-if="pdfIsShow">签署</el-button>
- <el-button type="primary" plain="" @click="pdfShowDialog = false" v-if="pdfIsShow"
- >取消</el-button>
- <el-button type="primary" @click="closePDF" v-if="!pdfIsShow">确定</el-button>
- </span>
- </el-dialog>
- <!--选择签署意愿类型-->
- <el-dialog
- title="签署意愿"
- :visible.sync="confirmIsShow"
- width="600px"
- append-to-body
- :before-close="cancelUpdate"
- center
- >
- <el-form
- ref="updateForm"
- :disabled="false"
- :model="updateForm"
- v-if="confirmIsShow"
- label-width="150px"
- class="demo-form-inline"
- :inline="true"
- >
- <el-radio-group v-model="updateForm.radio">
- <el-radio label="01">人脸</el-radio>
- <el-radio label="02">短信</el-radio>
- </el-radio-group>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="confirmSelect">确 定</el-button>
- <el-button @click="cancelUpdate">取 消</el-button>
- </div>
- </el-dialog>
- <!--盖章短信-->
- <el-dialog
- title="短信验证"
- :visible.sync="messageIsShow"
- width="600px"
- append-to-body
- :before-close="cancelMessage"
- center
- >
- <el-form
- ref="messageForm"
- :disabled="false"
- :model="messageForm"
- v-if="messageIsShow"
- label-width="150px"
- class="demo-form-inline"
- :inline="true"
- @submit.native.prevent
- >
- <el-form-item label="验证码" prop="validCode">
- <el-input
- v-model="messageForm.validCode"
- style="width: 200px"
- maxlength="6"
- />
- </el-form-item>
- <el-form-item>
- <el-button :disabled="!showCode" type="success" @click="send">
- 点击获取验证码
- <span v-show="!showCode" class="count">{{ count }} s</span>
- </el-button>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="checkCode">确定</el-button>
- <el-button @click="cancelMessage">取 消</el-button>
- </div>
- </el-dialog>
- <!--授权编号激活短信-->
- <el-dialog
- :visible.sync="messageIfShow"
- width="600px"
- append-to-body
- :before-close="cancelMessages"
- center
- >
- <el-divider content-position="left">cfca签章授权编号激活</el-divider>
- <el-form
- ref="messageForm"
- :disabled="false"
- :model="messagesForm"
- v-if="messageIfShow"
- label-width="150px"
- class="demo-form-inline"
- :inline="true"
- @submit.native.prevent
- >
- <el-form-item label="验证码" prop="validCode">
- <el-input
- v-model="messagesForm.validCode"
- style="width: 200px"
- maxlength="6"
- />
- </el-form-item>
- <el-form-item>
- <el-button :disabled="!showCodes" type="success" @click="proSend">
- 点击获取验证码
- <span v-show="!showCodes" class="count">{{ countCode }} s</span>
- </el-button>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="checkProCode">确定</el-button>
- <el-button @click="cancelMessages">取 消</el-button>
- </div>
- </el-dialog>
- <!--人脸二维码-->
- <el-dialog
- title="人脸验证"
- :visible.sync="faceIsShow"
- width="500px"
- append-to-body
- :before-close="cancelFace"
- center
- >
- <img
- :src="'data:image/jpeg;base64,' + this.fileUrl"
- style="overflow: auto; width: 100%; height: 100%"
- />
- </el-dialog>
- </div>
- </template>
- <script>
- import {
- addRecord,
- listBillInf,
- listAccInf,
- getContractFile,
- getRecord,
- contractSigning,
- updateChargeStatus,
- listChargeStatus,
- cancelContract,
- listStamped
- } from "@/api/service/financeRecord/record";
- import { listFinanceInf } from "@/api/common/financeInf";
- import { getFile } from "@/api/service/credit/credit";
- import { getToken } from "@/utils/auth";
- import { getUserProfile } from "@/api/system/user";
- import { getCreditDetail } from "@/api/service/credit/credit";
- import { getCreditSealFile } from "@/api/service/credit/creditHandle";
- import DetailBill from "@/views/service/credit/billDetail";
- import { isOpenApproval } from "@/api/service/credit/approvalRelatedCredit";
- import { listCompanyHandler } from "@/api/common/companyHandler";
- import {
- sendMessage,
- checkCode,
- faceAuth,
- checkFaceAuth,
- } from "@/api/service/credit/message";
- import {
- cfcaProjectNo,
- projectSendMessage,
- checkProCode,
- } from "@/api/service/credit/cfcaProject";
- import { balance, transfer } from "@/api/bank/bankInterface";
- import pdfShow from "@/views/service/financeRecord/pdfShow";
- export default {
- name: "financeRecord",
- components: { DetailBill, pdfShow },
- data() {
- return {
- pdfIsShow: true,
- //往来账款id
- zbiId: "",
- //融资账户是够编辑
- onlyRead: false,
- // 遮罩层
- loading: true,
- // 选中数组
- ids: [],
- // 非单个禁用
- single: true,
- // 非多个禁用
- multiple: true,
- // 显示搜索条件
- showSearch: true,
- // 总条数
- total: 0,
- // 全部融资记录表格数据
- recordList: [],
- //融信编号数据
- financeInfList: [],
- //应收账款
- billInfList: [],
- //合同附件
- contractFileList: [],
- //发票附件
- invoiceFileList: [],
- //其他文件
- otherFileList: [],
- //盖章文件
- creditSealList: [],
- //开立方
- openName: "",
- //开立社会码
- openCode: "",
- //开立银行
- openBank: "",
- //开立账户
- openAccount: "",
- //接收方
- receiveName: "",
- //接收方社会统一码
- receiverCode: "",
- //接收方银行
- receiverBank: "",
- //接收方账户
- receiverAccount: "",
- //起止日期
- stopDate: "",
- //签发金额大写
- issuedAmount: "零元整",
- // 弹出层标题
- title: "",
- // 是否显示弹出层
- open: false,
- openDetailBill: false,
- //人脸验证结果
- faceResult:"",
- //人脸识别结果传参
- authForm:{},
- // 查询参数
- queryParams: {
- pageNum: 1,
- pageSize: 10,
- zfrFinanceId: null,
- zfrNumber: null,
- zfrAmount: null,
- zfrRate: null,
- zfrHandler: null,
- zfrRepaymentDate: null,
- zfrApplyDate: null,
- zfrLoanDate: null,
- zfrApplyAmount: null,
- zfrApplyType: null,
- zfrStatus: null,
- zfrApproveStt: null,
- zfpcrLoanType: null,
- zfiProductId: null,
- },
- queryParamsDown: {
- pfiFileUrl: null,
- },
- // 表单参数
- form: {},
- forms: {},
- // 表单校验
- rules: {
- zfrFinanceId: [
- {
- required: true,
- message: "融信编号不能为空",
- trigger: "blur",
- },
- ],
- zfrAmount: [
- {
- required: true,
- message: "融资金额不能为空",
- trigger: "blur",
- },
- ],
- },
- openFile: false,
- wordUrl: "",
- heid: false,
- show: false,
- //盖章预览
- parent: this,
- pdfShowDialog: false,
- pdfFileList: [],
- confirmIsShow: false,
- messageIsShow: false,
- messageIfShow: false,
- faceIsShow: false,
- fileUrl: "",
- //意愿
- updateForm: {},
- messageForm: {},
- messagesForm: {},
- count: "",
- timer: null,
- //授权编号激活短信验证码倒计时
- //项目编号
- projectCode: "",
- showCode: true,
- showCodes: true,
- countCode: "",
- timerCode: null,
- zfrId: null,
- };
- },
- created() {
- this.zfrId = this.$route.params && this.$route.params.zfrId;
- getRecord(this.zfrId).then((response) => {
- this.zcFinanceInf = response.data.zcFinanceInf;
- this.needPay = response.data.needPay;
- //意愿类型
- this.zfpAuthType = response.data.zfpAuthType;
- const zfiId = response.data.zcFinanceInf.zfiId;
- this.$set(this.form, "zfrFinanceId", zfiId);
- this.$set(this.form,"zfrCollectionAccount",response.data.zfrCollectionAccount);
- this.getFinanceInf(zfiId);
- });
- this.getUserProfile();
- },
- methods: {
- /** 查询融信编号 */
- getFinanceInf(zfrFinanceId) {
- this.loading = true;
- listFinanceInf(zfrFinanceId).then((response) => {
- if (response.data) {
- this.financeInfList = response.data;
- for (let item of this.financeInfList) {
- if (item.zfiId == zfrFinanceId) {
- this.amount(item);
- }
- }
- this.loading = false;
- }
- });
- },
- getUserProfile() {
- getUserProfile().then((response) => {
- if (response.company) {
- this.$set(this.form, "companyName", response.company.scyName);
- }
- });
- },
- //获取盖章文件
- getCreditSealFile() {
- getCreditSealFile(this.forms).then((response) => {
- if (response.data.list) {
- this.creditSealList = response.data.list;
- }
- });
- },
- // 取消按钮
- cancel() {
- this.$store.dispatch("tagsView/delView", this.$route);
- this.$router.go(-1);
- },
- // 表单重置
- reset() {
- this.form = {
- zfrId: null,
- zfrFinanceId: null,
- zfrNumber: null,
- zfrAmount: null,
- zfrRate: null,
- zfrHandler: null,
- zfrRepaymentDate: null,
- zfrApplyDate: null,
- zfrLoanDate: null,
- zfrApplyAmount: null,
- zfrApplyType: null,
- zfrStatus: "00",
- zfrApproveStt: null,
- zfrProfitSpare1: null,
- zfrProfitSpare2: null,
- zfrProfitSpare3: null,
- zfrProfitSpare4: null,
- zfrProfitSpare5: null,
- zfrProfitSpare6: null,
- zfrProfitSpare7: null,
- zfrProfitSpare8: null,
- zfrProfitSpare9: null,
- createBy: null,
- createTime: null,
- updateBy: null,
- updateTime: null,
- };
- this.resetForm("form");
- },
- /** 全部搜索按钮操作 */
- handleQuery() {
- this.queryParams.pageNum = 1;
- this.getList();
- },
- /** 全部重置按钮操作 */
- resetQuery() {
- this.resetForm("queryForm");
- this.handleQuery();
- },
- //全部 多选框选中数据
- handleSelectionChange(selection) {
- this.ids = selection.map((item) => item.zfrId);
- this.single = selection.length !== 1;
- this.multiple = !selection.length;
- },
- /* 融信编号赋值融资金额 */
- amount(item) {
- this.$set(this.form, "zfrAmount", item.zfiAmount);
- this.$set(this.form, "zfiAmount", item.zfiAmount);
- this.$set(this.form, "zfrRepaymentDate", item.zfiExpireDate);
- this.$set(this.form, "zfrRate", item.zfpcrRate);
- this.$set(this.form, "zfpcrLoanType", item.zfpcrLoanType);
- this.$set(this.form, "zfiProductId", item.zfiProductId);
- this.$set(this.form, "zfpcrChargeRate", item.zfpcrChargeRate);
- this.$set(this.form, "cost", item.cost);
- this.$set(this.form, "term", item.term);
- this.$set(this.form, "amount", item.amount);
- if (item.zfiId) {
- this.loading = true;
- listBillInf(item.zfiId)
- .then((response) => {
- this.billInfList = response.data;
- this.loading = false;
- })
- .then(() => {
- var queryParamsFile = {};
- queryParamsFile.ticketList = this.billInfList;
- getFile(queryParamsFile).then((response) => {
- if (response.data) {
- //获取发票文件
- this.invoiceFileList = response.data.invoiceFileList;
- //获取合同文件
- this.contractFileList = response.data.contractFileList;
- //获取其他文件
- this.otherFileList = response.data.otherFileList;
- }
- });
- if (item.zfpcrLoanType == "0") {
- listAccInf(item.zfiProductId).then((response) => {
- this.$set(this.form, "zfrCollectionAccount", response.msg);
- this.onlyRead = true;
- });
- }
- });
- getCreditDetail(item.zfiId).then((response) => {
- if (response.data) {
- this.forms = response.data.financeInf;
- //签发金额大写
- this.issuedAmount = this.smallToBig(this.forms.zfiAmount);
- //给表格赋值
- this.openName = response.data.openName;
- this.openCode = response.data.openCode;
- this.openBank = response.data.openBank;
- this.openAccount = response.data.openAccount;
- this.receiveName = response.data.receiveName;
- this.receiverCode = response.data.receiverCode;
- this.receiverBank = response.data.receiverBank;
- this.receiverAccount = response.data.receiverAccount;
- this.stopDate = response.data.stopDate;
- this.zfiRate = response.data.financeInf.zfiRate;
- }
- //盖章合同
- this.getCreditSealFile();
- });
- }
- },
- //详情按钮
- handleDetail(index, rows) {
- this.zbiId = rows[index].zbiId;
- this.openDetailBill = true;
- },
- /** 提交按钮 */
- submitForm() {
- this.$refs["form"].validate((valid) => {
- if (valid) {
- const loading = this.$loading({
- lock: true,
- text: "Loading",
- spinner: "el-icon-loading",
- background: "rgba(0, 0, 0, 0.7)",
- });
- addRecord(this.form)
- .then((response) => {
- loading.close();
- this.zfrId = response.data.zfrId;
- this.isOpenApproval();
- // this.msgSuccess("融资申请成功");
- // this.$store.dispatch("tagsView/delView", this.$route);
- // this.$router.go(-1);
- })
- .catch((response) => {
- loading.close();
- });
- }
- });
- },
- /* 清空 */
- clearBoth() {
- this.form.zfrAmount = "";
- this.form, (zfrRepaymentDate = "");
- this.form.zfrRate = "";
- this.form.zfpcrLoanType = "";
- this.billInfList = [];
- this.contractFileList = [];
- this.invoiceFileList = [];
- this.otherFileList = [];
- },
- //文件下载
- handleDownload(row) {
- debugger;
- const pfiFileUrl = row.pfiFileUrl;
- if (pfiFileUrl != null && pfiFileUrl != "") {
- const pfiFileName = row.pfiFileName;
- this.queryParamsDown.pfiFileUrl = pfiFileUrl;
- this.download(
- "sc-service/creditLine/jpgAuthorization",
- {
- ...this.queryParamsDown,
- },
- pfiFileName
- );
- // window.open(pfiUrl + "/" + getToken());
- } else {
- this.$message({
- message: "该附件不存在!",
- type: "warning",
- });
- return;
- }
- },
- //预览
- handlePreview(row) {
- const pfiUrl = row.pfiUrl;
- const pfiFileName = row.pfiFileName;
- if (row.pfiUrl) {
- console.log(pfiFileName.substr(-3));
- if (pfiFileName.substr(-3) == "pdf") {
- this.wordUrl = pfiUrl + "/" + getToken();
- this.show = false;
- this.heid = true;
- } else if (
- pfiFileName.substr(-3) == "jpg" ||
- pfiFileName.substr(-3) == "png" ||
- pfiFileName.substr(-3) == "JPG" ||
- pfiFileName.substr(-3) == "PNG" ||
- pfiFileName.substr(-4) == "jpeg" ||
- pfiFileName.substr(-3) == "JPEG"
- ) {
- this.wordUrl = pfiUrl + "/" + getToken();
- this.show = true;
- this.heid = false;
- console.log("====>", this.wordUrl);
- } else if (
- pfiFileName.substr(-3) == "doc" ||
- pfiFileName.substr(-3) == "DOC" ||
- pfiFileName.substr(-4) == "docx" ||
- pfiFileName.substr(-3) == "DOCX"
- ) {
- this.wordUrl =
- "https://view.officeapps.live.com/op/view.aspx?src=" +
- pfiUrl +
- "/" +
- getToken() +
- "/" +
- pfiFileName;
- this.show = false;
- this.heid = true;
- console.log("====>", this.wordUrl);
- } else {
- this.$message({
- message: "暂不支持该类型文件预览",
- type: "warning",
- });
- return;
- }
- }
- this.openFile = true;
- },
- //应收账款合计
- allAmount() {
- var strarr = [0.0];
- for (let i in this.billInfList) {
- strarr.push(this.billInfList[i]["zbiAmount"]);
- }
- return Math.round(eval(strarr.join("+")) * 100) / 100; //结果
- },
- /* // 将数字金额转换为大写金额 */
- 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;
- },
- /** 导出按钮操作 */
- handleExport() {
- this.download(
- "sc-service/record/export",
- {
- ...this.queryParams,
- },
- `sc-service_record.xlsx`
- );
- },
- // 取消按钮
- cancelFtp() {
- let form = {};
- form.zfrId = this.zfrId;
- cancelContract(form).then((response) => {
- this.cancel();
- });
- this.pdfShowDialog = false;
- },
- //查询有无融资内部审批
- isOpenApproval() {
- var confirmParam = {};
- confirmParam.menuId = "1000000006";
- isOpenApproval(confirmParam).then((response) => {
- var result = response.data.isOpen;
- //有融资内部审批
- if (true == result) {
- this.msgSuccess("已提交内部审批,请内部审批通过后签署融资协议");
- this.cancel();
- } else {
- //无融资内部审批,显示融资合同预览页面
- // this.zfrId = '2c83a92dc238468aabd9cd3261748ae0'
- getRecord(this.zfrId).then((response) => {
- this.zcFinanceInf = response.data.zcFinanceInf;
- this.needPay = response.data.needPay;
- //意愿类型
- this.zfpAuthType = response.data.zfpAuthType;
- this.selectPayment();
- });
- }
- });
- },
- //取消选择意愿
- cancelUpdate() {
- this.confirmIsShow = false;
- this.resetUpdate();
- },
- //关闭盖章短信
- cancelMessage() {
- this.messageIsShow = false;
- this.resetMessage();
- },
- //关闭授权编号激活短信
- cancelMessages() {
- this.messageIfShow = false;
- this.resetMessages();
- },
- //关闭二维码
- cancelFace() {
- this.faceIsShow = false;
- },
- closePdfShow() {
- this.pdfShowDialog = false;
- },
- resetUpdate() {
- this.updateForm = {
- radio: "",
- };
- //意愿类型还原为全部
- this.zfpAuthType = "00";
- this.resetForm("updateForm");
- },
- resetMessage() {
- this.messageForm = {
- validCode: "",
- };
- this.resetForm("messageForm");
- },
- resetMessages() {
- this.messagesForm = {
- validCode: "",
- };
- this.resetForm("messagesForm");
- },
- //获取合同文件
- getContractFile() {
- const loading = this.$loading({
- lock: true,
- text: "Loading",
- background: "rgba(0, 0, 0,0)",
- });
- getContractFile(this.zcFinanceInf)
- .then((response) => {
- loading.close();
- if (response.data.list) {
- this.pdfFileList = response.data.list;
- }
- //文件存在
- if (this.pdfFileList.length > 0) {
- this.pdfIsShow = true
- this.pdfShowDialog = true;
- } else {
- this.$message({
- message: "文件不存在!",
- type: "warning",
- });
- }
- })
- .catch((response) => {
- loading.close();
- });
- },
- //缴费查询
- selectPayment() {
- listCompanyHandler().then((response) => {
- var self = this;
- //self.paiAccno = '3115730025233104147';
- if (response.data == true) {
- cfcaProjectNo().then((response) => {
- if (response.data.scyCfcaAuthNumber == null) {
- this.messageIfShow = true;
- } else {
- var zfrId = self.zfrId;
- listChargeStatus(zfrId).then((response) => {
- if (response.data.accInfList[0]) {
- self.paiAccno = response.data.accInfList[0].paiAccno;
- }
- if (response.data.chargeInfList[0]) {
- if (response.data.chargeInfList[0].zciStatus == "00") {
- self.zciId = response.data.chargeInfList[0].zciId;
- self
- .$confirm("请缴纳手续费" + self.needPay + "元", "警告", {
- confirmButtonText: "去缴费",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(function () {
- const loading = self.$loading({
- lock: true,
- text: "Loading",
- spinner: "el-icon-loading",
- background: "rgba(0, 0, 0, 0.7)",
- });
- if (self.paiAccno) {
- balance(self.paiAccno)
- .then((response) => {
- if (
- eval(self.needPay) > eval(response.data.kyAmt)
- ) {
- self.$message({
- message:
- "余额为" +
- response.data.kyAmt +
- "不足以抵扣本次缴费费用,请及时充值",
- type: "warning",
- });
- loading.close();
- } else {
- console.log();
- var map = {
- recvAccNo: "",
- recvAccNm: "",
- tranAmt: self.needPay,
- businessId: self.zciId,
- type: "00",
- };
- transfer(map)
- .then((response) => {
- debugger;
- loading.close();
- setTimeout(() => {
- if (response.data.status == "1") {
- self.msgSuccess("缴费成功");
- updateChargeStatus(zfrId, "02").then(
- (res) => {
- self.getContractFile();
- }
- );
- } else if (response.data.status == "0") {
- self.message("正在缴费中,请稍后再试");
- updateChargeStatus(zfrId, "01").then(
- (res) => {}
- );
- } else if (response.data.status == "2") {
- self.msgError(
- "缴费失败,前去费用管理再次缴费"
- );
- updateChargeStatus(zfrId, "05").then(
- (res) => {}
- );
- }
- }, 1000);
- })
- .catch(() => {
- loading.close();
- });
- }
- })
- .catch(() => {
- loading.close();
- });
- } else {
- self.$message({
- message: "您还没有电子账户,请联系平台开通电子账户",
- type: "warning",
- });
- loading.close();
- }
- });
- } else {
- self.getContractFile();
- }
- } else {
- self.getContractFile();
- }
- });
- }
- });
- } else {
- this.$message({
- message: "此操作需经办人权限,请确认您是否是经办人",
- type: 'warning'
- });
- }
- });
- },
- //缴费
- selectType() {
- //选择签署意愿
- if (this.zfpAuthType == "00") {
- this.confirmIsShow = true;
- } else {
- this.checking();
- }
- },
- //确认选择
- confirmSelect() {
- if (!this.updateForm.radio) {
- this.$message({
- message: "请选择签署意愿类型",
- type: "warning",
- });
- return;
- }
- this.confirmIsShow = false;
- this.zfpAuthType = this.updateForm.radio;
- //调用人脸识别或者短信验证
- this.checking();
- },
- //去签署
- checking() {
- //人脸
- if (this.zfpAuthType == "01") {
- //调用人脸识别生成二维码
- faceAuth().then((response) => {
- console.log(response);
- if (response.data) {
- //获取二维码
- this.fileUrl = response.data.fileUrl;
- //获取源流水号
- var originalTxSN = response.data.originalTxSN;
- this.faceIsShow = true;
- //每5秒查证人脸识别结果
- var timeInterval = window.setInterval(() => {
- setTimeout(() => {
- //源流水不为空并且结果为空
- if (originalTxSN && !this.faceResult) {
- this.authForm.originalTxSN = originalTxSN;
- //调用查证方法
- checkFaceAuth(this.authForm).then((res) => {
- //认证结果
- this.faceResult = res.data.Verification;
- console.log("result:"+res.data.Verification);
- //成功
- if (this.faceResult == "20") {
- this.msgSuccess("验证成功");
- //关闭验证码
- this.faceIsShow = false;
- //关闭定时
- window.clearInterval(timeInterval);
- //调用盖章
- this.contractSigning();
- } else if (this.faceResult == "30") {
- this.$message({
- message: "验证失败",
- type: "warning",
- });
- //关闭验证码
- this.faceIsShow = false;
- window.clearInterval(timeInterval);
- }
- });
- }
- }, 0);
- }, 10000);
- }
- });
- } else if (this.zfpAuthType == "02") {
- //短信
- this.messageIsShow = true;
- }
- },
- //发送短信验证码
- send() {
- //发送
- sendMessage().then((response) => {
- if (response.data) {
- //手机号
- var newIphone = response.data.newIphone;
- //结果
- var result = response.data.result;
- //倒计时
- const TIME_COUNT = 60;
- if (!this.timer) {
- this.count = TIME_COUNT;
- this.showCode = false;
- this.timer = setInterval(() => {
- if (this.count > 0 && this.count <= TIME_COUNT) {
- this.count--;
- } else {
- this.showCode = true;
- clearInterval(this.timer);
- this.timer = null;
- }
- }, 1000);
- }
- //成功
- if ("20" == result) {
- this.$message({
- message:
- "已向经办人手机号为" + newIphone + "发送短信验证码,请注意查收",
- type: "warning",
- });
- } else if ("10" == result) {
- //失败
- this.$message({
- message: "短信发送失败",
- type: "warning",
- });
- }
- }
- });
- },
- //校验验证码是否正确
- checkCode() {
- if (!this.messageForm.validCode) {
- this.$message({
- message: "请输入验证码",
- type: "warning",
- });
- return;
- }
- //校验验证码
- checkCode(this.messageForm).then((response) => {
- if (response.data) {
- //结果
- var verification = response.data.verification;
- //匹配
- if ("20" == verification) {
- //进行下一步-- 盖章
- this.contractSigning();
- } else if ("30" == verification) {
- //不匹配
- this.$message({
- message: "验证有误,请重新输入",
- type: "warning",
- });
- }
- }
- });
- },
- //生成项目授权编号发送短信
- proSend() {
- //发送
- projectSendMessage().then((response) => {
- if (response.data) {
- //手机号
- var newIphone = response.data.newIphone;
- //结果
- var result = response.data.result;
- //项目编号
- this.projectCode = response.data.projectCode;
- //倒计时
- const TIME_COUNT = 60;
- if (!this.timerCode) {
- this.countCode = TIME_COUNT;
- this.showCodes = false;
- this.timerCode = setInterval(() => {
- if (this.countCode > 0 && this.countCode <= TIME_COUNT) {
- this.countCode--;
- } else {
- this.showCodes = true;
- clearInterval(this.timerCode);
- this.timerCode = null;
- }
- }, 1000);
- }
- //成功
- if ("60000000" == result) {
- this.$message({
- message:
- "已向经办人手机号为" + newIphone + "发送短信验证码,请注意查收",
- type: "warning",
- });
- } else {
- //失败
- this.$message({
- message: "短信发送失败",
- type: "warning",
- });
- }
- }
- });
- },
- //校验授权编号验证码
- checkProCode() {
- if (!this.projectForm.code) {
- this.$message({
- message: "请输入验证码",
- type: "warning",
- });
- return;
- }
- //项目编号
- this.projectForm.projectCode = this.projectCode;
- //校验验证码
- checkProCode(this.projectForm).then((response) => {
- if (response.data) {
- //结果
- var verification = response.data.verification;
- //匹配
- if ("60000000" == verification) {
- var zfrId = this.zfrId;
- listChargeStatus(zfrId).then((response) => {
- if (response.data[0]) {
- if (response.data[0].zciStatus == "00") {
- this.$confirm("请缴纳手续费" + this.needPay + "元", "警告", {
- confirmButtonText: "去缴费",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(function () {
- return updateChargeStatus(zfrId);
- })
- .then(() => {
- this.getContractFile();
- });
- } else {
- this.getContractFile();
- }
- } else {
- this.getContractFile();
- }
- });
- } else {
- //不匹配
- this.$message({
- message: "验证有误,请重新输入",
- type: "warning",
- });
- }
- }
- });
- },
- //盖章
- contractSigning() {
- var self = this;
- const loading = this.$loading({
- lock: true,
- text: "Loading",
- background: "rgba(0, 0, 0,0)",
- });
- self.zcFinanceInf.zfrId = self.zfrId;
- contractSigning(self.zcFinanceInf)
- .then((response) => {
- loading.close();
- self.msgSuccess("盖章成功");
- if (self.zfpAuthType == "02") {
- //关闭短信验证
- self.messageIsShow = false;
- } else if (self.zfpAuthType == "01") {
- //关闭人脸二维码
- self.faceIsShow = false;
- }
- // self.cancel();
- //关闭预览合同
- //self.closePdfShow();
- let queryStamped = {};
- queryStamped.zfrId = self.zfrId
- const load = self.$loading({
- lock: true,
- text: "Loading",
- background: "rgba(0, 0, 0,0)",
- });
- listStamped(queryStamped).then((response) =>{
- if(response.data){
- self.pdfFileList = response.data.list;
- }
- self.pdfShowDialog = true;
- self.pdfIsShow = false;
- load.close()
- }).catch((response) => {
- load.close();
- });
- })
- .catch((response) => {
- loading.close();
- });
- },
- closePDF(){
- this.cancel();
- //关闭预览合同
- this.closePdfShow();
- }
- },
- };
- </script>
- <style lang="scss" scoped>
- .zap-title {
- padding: 20px 25px;
- font-size: 16px;
- color: #333333;
- background-color: #ffffff;
- }
- .zap-form {
- padding: 0px 25px 8px;
- background-color: #ffffff;
- }
- .zap-form--clear {
- padding-left: 0;
- padding-right: 0;
- }
- </style>
- <style type="text/css">
- table.gridtable {
- font-size: 11px;
- color: #333333;
- border-width: 1px;
- border-collapse: collapse;
- }
- table.gridtable th {
- border-width: 1px;
- padding: 8px;
- border-style: solid;
- background-color: #dedede;
- }
- table.gridtable td {
- border-width: 1px;
- padding: 8px;
- border-style: solid;
- }
- </style>
|