<template> <div class="eibs-tab"> <c-list-search @form-reset="handleReset('paramsForm')" @form-search="handleSearch()"> <!-- 持续展示区 --> <template v-slot="searchSlot"> <el-form class="m-table-search-form" ref="paramsForm" label-position="right" label-width="110px" size="small" :model="model"> <el-row> <c-col :span="8"> <el-form-item label="关联业务编号" prop="relref"> <c-input v-model="model.relref" maxlength="16" placeholder="请输入关联业务编号"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="经办机构号" prop="bchcod"> <c-select v-model="model.bchcod" :isShowKeyAndLabel="true" :disabled="model.bchcod!='ALL'" @change="getWrkBchlist(model.bchcod)" style="width:100%" placeholder="请输入经办机构号"> <el-option v-for="item in bchlist" :key="item.branch" :label="item.branch + ' ' + item.bchname" :value="item.branch"> <span style="float: left">{{ item.branch }} - {{ item.bchname }}</span> </el-option> </c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="银行请求状态" prop="bnkaplsta"> <c-select v-model="model.bnkaplsta" dbCode="bnkapl" :filterKey="['ALL','WAI','BRK','APL','CHK','RFU','REG','RCV','UND','ABA','DEL','CHG']" style="width:100%" placeholder="请输入银行请求状态"> </c-select> </el-form-item> </c-col> </el-row> <!-- 可控展示区 --> <el-row v-show="searchSlot.searchToggle"> <el-row> <c-col :span="8"> <el-form-item label="本行融资申请编号" prop="ownref"> <c-input v-model="model.ownref" maxlength="16" placeholder="请输入本行融资申请编号"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="归属机构号" prop="ownbchcod"> <c-select v-model="model.ownbchcod" :disabled="model.bchcod == 'ALL'" style="width:100%" placeholder="请选择归属机构号"> <el-option v-for="item in wrkbchlist" :key="item.branch" :label="item.branch + ' ' + item.bchname" :value="item.branch"> <span style="float: left">{{ item.branch }} - {{ item.bchname }}</span> </el-option> </c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="请求结果" prop="aplret"> <c-select v-model="model.aplret" dbCode="aplret" style="width:100%" placeholder="请选择请求结果"> </c-select> </el-form-item> </c-col> </el-row> <el-row> <c-col :span="8"> <el-form-item label="客户号" prop="cliextkey"> <c-input v-model="model.cliextkey" maxlength="12" placeholder="请输入客户号"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="资产状态" prop="blcsta"> <c-select v-model="model.blcsta" dbCode="blcsta" :filterKey="['APPLY','CHECK','PAY','REC','ACCEPT_AGREE','ACCEPT_REFUSE','AUDIT_AGREE','AUDIT_REFUSE','CANCEL_PAY','CLEAR','GIVE_UP_BY_BAN','CORRECT','GIVE_UP']" style="width:100%" placeholder="请选择资产状态"> </c-select> </el-form-item> </c-col> </el-row> <el-row> <c-col :span="8"> <el-form-item label="创建日期" style="width: 100%"> <c-col :span="11"> <c-date-picker type="date" v-model="model.credatsta" style="width: 100%" placeholder="请选择起始日期" value-format="yyyy-MM-dd"></c-date-picker> </c-col> <c-col :span="2" style="text-align: center"> <label style="display: inline-block; width: 100%">-</label> </c-col> <c-col :span="11"> <c-date-picker type="date" v-model="model.credatend" style="width: 100%" placeholder="请选择截止日期" value-format="yyyy-MM-dd"></c-date-picker> </c-col> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="上链结果" prop="sta"> <c-select v-model="model.sta" dbCode="sta" :filterKey="['PENDING','SUCCESS','FAIL','ERROR']" style="width:100%" placeholder="请选择上链结果"> </c-select> </el-form-item> </c-col> </el-row> </el-row> </el-form> </template> </c-list-search> <el-col :span="24" style="margin-top: 10px;margin-bottom: 10px;"> <c-button class="medium_bcs" size="medium" type="primary" @click="toDbablc" style="margin-left: 0px"> 出口应收账款融资新增 </c-button> <c-button class="medium_bcs" size="medium" type="primary" @click="toCicsel" style="margin-left: 30px"> 企业跨境信用信息授权查证 </c-button> <c-button class="medium_bcs" size="medium" type="primary" @click="toEntatr" style="margin-left: 30px"> 企业授权情况查询 </c-button> </el-col> <el-col :span="24" style="margin-top: 10px"> <el-tabs v-model="activeTab" class="y-tabs"> <el-tab-pane label="信息" name="bs"> <c-col :span="24"> <el-table v-loading="load" :data="tableData" style="width:100%" size="small" :border="true" :highlight-current-row="true"> <el-table-column label="本行融资申请编号" prop="ownref" min-width="180px" align="left" fixed="left"></el-table-column> <el-table-column label="关联业务编号" prop="relref" min-width="180px" align="left"></el-table-column> <el-table-column label="客户号" prop="cliextkey" min-width="180px" align="left"></el-table-column> <el-table-column label="客户名称" prop="clinam" min-width="180px" align="left"></el-table-column> <el-table-column label="归属机构" prop="ownbchcod" min-width="180px" align="left"></el-table-column> <el-table-column label="申请日期" prop="finappdat" min-width="180px" align="left"></el-table-column> <el-table-column label="关单核验币种" prop="cur" min-width="80px" align="left"></el-table-column> <el-table-column label="申请融资金额" prop="amt" min-width="180px" align="left"></el-table-column> <el-table-column label="银行请求状态" prop="bnkaplsta" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.bnkaplsta,'bnkapl') }} </span> </template> </el-table-column> <el-table-column label="请求结果" prop="aplret" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.aplret,'aplret') }} </span> </template> </el-table-column> <el-table-column label="资产状态" prop="blcsta" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.blcsta,'blcsta') }} </span> </template> </el-table-column> <el-table-column label="上链结果" prop="sta" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.sta,'sta') }} </span> </template> </el-table-column> <el-table-column label="应收账款总金额" prop="rcvtotamt" min-width="180px" align="left"></el-table-column> <el-table-column label="报关单使用金额" prop="useamt" min-width="180px" align="left"></el-table-column> <el-table-column label="报关单使用情况" prop="usecon" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.usecon,'usecon') }} </span> </template> </el-table-column> <el-table-column label="报关单核验情况" prop="chkcon" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.chkcon,'usecon') }} </span> </template> </el-table-column> <el-table-column label="放款币种" prop="finloacur" align="left"></el-table-column> <el-table-column label="放款金额" prop="finloaamt" min-width="180px" align="left"></el-table-column> <el-table-column label="放款日期" prop="loadat" min-width="180px" align="left"></el-table-column> <el-table-column label="回款合同日期" prop="conenddat" min-width="180px" align="left"></el-table-column> <el-table-column label="还款币种" prop="rcvcur" min-width="180px" align="left"></el-table-column> <el-table-column label="还款金额" prop="rcvamt" min-width="180px" align="left"></el-table-column> <el-table-column label="预计还款日期" prop="prcrepdat" min-width="180px" align="left"></el-table-column> <el-table-column label="实际还款日期" prop="facrcvdat" min-width="180px" align="left"></el-table-column> <el-table-column label="外管局融资编号" prop="wgrref" min-width="180px" align="left"></el-table-column> <el-table-column label="经办机构号" prop="bchcod" min-width="180px" align="left"></el-table-column> <el-table-column label="是否已被废弃" prop="delflg" min-width="180px" align="left"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.delflg,'fsadel') }} </span> </template> </el-table-column> <el-table-column label="更新时间" prop="updtim" min-width="180px" align="left"></el-table-column> <el-table-column fixed="right" prop="op" label="操作" width="160px"> <template slot-scope="scope"> <c-button style="margin-right: 7px" size="small" type="text" @click="handler(scope.row)">处理 </c-button> <c-button style="margin-right: 7px" size="small" type="text" @click="toDbiblc(scope.row)">明细展示 </c-button> </template> </el-table-column> </el-table> <el-pagination layout="total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange" @current-change="handleCurrentChange" :total="pagination.total" :page-size="pagination.pageSize" :current-page.sync="pagination.pageIndex"> </el-pagination> </c-col> </el-tab-pane> </el-tabs> </el-col> <!-- 点击处理ba弹框 --> <el-dialog v-if="initdialog" v-dialogDrag :visible.sync="initdialog" title="交易列表" append-to-body width="60%"> <m-busbtn ref="childs" :trnUrl="trnUrl" :inifrm="inifrm" :activeTab="activeTab" :codes="dbCodes" :model="handleModel" @onChoose="handleClick"></m-busbtn> </el-dialog> <!-- 废弃弹框 --> <el-dialog v-if="deldialogfig" v-dialogDrag :visible.sync="deldialogfig" title="数据删除原因"> <el-form ref="deldialogForm" :model="model" :rules="rules" label-width="100px"> <el-form-item label="数据删除原因" prop="recgrp.rec.delrea"> <c-input type="textarea" :row="10" v-model="model.recgrp.rec.delrea" maxlength="49" show-word-limit placeholder="请输入数据删除原因"></c-input> </el-form-item> </el-form> <span slot="footer" class="dialog-footer"> <c-button type="primary" @click="finDelete()">确 定</c-button> <c-button @click="deldialogfig = false">取 消</c-button> </span> </el-dialog> <!-- 放款登记冲正弹框 --> <el-dialog v-if="unddialog" v-dialogDrag :visible.sync="unddialog" title="放款登记冲正"> <el-form ref="unddialogForm" :model="model" :rules="rules" label-width="100px"> <el-form-item label="放款登记冲正原因" prop="recgrp.rec.rfurea"> <c-input type="textarea" :row="10" v-model="model.recgrp.rec.rfurea" placeholder="请输入放款登记冲正原因"></c-input> </el-form-item> </el-form> <span slot="footer" class="dialog-footer"> <c-button type="primary" @click="correct()">确 定</c-button> <c-button @click="unddialog = false">取 消</c-button> </span> </el-dialog> <!-- 拒绝受理弹框 --> <el-dialog v-if="rfudialog" v-dialogDrag :visible.sync="rfudialog" title="融资受理拒绝理由"> <el-form ref="rfudialogForm" :model="model" :rules="rules" label-width="100px"> <el-form-item label="融资受理拒绝理由" prop="recgrp.rec.rfurea"> <c-input type="textarea" :row="10" v-model="model.recgrp.rec.rfurea" placeholder="请输入融资受理拒绝理由"></c-input> </el-form-item> </el-form> <span slot="footer" class="dialog-footer"> <c-button type="primary" @click="accept()">确 定</c-button> <c-button @click="rfudialog = false">取 消</c-button> </span> </el-dialog> <!-- 日志查询弹框 --> <el-dialog title="日志查询结果界面" v-dialogDrag v-if="logdialogfig" :visible.sync="logdialogfig" append-to-body width="80%"> <div style="width: 100%;height: 100%;"> <el-table :data="logresLst" height="calc(100% - 32px)" style="width: 100%;"> <el-table-column label="操作类型" prop="hndtyp" width="auto"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.hndtyp,'fsaopt') }} </span> </template> </el-table-column> <el-table-column label="操作柜员" prop="hndusr" width="auto"> </el-table-column> <el-table-column label="请求状态" prop="bnkaplsta" width="auto"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.bnkaplsta,'bnkapl') }} </span> </template> </el-table-column> <el-table-column label="请求结果" prop="aplret" width="auto"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.aplret,'aplret') }} </span> </template> </el-table-column> <el-table-column label="上链状态" prop="blcsta" width="auto"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.blcsta,'blcsta') }} </span> </template> </el-table-column> <el-table-column label="业务处理状态" prop="sta" width="auto"> <template slot-scope="scope"> <span> {{getCodelabel(scope.row.sta,'sta') }} </span> </template> </el-table-column> <el-table-column label="操作时间" prop="updtim" width="auto"> </el-table-column> <el-table-column label="提示信息" prop="hinmsg" width="auto"> </el-table-column> <el-table-column label="融资申请编号" prop="ownref" width="auto"> </el-table-column> <el-table-column label="唯一标识" prop="fsainr" width="auto"> </el-table-column> </el-table> </div> </el-dialog> </div> </template> <script> import Api from "~/service/Api"; import event from "../event"; import BusNavbar from "~/components/business/BusNavbar1"; import CodeTable from "~/config/CodeTable"; import commonFunctions from "~/mixin/commonFunctions.js"; import commonDepend from "~/mixin/commonDepend.js"; export default { inject: ["root"], props: ["model", "codes"], mixins: [event, commonFunctions, commonDepend], components: { "m-busbtn": BusNavbar }, data() { return { activeTab: "bs", // tabs当前展示的tab showDig: false, // 弹框的展示/隐藏 bchlist: [], wrkbchlist: [], tableData: [], logresLst: [], load: false, initdialog: false, deldialogfig: false, logdialogfig: false, rfudialog: false, //拒绝受理弹窗 unddialog: false, pagination: { pageIndex: 1, pageSize: 10, total: 0 }, dbCodes: { bnkapl: [], aplret: [], blcsta: [], sta: [], fsadel: [], fsaopt: [], usecon: [] }, rules: { "recgrp.rec.delrea": [{ required: true, message: "必输项" }], "recgrp.rec.rfurea": [{ required: true, message: "必输项" }] } }; }, methods: { //数据删除 async finDelete() { this.$refs.deldialogForm.validate(async valid => { if (valid) { let params = { fininr: this.handleModel.inr, fsainr: this.handleModel.fsainr, delrea: this.model.recgrp.rec.delrea }; const loading = this.loading("正在删除数据"); let rtnmsg = await Api.post("/Financing/wgbsel/delete", params); if (rtnmsg.respCode == SUCCESS) { loading.close(); this.$notify({ title: "废弃成功", message: "该记录" + this.handleModel.ownref + "废弃成功!", type: "success" }); } else { this.$notify.error({ title: "错误", message: "服务请求失败!" }); } loading.close(); this.closeDialog(); } }); }, // 关闭删除弹窗 async closeDialog() { this.model.recgrp.rec.delrea = ""; this.deldialogfig = false; }, //拒绝受理 async accept() { this.$refs.rfudialogForm.validate(async valid => { if (valid) { let params = { fininr: this.handleModel.inr, fsainr: this.handleModel.fsainr, rfurea: this.model.recgrp.rec.rfurea }; const loading = this.loading("正在调用拒绝受理接口"); let rtnmsg = await Api.post("/Financing/wgbsel/accept", params); if (rtnmsg.respCode == SUCCESS) { loading.close(); if (rtnmsg.data.result) { this.model.recgrp.rec = rtnmsg.data.fin; this.model.recgrp.fsa = rtnmsg.data.fsa; this.$alert("接口调用成功!", "提示", { confirmButtonText: "确认", callback: action => { if (action == "confirm") { (this.initdialog = false), this.routerPush({ path: "/business/wgbsel", }); this.queryDetail(); } } }); } else { this.$notify.error({ title: "错误", message: rtnmsg.data.fsa.hinmsg }); } } else { this.$notify.error({ title: "错误", message: "服务请求失败!" }); } loading.close(); this.model.recgrp.rec.rfurea = ""; this.rfudialog = false; } }); }, //放款登记冲正 async correct() { this.$refs.unddialogForm.validate(async valid => { if (valid) { let params = { fininr: this.handleModel.inr, fsainr: this.handleModel.fsainr, rfurea: this.model.recgrp.rec.rfurea }; const loading = this.loading("正在调用放款登记冲正接口"); let rtnmsg = await Api.post("/Financing/wgbsel/correct", params); if (rtnmsg.respCode == SUCCESS) { loading.close(); if (rtnmsg.data.result) { this.model.recgrp.rec = rtnmsg.data.fin; this.model.recgrp.fsa = rtnmsg.data.fsa; this.$alert("接口调用成功!", "提示", { confirmButtonText: "确认", callback: action => { if (action == "confirm") { (this.initdialog = false), this.routerPush({ path: '/business/wgbsel', }); this.queryDetail(); } } }); } else { this.$notify.error({ title: "错误", message: rtnmsg.data.fsa.hinmsg }); } } else { this.$notify.error({ title: "错误", message: "服务请求失败!" }); } loading.close(); this.model.recgrp.rec.rfurea = ""; this.unddialog = false; } }); }, getCodelabel(value, codenam) { const codeobj = this.dbCodes[codenam].find(obj => obj.value === value); return codeobj ? codeobj.label : value; }, getBchlist(branch) { this.getBchcodlist({ branch: branch }).then(res => { if (res.respCode == "AAAAAA") { const list = res.data; this.bchlist = list; } }); }, getWrkBchlist(branch) { this.model.ownbchcod = ""; if (branch == "") { this.wrkbchlist = []; } else if (branch == "ALL") { this.wrkbchlist = [{ branch: "ALL", bchname: "ALL" }]; this.model.ownbchcod = "ALL"; } else { this.getBchcodlist({ branch: branch }).then(res => { if (res.respCode == "AAAAAA") { const list = res.data; this.wrkbchlist = list; if (this.wrkbchlist.length == 1) { this.model.ownbchcod = JSON.parse( JSON.stringify(this.wrkbchlist[0]) ).branch; } else { let all = { branch: "ALL", bchname: "ALL" }; list.unshift(all); } } }); } } }, computed: {}, mounted() { this.init(); this.getdbCode("bnkapl", "CN", "bnkapl"); this.getdbCode("aplret", "CN", "aplret"); this.getdbCode("blcsta", "CN", "blcsta"); this.getdbCode("sta", "CN", "sta"); this.getdbCode("fsadel", "CN", "fsadel"); this.getdbCode("fsaopt", "CN", "fsaopt"); this.getdbCode("usecon", "CN", "usecon"); } }; </script> <style scoped lang="less"> </style>