<template> <c-row class="eibs"> <c-col :span="8"> <c-col :span="24"> <el-form-item label="业务参考号" style="float: left"> <c-input v-model="model.setmod.ref" maxlength="16" :disabled="true" :readonly="true" placeholder="请输入our reference" > </c-input> </el-form-item> </c-col> </c-col> <c-col :span="8"> <c-col :span="13"> <el-form-item label="结算金额录入" prop="setmod.doccur"> <c-input v-model="model.setmod.doccur" placeholder="CNY" :disabled="true" :readonly="true" style="width: 100%" ></c-input> </el-form-item> </c-col> <c-col :span="11"> <el-form-item label="" label-width="5px" prop="setmod.docamt"> <c-input-currency v-model="model.setmod.docamt" placeholder="0" disabled style="margin-left: 5px" ></c-input-currency> </el-form-item> </c-col> </c-col> <c-col :span="8"> <c-col :span="24" style="text-align: right"> <el-form-item label="类型" prop="setmod.dspflg"> <c-fullbox> <c-select v-model="model.setmod.dspflg" style="width: 100%" placeholder="请选择额度类型" disabled > <el-option v-for="item in codes.dspflg" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> <template slot="footer"> <c-button style="" size="small" type="primary" icon="el-icon-info" @click="onSetmodDet" > </c-button> </template> </c-fullbox> </el-form-item> </c-col> </c-col> <!-- ====================顶部==================== --> <c-col :span="24" style="height: 25px"> <el-divider></el-divider> </c-col> <!-- ==============第一个表格===================== --> <c-col :span="24" style="height: 24px"> <el-form-item class="formItemLabel" label="国外收费:" label-width="72px"> </el-form-item> </c-col> <c-col :span="24" style=""> <c-table style="text-align: center" :list="model.setmod.setfog.setfol" :paginationShow="true" :border="true" :total="model.setmod.setfog.setfol.length" > <el-table-column label="付款人" width="110px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfog.setfol.' + scope.$index + '.ptydbt'" > <c-select v-model="scope.row.ptydbt" @change="defaultFunction()"> <el-option v-for="item in codes.ptydbt_setpan" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </el-form-item> </template> </el-table-column> <el-table-column label="收款人" width="110px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfog.setfol.' + scope.$index + '.ptypay'" > <c-select v-model="scope.row.ptypay" @change="defaultFunction()"> <el-option v-for="item in codes.ptydbt_setpan" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </el-form-item> </template> </el-table-column> <el-table-column label="费用来源" prop="src" width="70px"> </el-table-column> <el-table-column label="处理方式" prop="dsp" width="110px"> </el-table-column> <el-table-column label="付款人摘要" prop="txtdbt" width="auto"> </el-table-column> <el-table-column label="收款人摘要" prop="txtpay" width="auto"> </el-table-column> <el-table-column label="币种" prop="cur" width="110px"> <template slot-scope="scope"> <c-select v-model="scope.row.cur"> <el-option v-for="item in codes.cur" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> </template> </el-table-column> <el-table-column label="金额" prop="amt" width="110px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfog.setfol.' + scope.$index + '.amt'" > </el-form-item> </template> </el-table-column> <el-table-column label="" prop="det" width="150px" fixed="right"> <template slot-scope="scope" slot="header"> <c-button circle style="padding: 4px" class="el-icon-plus" size="mini" @click="addRowSetfol(scope)" > </c-button> <c-button style="padding: 4px" circle class="el-icon-minus" size="mini" @click="removeRowSetfol(scope)" > </c-button> </template> <template slot-scope="scoped"> <c-button style="margin-left: 0" size="small" type="primary" icon="el-icon-info" @click="detail1(scoped.$index, scoped.row)" ></c-button> </template> </el-table-column> </c-table> </c-col> <c-col> <el-dialog :visible.sync="dialogVisible" center> <c-col> <el-form :model="dialog" label-width="200px"> <c-col :span="16"> <el-form-item label="收款人"> <c-select v-model="dialog.ptypay" style="width: 100%"> <el-option v-for="item in codes.payee" :key="item.value" :label="item.label" :value="item.value" /> </c-select> </el-form-item> </c-col> <c-col :span="16"> <el-form-item label="收款人摘要"> <c-input v-model="dialog.txtpay" style="width: 100%" /> </el-form-item> </c-col> <c-col :span="16"> <el-form-item label="付款人"> <c-select v-model="dialog.ptydbt" style="width: 100%"> <el-option v-for="item in codes.ptydbt1" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> </el-form-item> </c-col> <c-col :span="16"> <el-form-item label="付款人摘要"> <c-input v-model="dialog.txtdbt" style="width: 100%" /> </el-form-item> </c-col> <c-col :span="16"> <c-col :span="18"> <el-form-item label="费用"> <c-select v-model="dialog.cur" style="width: 100%" :code="codes.curtxt1"> </c-select> </el-form-item> </c-col> <c-col :span="6"> <el-form-item label="" label-width="20px"> <c-input-currency v-model="dialog.amt" style="width: 100%" /> </el-form-item> </c-col> </c-col> <c-col :span="16"> <el-form-item> <c-checkbox v-model="dialog.forflg">买入行费用</c-checkbox> </el-form-item> </c-col> </el-form> </c-col> <span slot="footer" class="dialog-footer"> <c-button type="primary" @click="saveDialog">确 定</c-button> <c-button @click="dialogVisible = false">取 消</c-button> </span> </el-dialog> </c-col> <!--=================== Own Commission/Charges:================== --> <c-col :span="24" style="height: 24px; margin-top: 25px"> <el-form-item class="formItemLabel" label="我行收费:" label-width="72px"> </el-form-item> </c-col> <c-col :span="24" style=""> <c-table style="text-align: center" :list="model.setmod.setfeg.setfel" :paginationShow="true" :border="true" :total="model.setmod.setfeg.setfel.length" > <el-table-column label="收取对象" width="110px"> <template #default="scope"> <el-form-item label-width="0" :prop="'setmod.setfeg.setfel.' + scope.$index + '.rol'" > <c-select v-model="scope.row.rol" @change="defaultFunction()"> <el-option v-for="item in codes.setfelRol" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </el-form-item> </template> </el-table-column> <el-table-column label="费用代码" width="110px"> <template #default="scope"> <el-form-item label-width="0" :prop="'setmod.setfeg.setfel.' + scope.$index + '.feecod'" > <c-select v-model="scope.row.feecod" @change="selectOrCheckboxRule('setmod.setfeg.setfel.feecod')" > <el-option v-for="item in codes.fepfeecod" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </el-form-item> </template> </el-table-column> <el-table-column label="费用来源" prop="src" width="70px"> </el-table-column> <el-table-column label="处理方式" prop="dsp" width="110px"> <template #default="scope"> <c-select v-model="scope.row.dsp" @change="dispDefault(scope.$index + 1)" > <el-option v-for="item in codes.setfeldsp" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </template> </el-table-column> <el-table-column label="份数" prop="unt" width="70px"> </el-table-column> <el-table-column label="费用描述" prop="feetxtinf" width="200px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfeg.setfel.' + scope.$index + '.feetxtinf'" > {{ scope.row.feetxtinf }} </el-form-item> </template> </el-table-column> <el-table-column label="币种" prop="cur" width="70px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfeg.setfel.' + scope.$index + '.cur'" > {{ scope.row.cur }} </el-form-item> </template> </el-table-column> <el-table-column label="应收金额" prop="ogiamt" width="110px"> </el-table-column> <el-table-column label="实收金额" prop="amt" width="auto"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setfeg.setfel.' + scope.$index + '.amt'" > {{ scope.row.amt }} </el-form-item> </template> </el-table-column> <el-table-column label="" prop="det" width="150px" fixed="right"> <template slot-scope="scope" slot="header"> <c-button circle style="padding: 4px" class="el-icon-plus" size="mini" @click="addRowSetfel(scope)" > </c-button> <c-button style="padding: 4px" circle class="el-icon-minus" size="mini" @click="removeRowSetfel(scope)" > </c-button> </template> <template slot-scope="scoped"> <c-button style="margin-left: 0" size="small" type="primary" icon="el-icon-info" @click="detail2(scoped.$index, scoped.row)" ></c-button> </template> </el-table-column> </c-table> </c-col> <div style="height=500px"> <setpan-dialog ref="setpanDialog" :model="model" :idx="index" :codes="codes" /> </div> <c-col :span="24" style="height: 24px; margin-top: 25px"> <el-form-item class="formItemLabel" label="结算:" label-width="48px"> <span style="color: red">{{ this.model.setmod.dspflg == "C" ? "temporary" : "" }}</span> </el-form-item> </c-col> <c-col :span="24" style=""> <c-table style="text-align: center" :list="stmData3" :paginationShow="true" :border="true" :total="stmData3.length" > <el-table-column label="修改标识" prop="modflg" width="70px"> </el-table-column> <el-table-column label="费用对象" prop="rol" width="70px"> </el-table-column> <el-table-column label="即收币种" prop="acccur" width="110px"> <template slot-scope="scope"> <c-select v-model="scope.row.acccur" @change="accucrChange(scope.$index)" > <el-option v-for="item in codes.acccur" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.label }}</span> </el-option> </c-select> </template> </el-table-column> <el-table-column label="记账金额" prop="fmtaccamt" width="110px"> <template slot-scope="scope"> <c-input v-model="scope.row.fmtaccamt" @change="fmtaccamtChange(scope.$index)" /> </template> </el-table-column> <el-table-column label="处理方式" width="110px" prop="dsp"> <template #default="scope"> <c-select v-model="scope.row.dsp" @change="dspChange(scope.$index)" v-if="scope.row.debcdtflg=='D'"> <el-option v-for="item in codes.setgll_dsp2" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.value }}</span> <span style="float: left; margin-left: 20px">{{ item.label }}</span> </el-option> </c-select> <c-select v-model="scope.row.dsp" @change="dspChange(scope.$index)" v-if="scope.row.debcdtflg=='C'"> <el-option v-for="item in codes.setgll_dsp1" :key="item.value" :label="item.value" :value="item.value" > <span style="float: left">{{ item.value }}</span> <span style="float: left; margin-left: 20px">{{ item.label }}</span> </el-option> </c-select> </template> </el-table-column> <el-table-column label="记账账号" prop="act" width="250px"> <template slot-scope="scope"> <el-form-item label-width="0" :prop="'setmod.setglg.setgll.' + scope.$index + '.act'" > <c-select v-model="scope.row.act"> <el-option v-for="item in scope.act" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> </el-form-item> </template> </el-table-column> <el-table-column label="借/贷" prop="debcdtflg" width="70px"> </el-table-column> <el-table-column label="原始币种" prop="cur" width="70px"> </el-table-column> <el-table-column label="原始金额" prop="fmtamt" width="110px"> </el-table-column> <el-table-column label="汇率" prop="rat" width="auto"> </el-table-column> <el-table-column label="" width="150px" fixed="right"> <template slot-scope="scoped"> <c-button style="margin-right: 10px" size="small" type="primary" >获取</c-button > <c-button style="margin-left: 0" size="small" type="primary" icon="el-icon-info" @click="handleDetail(scoped.$index, scoped.row)" ></c-button> </template> </el-table-column> </c-table> </c-col> <template> <el-dialog ref="detpDialog" :visible.sync="detpDialogVisible" width="70%" center > <el-form label-width="100px" :model="dialog3"> <c-row> <c-col :span="24" style="height: 24px"> <el-form-item label="基础信息" class="messageLabel"> </el-form-item> </c-col> <c-col :span="24" style="height: 0px; margin-top: -5px"> <el-divider></el-divider> </c-col> <c-col :span="24"> </c-col> <!-- <c-col :span="12"> <el-form-item label="rollab"> <c-input v-model="dialog3.rollab" maxlength="3" placeholder="请输入rollab"></c-input> </el-form-item> </c-col> --> <c-col :span="24" v-if="dialog3.amt > 0"> <el-form-item label="付款人"> <c-select v-model="dialog3.rol" style="width: 100%" placeholder="请输入role" > <el-option v-for="item in codes.rolall" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> </el-form-item> </c-col> <c-col :span="24" v-else> <el-form-item label="收款人"> <c-select v-model="dialog3.rol" style="width: 100%" placeholder="请输入role" > <el-option v-for="item in codes.rolall" :key="item.value" :label="item.label" :value="item.value" > </el-option> </c-select> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="处理" prop="setgll.dsp"> <c-select v-model="dialog3.dsp" style="width: 100%" placeholder="请选择Disposition" :code="codes.setglldsp" > </c-select> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="External" prop="setgll.setgrp.act.pts.extkey" > <c-input v-model="dialog3.setgrp.act.pts.extkey" maxlength="16" placeholder="请输入" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="seainf"> <c-col :span="18"> <c-input v-model="dialog3.actp.ptsget.sdamod.seainf" placeholder="请输入" ></c-input> </c-col> <c-col :span="6" style="text-align: right"> <c-button size="small" type="primary" @click="onActpDet" icon="el-icon-info" > </c-button> </c-col> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="账号"> <c-select v-model="dialog3.act" style="width: 100%" placeholder="请选择账号" > </c-select> </el-form-item> </c-col> <c-col :span="24"> <c-col :span="12"> <el-form-item label="科目代码"> <c-select v-model="dialog3.acttrmtyp" style="width: 100%" placeholder="请选择原始金额" > </c-select> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="起息日"> <c-date-picker type="date" v-model="dialog3.valdat" style="width: 100%" placeholder="请选择起息日" ></c-date-picker> </el-form-item> </c-col> </c-col> <c-col :span="24"> <el-form-item label="原始金额"> <c-col :span="8"> <c-select v-model="dialog3.cur" style="width: 100%" placeholder="请选择科目代码" > </c-select> </c-col> <c-col :span="8"> <el-form-item label="" label-width="5%"> <c-input v-model="dialog3.fmtamt" placeholder="请输入原始金额" ></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="" label-width="5%"> <c-select v-model="dialog3.modflg" style="width: 100%" placeholder="请选择Modified" :code="codes.setgll_modflg" > </c-select> </el-form-item> </c-col> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="实际金额"> <c-col :span="8"> <el-form-item label="" label-width="0"> <c-select v-model="dialog3.acccur" style="width: 100%" placeholder="请选择Amount handled" > </c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="" label-width="5%"> <c-input v-model="dialog3.fmtaccamt" placeholder="请输入实际金额" ></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="" label-width="5%"> <c-select v-model="dialog3.debcdtflg" style="width: 100%" placeholder="请选择Debit/Credit" :code="codes.setgll_debcdtflg" > </c-select> </el-form-item> </c-col> </el-form-item> </c-col> <!-- ---------------------- --> <c-col :span="23" style="height: 24px"> <el-form-item label="Cross信息" class="messageLabel"> </el-form-item> </c-col> <c-col :span="23" style="height: 0px; margin-top: -5px"> <el-divider></el-divider> </c-col> <c-col :span="24"> </c-col> <c-col :span="24"> <el-form-item label="Cross Rate"> <c-col :span="6"> <c-col :span="24"> <el-form-item label="" label-width="20%"> <span>利率类型</span> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="rattyp"></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dcbrattyp"></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="scbrattyp"></c-input> </el-form-item> </c-col> </c-col> <c-col :span="6"> <c-col :span="24"> <el-form-item label="" label-width="20%"> <span>Calculate Rate</span> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dialog3.rat" placeholder="请输入rate used" ></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dialog3.dcbextrat" placeholder="请输入Selling Rate" > </c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dialog3.scbextrat" placeholder="请输入Buying Rate" ></c-input> </el-form-item> </c-col> </c-col> <c-col :span="6"> <c-col :span="24"> <el-form-item label="" label-width="20%"> <span>From Date</span> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dialog3.xrtdatcur" placeholder="请输入xrtdatcur" ></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" label-width="20%"> <c-input v-model="dialog3.xrtdatacc" placeholder="请输入xrtdatacc" ></c-input> </el-form-item> </c-col> </c-col> <c-col :span="6"> <c-col :span="24"> <el-form-item label="牌价时间"> <c-input v-model="dialog3.xrttim" placeholder="请输入牌价时间" ></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="卖价" prop="setgll.midrat"> <c-input v-model="dialog3.selrat" placeholder="请输入卖价" ></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="中间价" prop="setgll.midrat"> <c-input v-model="dialog3.midrat" placeholder="请输入中间价" ></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="买价" prop="setgll.midrat"> <c-input v-model="dialog3.buyrat" placeholder="请输入买价" ></c-input> </el-form-item> </c-col> </c-col> </el-form-item> </c-col> <!-- ---------------------- --> <c-col :span="23" style="height: 24px"> <el-form-item label="交易信息" class="messageLabel"> </el-form-item> </c-col> <c-col :span="23" style="height: 0px; margin-top: -5px"> <el-divider></el-divider> </c-col> <c-col :span="24"> </c-col> <c-col :span="12"> <c-col :span="24"> <el-form-item label="交易主体" prop="setgll.trnman"> <c-select v-model="dialog3.trnman" style="width: 100%" placeholder="请选择交易主体" > </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="TRADE OUT" prop="setgll.trdout"> <c-select v-model="dialog3.trdout" style="width: 100%" placeholder="请选择TRADE OUT" > </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="TRADE IN" prop="setgll.trdint"> <c-select v-model="dialog3.trdint" style="width: 100%" placeholder="请选择TRADE IN" > </c-select> </el-form-item> </c-col> </c-col> <c-col :span="12"> <c-col :span="24"> <c-col :span="12"> <el-form-item label="传票摘要" prop="setgll.modifyflg"> <c-checkbox v-model="modifyflg" /> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="" label-width="5px" prop="setgll.txt"> <c-input type="textarea" v-model="dialog3.txt" maxlength="100" show-word-limit placeholder="请输入TXT" :disabled="!modifyflg" ></c-input> </el-form-item> </c-col> </c-col> <c-col :span="24"> <el-form-item label="文本1" prop="setgll.txt1"> <c-input type="textarea" v-model="dialog3.txt1" maxlength="100" show-word-limit placeholder="请输入文本" ></c-input> </el-form-item> </c-col> </c-col> <!-- ---------------------- --> <c-col :span="23" style="height: 24px"> <el-form-item label="交易详情" class="messageLabel"> </el-form-item> </c-col> <c-col :span="23" style="height: 0px; margin-top: -5px"> <el-divider></el-divider> </c-col> <c-col :span="24"> </c-col> <c-col :span="12"> <el-form-item label="交易性质"> <c-col :span="20"> <c-input v-model="dialog3.trntyp" maxlength="6" placeholder="请输入交易性质" ></c-input> </c-col> <c-col :span="4" style="text-align: right"> <c-button size="small" type="primary" icon="el-icon-search" @click="onSetgllCodsel" > </c-button> </c-col> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="国别代码" prop="setgll.ctycod"> <c-col :span="20"> <c-input v-model="dialog3.ctycod" maxlength="3" placeholder="请输入国别代码" ></c-input> </c-col> <c-col :span="4" style="text-align: right"> <c-button size="small" type="primary" icon="el-icon-search" @click="onSetgllCtysel" > </c-button> </c-col> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="对方名称" prop="setgll.oppnam"> <c-input v-model="dialog3.oppnam" maxlength="100" placeholder="请输入对方名称" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="国内地区代码" prop="setgll.discod"> <c-input v-model="dialog3.discod" maxlength="6" placeholder="请输入国内地区代码" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="对方账号" prop="setgll.oppacc"> <c-input v-model="dialog3.oppacc" maxlength="35" placeholder="请输入对方账号" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="虚拟号账号" prop="setgll.xzhacc"> <c-input v-model="dialog3.xzhacc" maxlength="40" placeholder="请输入虚拟号账号" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="对方银行代码" prop="setgll.oppbnk"> <c-input v-model="dialog3.oppbnk" maxlength="14" placeholder="请输入对方银行代码" ></c-input> </el-form-item> </c-col> <c-col :span="12"> <el-form-item label="虚拟号名称" prop="setgll.xzhnam"> <c-input v-model="dialog3.xzhnam" maxlength="50" placeholder="请输入虚拟号名称" ></c-input> </el-form-item> </c-col> </c-row> </el-form> <span slot="footer" class="dialog-footer"> <c-button type="primary" @click="saveDialog3">确 定</c-button> <c-button @click="detpDialogVisible = false">取 消</c-button> </span> </el-dialog> </template> </c-row> </template> <script> import Api from "~/service/Api"; import Utils from "~/utils"; import Factory from "./Factory"; import SetpanDialog from "../SetpanDialog.vue"; import CodeTable from "~/config/CodeTable"; import commonProcess from "~/mixin/commonProcess"; import Gitopn from "~/page/Business/Gitopn/model/index"; // import Settle from "~/model/Public/Settle.js"; export default { inject: ["root"], components: { SetpanDialog }, props: ["codes"], mixins: [commonProcess], data() { return { dialogVisible: false, dialog: { payee: "", ptydbt: "", txtpay: "", txtdbt: "", CG00005: "" }, newdialog: { payee: "", ptydbt: "", txtpay: "", txtdbt: "", CG00005: "" }, dialog2: { feetxtinf: "", feetxt: "" }, index: 0, detpDialogVisible: false, rattyp: "", dcbrattyp: "", scbrattyp: "", dialog3: { setgrp: { act: { pts: {} } }, actp: { ptsget: { sdamod: {} } } }, ogiamt: {}, stmData3: [], model: new Gitopn().data, }; }, // watch: { // "model.setmod.setglg.setgll": { // handler(val, oldVal) { // var stm = []; // for (let i = 0; i < val.length; i++) { // if (val[i].rol != "") { // val[i]["idx"] = i; // stm.push(val[i]); // } // } // this.stmData3 = stm; // } // } // }, methods: { async processSetpan() { console.log("setpan"+this.model); this.model.gidgrp.transName = "gitopn"; this.model.gidgrp.userId = "742549"; this.model.gidgrp.rec.objtyp = "GID"; this.model.gidgrp.rec.ownref = "LG3500230625AA"; this.model.gidgrp.rec.branchInr = ""; this.model.gidgrp.rec.detchgcod = "OUR"; this.model.gidgrp.rec.paytyp = "O"; this.model.gidgrp.rec.swftyp = "103"; this.model.gidgrp.rec.valdat = ""; this.model.gidgrp.rec.gartyp = "1"; this.model.gidgrp.cbs.opc2.cur = ""; this.model.gidgrp.cbs.opc2.amt = "0.000"; this.model.gidgrp.cbs.opn1.cur = "USD"; this.model.gidgrp.cbs.opn1.amt = "1000.000"; this.model.gidgrp.cbs.opn2.cur = "USD"; this.model.gidgrp.cbs.opn2.amt = "1000.000"; this.model.gidgrp.cbs.max.cur = "USD"; this.model.gidgrp.cbs.max.amt = "1000.000"; this.model.gidgrp.cbs.mac2.cur = ""; this.model.gidgrp.cbs.mac2.amt = "0.000"; this.model.gidgrp.cbs.mac.cur = ""; this.model.gidgrp.cbs.mac.amt = "0.000"; this.model.gidgrp.cbs.cnf.cur = "USD"; this.model.gidgrp.cbs.cnf.amt = "1000.000"; let pts = { rol: "BEN", nam: "", ptyinr: "", ptainr: "", extkey: "999900000009", dftdsp: "", dftcur: "", dftact: "", dftfeecur: "", dftactptainr: "", glggrpflg: "", adrblk: "T2342342324234 22342342" }; this.model.gidgrp.ben.pts = pts; let pts2 = { rol: "ADV", nam: "", ptyinr: "", ptainr: "", extkey: "EVERCNBJBUS-001", dftdsp: "", dftcur: "", dftact: "", dftfeecur: "", dftactptainr: "", glggrpflg: "", adrblk: "CHINA EVERBRIGHT BANK 100031 BEIJING CHINA" }; this.model.gidgrp.adv.pts = pts2; let pts3 = { rol: "APL", nam: "", ptyinr: "", ptainr: "11593263", extkey: "2000017770-001", dftdsp: "", dftcur: "", dftact: "", dftfeecur: "", dftactptainr: "", glggrpflg: "", adrblk: "Brilliance Technology Co., Ltd. 8 / F, block B, building 2, Jinyuan East lantianchang Road,Haidian Dist 100087BEIJING, CHINA" }; this.model.gidgrp.apl.pts = pts3; this.model.settle.setglg.setgll = []; this.model.settle.setfog.setfol = []; this.model.settle.setfeg.setfel = []; let transName = "gitopn"; let buildData = Factory[transName]; if (!buildData) { //提示未注册的费用计算处理 this.$notify.error({ title: "错误", message: "未注册的费用计算处理!" }); } let settleBuildObj = new buildData(this.model); settleBuildObj.buildSettle(); let settle = settleBuildObj.model.settle; // console.log("111111"); // console.log(settleBuildObj); //发出API请求 const loading = this.loading("正在请求数据"); const rulePath = "/business/setmod/calcSettleDetail"; console.log(this.model.settle); let rtnmsg = await Api.post(rulePath, settle); // console.log("rtnmsg"); if (rtnmsg.respCode == SUCCESS) { Utils.copyValueFromVO(this.model.settle, rtnmsg,data); let i = 0; for (let item of this.model.settle.setglg.setgll) { if (item.rol != "") { item.idx = i; this.stmData3.push(item); i++; } this.model.setmod.setfeg.setfel = this.model.settle.setglg.setgll; this.model.setmod.setfog.setfol = this.model.settle.setglg.setgll; // this.model.setmod.setglg.setgll = rtnmsg.data.setglg.setgll; // } } loading.close(); }, //第一个表格 addRowSetfol() { let newRow = { ...this.newdialog }; this.model.setmod.setfog.setfol.splice(0, 0, newRow); this.defaultFunction(); }, removeRowSetfol() { this.model.setmod.setfog.setfol.shift(); this.defaultFunction(); }, saveDialog() { this.dialogVisible = false; this.model.setmod.setfog.setfol.splice(this.index, 1, this.dialog); }, // 第二个表格 addRowSetfel() { let newRow = { ...this.dialog2 }; this.model.setmod.setfeg.setfel.splice(0, 0, newRow); this.defaultFunction(); }, removeRowSetfel() { this.model.setmod.setfeg.setfel.shift(); this.defaultFunction(); }, detail1(index, row) { this.executeDefault("setfel.det").then(res => { this.index = index; this.dialogVisible = true; this.dialog = row; }); }, dispDefault(index) { this.executeDefault(`setmod.setfeg.setfel(${index}).mac`).then(res => { Utils.copyValueFromVO(this.model, res.data); }); }, // 第二个表格 detail2(index, row) { const that = this; const rule = "setmod.setfeg.setfel(" + (index + 1) + ").det"; that.executeRule(rule).then(res => { that.index = index; that.$refs.setpanDialog.visiable = true; // that.$refs.setpanDialog.formData = that.model.setmod.setfeg.setfel[index]; that.dialog2 = row; }); }, // 第三个表格 saveDialog3() { this.detpDialogVisible = false; this.model.setmod.setglg.setgll.splice(this.index, 1, this.dialog3); }, async handleDetail(index, row) { const that = this; const rule = "setmod.setglg.setgll(" + (index + 1) + ").det"; let rtnmsg = await this.executeRule(rule); if (rtnmsg.respCode == SUCCESS) { that.index = index; that.$refs.detpDialog.visiable = true; this.detpDialogVisible = true; that.dialog3 = that.model.setmod.setglg.setgll[index]; that.rattyp = that.strCalCode(that.dialog3.rattyp, that.codes.ratetype); that.dcbrattyp = that.strCalCode( that.dialog3.dcbrattyp, that.codes.ratetype ); that.scbrattyp = that.strCalCode( that.dialog3.scbrattyp, that.codes.ratetype ); } }, strCalCode(str, code) { var result = ""; for (let i = 0; i < code.length; i++) { if (code[i].value === str) { result = code[i].label; continue; } } if (result === "") { return str; } else { return result; } }, onMtdbutButapy() {}, onActpDet() {}, onSetgllCodsel() {}, onMtdbutButcan() {}, onSetgllCtysel() {}, onSetgllDetget() {}, async onSetmodDet() { let rtnmsg = await this.executeRule("setmod.det"); if (rtnmsg.respCode == SUCCESS) { //TODO 处理数据逻辑 } else { this.$notify.error({ title: "错误", message: "服务请求失败!" }); } }, async accucrChange(index) { let rtnmsg = await this.executeRule( "setmod.setglg.setgll(" + (index + 1) + ").acccur" ); if (rtnmsg.respCode == SUCCESS) { //TODO 处理数据逻辑 this.updateModel(rtnmsg.data); this.$nextTick(() => { this.executeRule("setmod.glemod.glepan").then(res => { //TODO 处理数据逻辑 if (res.respCode == SUCCESS) this.updateModel(res.data); }); }); } }, async fmtaccamtChange(index) { let rtnmsg = await this.executeRule( "setmod.setglg.setgll(" + (index + 1) + ").fmtaccamt" ); if (rtnmsg.respCode == SUCCESS) { //TODO 处理数据逻辑 this.updateModel(rtnmsg.data); this.$nextTick(() => { this.executeRule("setmod.glemod.glepan").then(res => { //TODO 处理数据逻辑 if (res.respCode == SUCCESS) this.updateModel(res.data); }); }); } }, async dspChange(index) { let rtnmsg = await this.executeDefault( "setmod.setglg.setgll(" + (index + 1) + ").dsp" ); if (rtnmsg.respCode == SUCCESS) { //TODO 处理数据逻辑 this.updateModel(rtnmsg.data); this.$nextTick(() => { this.executeRule("setmod.glemod.glepan").then(res => { //TODO 处理数据逻辑 if (res.respCode == SUCCESS) this.updateModel(res.data); }); }); } } }, created: function() {}, computed: { modifyflg: { get() { return this.dialog3.modifyflg === "X"; }, set(val) { this.dialog3.modifyflg = val ? "X" : ""; } } } }; </script> <style scoped> .el-col >>> .el-divider--horizontal { margin-top: 10px; } .formItemLabel >>> .el-form-item__label { text-align: left; font-weight: bold; } .messageLabel >>> .el-form-item__label { text-align: left; font-weight: bold; font-size: 12px; } </style>