<template> <div class="eibs-tab"> <c-list-search @form-reset="handleReset" @form-search="handleSearch"> <!-- 持续展示区 --> <template v-slot="searchSlot"> <el-form class="m-table-search-form" ref="paramsForm" label-position="right" label-width="110px" size="small"> <c-row> <c-col :span="24"> <c-col :span="8"> <el-form-item label="打包托收编号" prop="infcon.seaownref" style="width: 100%"> <c-input v-model="model.infcon.seaownref" maxlength="16" placeholder="请输入打包托收编号"> </c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="开立日期" prop="infcon.opndatfrom" style="width: 100%"> <c-col :span="11"> <c-date-picker type="date" v-model="model.infcon.opndatfrom" style="width:100%" placeholder="请选择"></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.infcon.opndatto" style="width:100%" placeholder="请选择"></c-date-picker> </c-col> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="当事人参考号" prop="infcon.searef" style="width: 100%"> <c-input v-model="model.infcon.searef" maxlength="16" placeholder="请输入当事人参考号"> </c-input> </el-form-item> </c-col> </c-col> </c-row> <c-row v-show="searchSlot.searchToggle"> <c-col :span="24"> <c-col :span="8"> <el-form-item label="简略信息" prop="infcon.nam" style="width: 100%"> <c-input v-model="model.infcon.nam" maxlength="40" placeholder="请输入简略信息"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="当事人名称" prop="infcon.pty.nam" style="width: 100%"> <c-input v-model="model.infcon.pty.nam" maxlength="40" placeholder="请输入当事人名称" disabled> </c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="当事人BIC编码" prop="infcon.seapty" style="width: 100%"> <c-input v-model="model.infcon.seapty" maxlength="24" placeholder="请输入当事人BIC编码"> </c-input> </el-form-item> </c-col> </c-col> <c-col :span="24"> <c-col :span="8"> <el-form-item label="当事人编号" prop="infcon.pty.extkey" style="width: 100%"> <c-input v-model="model.infcon.pty.extkey" maxlength="24" placeholder="请输入当事人编号"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="客户经理" prop="infcon.usr.extkey" style="width: 100%"> <c-input v-model="model.infcon.usr.extkey" maxlength="8" placeholder="请输入客户经理" disabled> </c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="角色" prop="infcon.searol" style="width: 100%"> <c-select v-model="model.infcon.searol" style="width:100%" placeholder="请选择角色"> <el-option v-for="item in codes.searol2" :key="item.value" :label="item.label" :value="item.value"> </el-option> </c-select> </el-form-item> </c-col> </c-col> <c-col :span="24"> <c-col :span="8"> <el-form-item label="状态" prop="infcon.seasta" style="width:100%"> <c-select v-model="model.infcon.seasta" style="width:100%" placeholder="请选择状态"> <el-option v-for="item in codes.seasta" :key="item.value" :label="item.label" :value="item.value"> </el-option> </c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="金额区间" prop="infcon.seaamtfr" style="width: 100%"> <c-col :span="11"> <c-input v-model="model.infcon.seaamtfr" placeholder="请输入金额区间"> </c-input> </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-input v-model="model.infcon.seaamtto" placeholder="请输入Amount to"></c-input> </c-col> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="币种" prop="infcon.seacur" style="width:100%"> <c-select v-model="model.infcon.seacur" style="width:100%" placeholder="请选择币种"> <el-option v-for="item in codes.curtxt1" :key="item.value" :label="item.label" :value="item.value"> </el-option> </c-select> </el-form-item> </c-col> </c-col> <c-col :span="24"> <c-col :span="8"> <el-form-item label="付款条件" prop="seadoctypcod" style="width:100%"> <c-select v-model="model.seadoctypcod" style="width:100%" placeholder="请选择付款条件"> <el-option v-for="item in codes.seadoctypcod" :key="item.value" :label="item.label" :value="item.value"> </el-option> </c-select> </el-form-item> </c-col> </c-col> </c-row> </el-form> </template> </c-list-search> <c-col :span="24" style="margin-top: 10px"> <c-button class="medium_bcs" size="medium" style="margin-bottom: 7px" type="primary" @click="toCltdav">打包托收开立 </c-button> </c-col> <div style="height: 90%"> <c-col :span="24"> <el-tabs v-model="activeTab" class="y-tabs"> <el-tab-pane label="打包托收" name="cl"> <el-table :data="stmData.data" :columns="stmData.columns" :showButtonFlg="true" > <el-table-column v-for="(item, key) in stmData.columns" :key="key" :label="item.label" :prop="item.prop" ></el-table-column> <!-- 自定义组件里加了最右边的一列”操作“ --> <el-table-column fixed="right" prop="op" label="操作" width="140px"> <template slot="header"> <!-- 插槽里放了一个文字 一个按钮 --> <c-col :span="11" style="text-align: center" ><span>操作</span> </c-col> </template> <template slot-scope="scope"> <c-button style="margin-right: 7px" size="small" type="primary" @click="handler(clTrnMasp)" >处理 </c-button> <!-- 申请一个弹出主键放在插槽,加工已渲染的数据 --> <el-popover placement="top-start" title="历史信息" width="800" trigger="click" :ref="'popover_' + scope.row.IDX" > <div style=" text-align: right; margin-top: -30px; margin-right: 5px; font-size: 16px; " > <span class="el-icon-close" style="cursor: pointer" @click="closeDetailsDialog('popover_' + scope.row.IDX)" ></span> </div> <el-table :data="trnData.data" :columns="trnData.columns" :showButtonFlg="true" > <el-table-column v-for="(item, key) in trnData.columns" :key="key" :label="item.label" :prop="item.prop" > <template slot-scope="scope"> <div>{{ scope.row[item.prop] }}</div> </template> </el-table-column> <el-table-column fixed="right" prop="op" label="操作" width="250px" > <template slot-scope="scope"> <c-button style="margin-left: 0" size="small" @click="display(scope.row['inr'])" >详情</c-button > </template> </el-table-column> </el-table> <c-button style="margin-left: 0px" size="small" @click="details(scope.row)" slot="reference" > 详情 </c-button> </el-popover> </template> </el-table-column> </el-table> <div class="pagination-box"> <el-pagination style="margin-right: 30px;" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="pagination.pageIndex" :page-sizes="[10, 20, 50, 100, 500]" :page-size="pagination.pageSize" layout="sizes, prev, pager, next" :total="pagination.total"> </el-pagination> </div> </el-tab-pane> </el-tabs> </c-col> <!-- 点击处理ba弹框 --> <el-dialog :visible.sync="initdialog" v-dialogDrag title="交易列表" append-to-body width="60%" > <div class="dialog-wrap"> <div class="btn-group-wrap"> <div class="btn-item" v-for="(item, index) in handlerDataList" :key="index" > <el-button type="primary" class="medium_bcs" :disabled="item.value === 'N'" @click="handleClick(item)" >{{ item.label }} </el-button> </div> </div> </div> </el-dialog> </div> </div> </template> <script> import event from "../event"; // import CltselModel from "~/model/Cltsel" // import BusNavbar from "./BusNavbar"; export default { inject: ['root'], props: ["model", "codes"], mixins: [event], // components: { "m-busbtn": BusNavbar }, data() { return { activeTab:'cl', amt: '', inr: '', opndat: '', // CltselModel: new CltselModel().data, ownref: "", initdialog: false, // transactionStatus: { // busiNo: "", // modTimes: 0, // postCount: 0, // accCount: 0, // earnCount: 0, // earnAmt: 0 // }, trnData: { columns: [ { label: "编号", prop: "inr", }, { label: "交易名称", prop: "ininam", }, { label: "日期", prop: "inidattim", }, { label: "状态", prop: "relflg", }, { label: "币种", prop: "reloricur", }, { label: "金额", prop: "reloriamt", }, ], data: [], }, stmData: { columns: [ { label: "打包托收编号", prop: "seaownref", }, { label: "客户经理", prop: "ownusr", }, { label: "开立日期", prop: "opndat", }, { label: "当事人编号", prop: "colExtkey", }, { label: "关闭日期", prop: "clsdat", }, // { // label: "代收行", // prop: "", // }, { label: "打包托收金额币种", prop: "seacur", }, { label: "打包托收金额", prop: "maxamt", }, { label: "打包托收余额币种", prop: "opncur", }, { label: "打包托收余额", prop: "opnamt", }, ], data: [ { seaownref:"CL7654090002AA", ownusr:"710293", opndat:"2023-12-10", colExtkey:"2001921101", clsdat:"", seacur:"CNY", maxamt:"1920.00", opncur:"CNY", opnamt:"1920.00", } ], }, clTrnMasp:[ { label:"打包托收催收", code:"clttra", value:"Y", }, { label:"打包托收解包", code:"cltset", value:"Y", }, ], initdialog: false, btnRouteMap: [ { label: '打包托收催收', route: '/business-new/clttra' }, { label: '打包托收解包', route: '/business-new/cltset' }, ], pagination: { pageIndex: 1, pageSize: 10, total: 0, }, handlerDataList: [], } }, methods: { // ...Event, // async getButtons(ownref,amt,inr,opndat,closedDate) { // this.CltselModel.clsflg = (closedDate ?? "").trim() === "" ? "" : "C"; // this.$refs.childs.initdialog = true // this.ownref = ownref // this.amt = amt; // this.inr = inr; // this.opndat = opndat; // console.log("ownref:" + ownref); // }, // async onChoose(code, prePageId) { // //跳转交易 // // this.$router.history.push("/business/" + code) // this.$router.push({ name: code.charAt(0).toUpperCase() + code.substring(1), params: { prePageId } }); // this.$refs.childs.initdialog = false // }, // closeTrn(refId) { // this.$refs[refId].doClose(); // }, // async getTrnInfo(idx, row) { // this.model.infcon.objinr = row["INR"]; // this.model.infcon.cldgrp.rec.inr = row["INR"]; // this.model.infcon.chksubcon = "X"; // let rtnmsg = await this.executeDefault("infcon.chksubcon"); // if ((rtnmsg.respCode = SUCCESS)) { // this.trnData.data = rtnmsg.data.infcon_trnstm.rows; // console.log(this.trnData.data); // } // }, // async getDitSelInfo(idx, row) { // //TD中选中行触发 // var params = { selDst: "infbut.dspstm", selIds: [idx + 1] } // let rtnmsg = await this.executeRule("infbut.dspstm", params); // if (rtnmsg.respCode = SUCCESS) { // this.updateModel(rtnmsg.data); // // Utils.copyValueFromVO(this.model, rtnmsg.data); // //TD中点击display时触发 // params = { selDst: "infbut.dsp", selIds: [idx + 1] } // let rtnmsgNew = await this.executeRule("infbut.dsp", params); // if (rtnmsgNew.respCode = SUCCESS) { // console.log(rtnmsgNew); // this.updateModel(rtnmsgNew.data); // let rtnmsgOitset = await this.executeDefault("mtabut.coninf.oitset.oit"); // if (rtnmsgOitset.respCode = SUCCESS) { // Utils.copyValueFromVO(this.model, rtnmsgOitset.data); // } // } // } // //触发父组件中updateShowPanel 事件,修改index中showPanel ,控制 index中组件的显示和隐藏 // this.$emit('updateShowPanel', true) // }, }, created: function () { } } </script> <style> .btn-group-wrap { max-height: 200px; width: 100%; overflow-y: auto; display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; } .btn-item { margin-bottom: 10px; margin-right: 10px; } .medium_bcs { border-radius: 5px; } </style>