import commonFunctions from '~/mixin/commonFunctions.js'; import buildFn from './buildCommons.js'; import Utils from "~/utils" import Pts from '~/components/business/commonModel/Pts'; import Api from '~/service/Api'; import { cloneDeep } from "lodash"; export default { mixins: [commonFunctions], methods: { qicujeGet() { if (!this.model.dnfmod.yewudh) { this.$message.warning("请先点击查询按钮,再进行操作!"); return; } let params = { DATA: { "yewudh": this.model.dnfmod.yewudh }, header: { "jiaoym": "C017" } }; const loading = this.loading('正在请求数据'); Api.post(`/public/jk/C017`, params).then(res => { if (res.header.code == 'AAAAAAA') { console.log(res.DATA); this.model.dnfmod.qicuje = '0'; if (res.DATA.lstC017.length > 0) { this.model.dnfmod.qicuje = res.DATA.lstC017[0].qcunje; } } else { this.$notify.error({ title: '错误', message: '起存金额Get失败,原因:' + res.header.description }); } loading.close(); }); }, ccvpanCurrentChange(params) { this.resetDnfmod(); if(params) { this.model.dnfmod.kehuzh = params.acc; this.model.dnfmod.cur = params.cur; this.handleOperationList(); } this.delZhruzh(); }, resetDnfmod(){ this.model.dnfmod.ccvtyp= ""; // 操作类型 .dnfmod.ccvtyp this.model.dnfmod.kehuzh= ""; // 保证金账户 .dnfmod.kehuzh this.model.dnfmod.zhruzh= ""; // 本金转入账户 .dnfmod.zhruzh this.model.dnfmod.zhqtyp= ""; // 支取类型 .dnfmod.zhqtyp this.model.dnfmod.tizamt= ""; // 部分提支金额 .dnfmod.tizamt this.model.dnfmod.zhhuye= ""; // 账户余额 .dnfmod.zhhuye this.model.dnfmod.zhqucs= ""; // 支取次数 .dnfmod.zhqucs this.model.dnfmod.lxzyzh= ""; // 利息转入账户 .dnfmod.lxzyzh this.model.dnfmod.yewudh= ""; // 业务代号 .dnfmod.yewudh this.model.dnfmod.qicuje= ""; // 起存金额 .dnfmod.qicuje this.model.dnfmod.intdsp= ""; // 利息转入账户 .dnfmod.intdsp this.model.dnfmod.pridsp= ""; // 本金转入账户 .dnfmod.pridsp this.model.dnfmod.qixirq= "";// 起息日 .dnfmod.qixirq this.model.dnfmod.jiluzt= "";// 记录状态 this.model.dnfmod.cur="";//币种 this.model.dnfmod.kehzwm="";//客户中文名 this.model.dnfmod.zhngjg="";//账务机构号 this.model.dnfmod.jixiff="";//计息方法 this.model.dnfmod.lilvbh="";//利率编号 this.model.dnfmod.jishuu="";//积数 this.model.dnfmod.zuidje="";//最低金额 this.model.dnfmod.zuigje="";//最高金额 this.model.dnfmod.kaihrq="";//开户日期 this.model.dnfmod.lilvll="";//利率 this.model.dnfmod.kemucc="";//科目存储 this.model.dnfmod.huobdh="";//货币代号 this.model.dnfmod.xiohrq="";//销户日期 this.model.dnfmod.ljzqje="";//累计支取金额 this.model.dnfmod.kaihje="";//开户金额 this.model.dnfmod.cunkzl="";//存款种类 this.model.dnfmod.cunqii="";//存期 this.model.dnfmod.daoqrq="";//到期日 this.model.dnfmod.youhll="";//优惠利率 this.model.dnfmod.zdzczh="";//自动转存账户this.model.dnfmod. this.$set(this.codes, 'tableDataList', []); }, // 定期转活期 addZhruzh(){ let currentZH = {}; let currentIndex = -1; // 选中的定期保证金原始行 for(var i = 0;i<this.model.liaccv.liaccvg.length;i++){ if(this.model.liaccv.liaccvg[i].ccdflg == 'X'){ currentZH = this.model.liaccv.liaccvg[i]; currentIndex = i; break; } } // model.dnfmod.ccvtyp 操作类型 定期转活期-C // model.dnfmod.zhqtyp 支取类型 B-部分提支 C-存款销户 // model.dnfmod.tizamt 部分提支金额 B时,>0 C时,不用判断, // model.dnfmod.pridsp 本金转入账户 2149 国结暂收款项 // model.dnfmod.zhruzh 具体账户 有值 this.model.liaccv.liaccvg[currentIndex].bflg = 'N'; this.model.liaccv.liaccvg[currentIndex].amt = 0; this.model.liaccv.liaccvg = this.model.liaccv.liaccvg.filter(item => item.bflg != 'Y'); if(this.model.dnfmod.ccvtyp == 'C'){ // B-部分提支 if(this.model.dnfmod.zhqtyp == 'B' && this.model.dnfmod.pridsp == '2149' && this.model.dnfmod.zhruzh != '' && this.model.dnfmod.tizamt != '' && this.model.dnfmod.tizamt > 0){ this.model.liaccv.liaccvg[currentIndex].bflg = 'N'; this.model.liaccv.liaccvg[currentIndex].amt = -this.model.dnfmod.tizamt; let newRow = { bflg: "Y", cur: currentZH.cur, // 币种 oldamt: 0, // 初始余额 amt: this.model.dnfmod.tizamt, // 变动金额 acc: this.model.dnfmod.zhruzh, // 保证金账号 bid: currentZH.bid, newFlag:'Y', }; this.model.liaccv.liaccvg.push(newRow); } // C-存款销户 if(this.model.dnfmod.zhqtyp == 'C' && this.model.dnfmod.pridsp == '2149' && this.model.dnfmod.zhruzh != '' && this.model.dnfmod.tizamt == ''){ this.model.liaccv.liaccvg[currentIndex].bflg = 'N'; this.model.liaccv.liaccvg[currentIndex].amt = -this.model.liaccv.liaccvg[currentIndex].oldamt; let newRow = { bflg: "Y", cur: currentZH.cur, // 币种 oldamt: 0, // 初始余额 amt: this.model.dnfmod.zhhuye, // 账户余额 acc: this.model.dnfmod.zhruzh, // 保证金账号 bid: currentZH.bid, newFlag:'Y', }; this.model.liaccv.liaccvg.push(newRow); } } }, delZhruzh(){ this.model.liaccv.liaccvg = this.model.liaccv.liaccvg.filter(item => item.bflg != 'Y'); for(var i = 0;i<this.model.liaccv.liaccvg.length;i++){ if(this.model.liaccv.liaccvg[i].bflg == 'N'){ this.model.liaccv.liaccvg[i].amt = 0; this.model.liaccv.liaccvg[i].bflg= ""; } } }, //账户change触发方法 changeKehuzh() { // this.model.dnfmod.ccvtyp = ''; // this.changeCcvtyp(isInit); // this.operationsList = []; // this.tableDataList = []; // if (this.model.dnfmod.kehuzh) { // for (var i = 0; i < this.accountList.length; i++) { // if (this.accountList[i].value == this.model.dnfmod.kehuzh) { // this.model.dnfmod.cur = this.accountList[i].cur; // } // } // let dflg = this.calcDflg(this.model.dnfmod.kehuzh); // this.operationsList.push({ label:"保证金账户冻结",value: "A"}); // this.operationsList.push({ label:"保证金账户解冻",value: "B"}); // if ('81' == dflg) { // this.operationsList.push({ label:"定期转活期",value: "C"}); // } // } }, //调用核心8023接口 onDnfmodGet() { let params = { DATA: { "zhangh": this.model.dnfmod.kehuzh //"35000124690005001" // "zhangh": 35000124690005001 //"35000124690005001" }, header: { "jiaoym": "8023" } }; let dataList = []; // const loading = this.loading('正在请求数据'); Api.post(`/public/jk/8023`, params).then(res => { if (res.header.code == 'AAAAAAA') { console.log(res.DATA); this.model.dnfmod.yewudh = res.DATA.yewudh; this.model.dnfmod.zhqucs = res.DATA.zhqucs; this.model.dnfmod.zhhuye = res.DATA.zhhuye; this.model.dnfmod.qixirq = res.DATA.qixirq; this.model.dnfmod.jiluzt = res.DATA.jiluzt; this.model.dnfmod.kehzwm = res.DATA.kehzwm; //客户中文名 this.model.dnfmod.zhngjg = res.DATA.zhngjg; //账务机构号 this.model.dnfmod.jixiff = res.DATA.jixiff; //计息方法 this.model.dnfmod.lilvbh = res.DATA.lilvbh; //利率编号 this.model.dnfmod.jishuu = res.DATA.jishuu; //积数 this.model.dnfmod.zuidje = res.DATA.zuidje; //最低金额 this.model.dnfmod.zuigje = res.DATA.zuigje; //最高金额 this.model.dnfmod.kaihrq = res.DATA.kaihrq; //开户日期 this.model.dnfmod.lilvll = res.DATA.lilvll; //利率 this.model.dnfmod.kemucc = res.DATA.kemucc; //科目存储 this.model.dnfmod.huobdh = res.DATA.huobdh; //货币代号 this.model.dnfmod.xiohrq = res.DATA.xiohrq; //销户日期 this.model.dnfmod.ljzqje = res.DATA.ljzqje; //累计支取金额 this.model.dnfmod.kaihje = res.DATA.kaihje; //开户金额 this.model.dnfmod.cunkzl = res.DATA.cunkzl; //存款种类 this.model.dnfmod.cunqii = res.DATA.cunqii; //存期 this.model.dnfmod.daoqrq = res.DATA.daoqrq; //到期日 this.model.dnfmod.youhll = res.DATA.youhll; //优惠利率 this.model.dnfmod.zdzczh = res.DATA.zdzczh; //自动转存账户 dataList.push(this.transTableData(this.model.dnfmod)); this.$set(this.codes, 'tableDataList', dataList); } else { this.$notify.error({ title: '错误', message: '保证金账户查询失败,原因:' + res.header.description }); } }); }, //本金转入账户 changePridsp() { this.model.dnfmod.zhruzh = ''; this.zhruzhList = []; if (!this.model.dnfmod.pridsp || !this.model.dnfmod.kehuzh) { return; } let params = { ptyinr: this.model.nidgrp.apl.pts.ptyinr, cur: this.model.dnfmod.cur, pridsp: this.model.dnfmod.pridsp, wrkbchinr: this.model.nidgrp.rec.branchinr, transName: "niteng", userId: window.sessionStorage.userId ? window.sessionStorage.userId : '742549' }; const loading = this.loading('正在请求数据'); Api.post(`/business/niteng/rulePridspN1000`, params).then(res => { if (res.respCode == SUCCESS) { console.log(res.data); if (res.data.length == 1 && res.data[0].indexOf('\r\n') !== -1) { let tempList = res.data[0].split('\r\n') for (let i = 0; i < tempList.length; i++) { this.zhruzhList.push({ value: tempList[i], label: tempList[i] }); } } else { for (let i = 0; i < res.data.length; i++) { this.zhruzhList.push({ value: res.data[i], label: res.data[i] }); } } if (this.zhruzhList.length > 0 && !this.model.dnfmod.zhruzh) { this.model.dnfmod.zhruzh = this.zhruzhList[0].value; } } else { this.$message.error("本金转入账户查询异常:" + res.respMsg); } loading.close(); }); }, //利息转入账户 changeIntdsp() { this.lxzyzhList = []; this.model.dnfmod.lxzyzh = ''; if (!this.model.dnfmod.intdsp || !this.model.dnfmod.kehuzh) { return; } let params = { ptyinr: this.model.nidgrp.apl.pts.ptyinr, cur: this.model.dnfmod.cur, intdsp: this.model.dnfmod.intdsp, wrkbchinr: this.model.nidgrp.rec.branchinr, transName: "niteng", userId: window.sessionStorage.userId ? window.sessionStorage.userId : '742549' }; const loading = this.loading('正在请求数据'); Api.post(`/business/niteng/ruleIntdspN1000`, params).then(res => { if (res.respCode == SUCCESS) { console.log(res.data); if (res.data.length == 1 && res.data[0].indexOf('\r\n') !== -1) { let tempList = res.data[0].split('\r\n') for (let i = 0; i < tempList.length; i++) { this.lxzyzhList.push({ value: tempList[i], label: tempList[i] }); } } else { for (let i = 0; i < res.data.length; i++) { this.lxzyzhList.push({ value: res.data[i], label: res.data[i] }); } } if (this.lxzyzhList.length > 0 && !this.model.dnfmod.lxzyzh) { this.model.dnfmod.lxzyzh = this.lxzyzhList[0].value; } } else { this.$message.error("利息转入账户查询异常:" + res.respMsg); } loading.close(); }); }, //操作类型赋值 handleOperationList(){ let dflg; let len = this.model.dnfmod.kehuzh.trim().length; if (len == 17) { dflg = this.model.dnfmod.kehuzh.slice(6, 8) } if (len == 21) { dflg = this.model.dnfmod.kehuzh.slice(10, 12) } if (this.model.dnfmod.kehuzh.slice(0, 3) == "ZMQ" || this.model.dnfmod.kehuzh.slice(0, 3) == "NRA") { dflg = this.model.dnfmod.kehuzh.slice(9, 11) } let operationsList = []; switch (dflg) { case "81": operationsList.push({ label: "保证金账户冻结", value: "A" }); operationsList.push({ label: "保证金账户解冻", value: "B" }); operationsList.push({ label: "定期转活期", value: "C" }); break; default: operationsList.push({ label: "保证金账户冻结", value: "A" }); operationsList.push({ label: "保证金账户解冻", value: "B" }); } this.$set(this.codes, 'operationsList', operationsList); }, // 是否SWIFT格式修改--联动保函开立类型 handleChangeSwiftflg() { // this.queryHndtypCodeTableList(this.root.trnName); }, // 支出目的修改--联动保函开立类型 handleChangePurpos(purposOld) { // DNGDEV 1770 if (this.model.nidgrp.rec.purpos != "") { // read previous value of purpos // previous value = with Seq. C fields if ("ISCO ICCO".indexOf(purposOld) > -1) { // new value ? if (this.model.nidgrp.rec.purpos.substr(3, 2) == "CO") { // ok, Seq. C fields still allowed } else { // DNGDEV 1770 clear fields in Sequence C this.model.nidgrp.rec.accc = ""; this.model.nidgrp.rec.deloric = ""; this.model.nidgrp.rec.deloritxtc = ""; this.model.nidgrp.rec.deltoc = ""; this.model.nidgrp.rec.demandc = ""; this.model.nidgrp.rec.gartypc = ""; // DNGDEV.003055 this.model.gitp.covgodsrvcmodflg = ""; this.model.gitp.liatxtcmodflg = ""; this.model.gitp.prepercmodflg = ""; this.model.gitp.gidtxtmodflgc = ""; this.model.nidgrp.rec.gtxinrc = ""; this.model.nidgrp.rec.jurlawc = ""; this.model.nidgrp.rec.jurlawtxtc = ""; this.model.nidgrp.rec.jurplcc = ""; this.model.nidgrp.rec.legfrmc = ""; this.model.nidgrp.rec.liadat = ""; this.model.nidgrp.rec.opndatc = ""; this.model.nidgrp.rec.orcamtc = "0"; this.model.nidgrp.rec.orccurc = ""; this.model.nidgrp.rec.orcdatc = ""; this.model.nidgrp.rec.orcratc = ""; this.model.nidgrp.rec.orcrefc = ""; this.model.nidgrp.rec.stdwrduilc = ""; this.model.nidgrp.rec.tenclsdatc = ""; this.model.nidgrp.rec.tendatc = ""; this.model.nidgrp.rec.tenrefc = ""; this.model.nidgrp.rec.trmdatc = ""; this.model.nidgrp.blk.addamtcovc = ""; this.model.nidgrp.blk.addinfc = ""; this.model.nidgrp.blk.atxliatxtc = ""; this.model.nidgrp.blk.atxcovgodsrvc = ""; this.model.nidgrp.blk.apprulc = ""; this.model.nidgrp.blk.covgodsrvc = ""; this.model.nidgrp.blk.feetxtc = ""; this.model.nidgrp.blk.gartyptxtc = ""; this.model.nidgrp.blk.gtxgidtxtc = ""; this.model.nidgrp.blk.liatxtc = ""; this.model.nidgrp.blk.orcplcc = ""; this.model.nidgrp.blk.preperc = ""; this.model.nidgrp.cbs.mac.cur = ""; this.model.nidgrp.cbs.mac.amt = '0.00'; this.model.nidgrp.cbs.mac2.cur = ""; this.model.nidgrp.cbs.mac2.amt = '0.00'; this.model.gitp.aacp.aacmod.addamtflg = ""; let pts = new Pts().data; Utils.copyValueFromVO(this.model.nidgrp.apc.pts, pts); Utils.copyValueFromVO(this.model.nidgrp.ctc.pts, pts); Utils.copyValueFromVO(this.model.nidgrp.iss.pts, pts); Utils.copyValueFromVO(this.model.nidgrp.bec.pts, pts); } } } }, // 保函开立类型 handleChangeHndtyp() { //文青姐说先不改,概率不大 //改完对应前段model无对应字段 空跑 }, handleChangeFingua() { if (this.model.nidgrp.cbs.max.cur == "CNY") { if (this.model.nidgrp.rec.fingua == "Y") { this.model.nidgrp.rec.cmtflg = "X" } else { this.model.nidgrp.rec.cmtflg = "" } this.defaultVouflgN1000(); } }, defaultVouflgN1000() { //2122 //--暂时只有保函开立交易用-- //2017-4人行 要求2122对保函开立交易开放外币申报 if (this.model.nidgrp.cbs.max.cur == "CNY") { if (this.model.nidgrp.rec.cmtflg != "") { this.model.cnybop.vouflg = "" } else { this.model.cnybop.vouflg = "2" } } else { if (this.model.nidgrp.rec.fingua == "Y") { this.model.cnybop.vouflg = "1" } else { this.model.cnybop.vouflg = "2" } } }, transTableData(tableData) { if (!tableData) { return; } let result = cloneDeep(tableData); if (tableData.jiluzt) { result.jiluzt = this.tranSta(tableData.jiluzt); } if (tableData.kemucc) { result.kemucc = this.tranKemucc(tableData.kemucc); } if (tableData.lilvbh) { result.lilvbh = this.tranLilvbh(tableData.lilvbh); } if (tableData.cunqii) { result.cunqii = this.tranCunq(tableData.cunqii); } if (tableData.cunkzl) { result.cunkzl = this.tranCunkzl(tableData.cunkzl); } return result; }, tranSta(jiluzt) { switch (jiluzt) { case "0": return "正常"; case "1": return "销户"; case "2": return "只收不付冻结"; case "3": return "封闭冻结"; case "4": return "删除"; case "5": return "未使用"; case "6": return "结清"; case "7": return "打印"; case "8": return "碰库"; case "9": return "不动户"; case "A": return "不动户转收益"; case "B": return "死亡户"; case "C": return "报案户"; case "D": return "请与开户行接洽"; case "E": return "不能在他行销记户"; case "F": return "准客户"; case "G": return "未复核"; case "R": return "被当日冲正"; case "S": return "被隔日冲正"; case "J": return "禁用"; case "Y": return "预销户"; case "Z": return "质押冻结"; case "T": return "凭证在途"; default: return ""; } }, tranKemucc(kemucc) { switch (kemucc) { case "S": return "对私活期"; case "C": return "对公活期"; case "F": return "对私定期"; case "E": return "对公定期"; case "V": return "贷款"; case "Q": return "欠息"; case "I": return "内部账"; case "O": return "表外账"; case "T": return "拆借贴现投资账"; case "Y": return "存放同业主文件"; default: return ""; } }, tranLilvbh(lilvbh) { switch (lilvbh) { case "100": return "定活两便"; case "101": return "活期储蓄存款"; case "102": return "整存整取定期存款"; case "103": return "零存整取"; case "105": return "存本取息"; case "106": return "通知存款"; case "107": return "大面额定期"; case "108": return "活期对公存款"; case "109": return "公积金存款"; default: return ""; } }, tranCunq(cunqii) { switch (cunqii) { case "200": return "活期"; case "201": return "一天"; case "207": return "七天"; case "101": return "一月"; case "103": return "三月"; case "106": return "六月"; case "109": return "九月"; case "001": return "一年"; case "002": return "二年"; case "003": return "三年"; case "005": return "五年"; case "006": return "六年"; case "008": return "八年"; case "010": return "十年"; case "020": return "二十年"; case "000": return "自定义"; default: return ""; } }, tranCunkzl(cunkzl) { switch (cunkzl) { case "00": return "普通活期"; case "01": return "整存整取"; case "02": return "定活两便"; case "03": return "存本取息"; case "04": return "零存整取"; case "05": return "通知存款"; case "06": return "教育储蓄"; case "07": return "整存零取"; case "08": return "凭证式国债"; case "09": return "理财通"; case "10": return "对公活期"; case "11": return "对公整存整取"; case "12": return "对公大额存款"; case "15": return "对公通知存款"; case "16": return "对公大额通知存款"; case "17": return "储寿保"; case "18": return "理财产品"; case "19": return "购汇保证金"; case "20": return "对公结构性存款"; case "21": return "对公存款周计划"; case "28": return "储蓄国债"; case "29": return "黄金理财"; case "30": return "活期宝"; default: return ""; } }, changeLimitbody(emitParams) { let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName); switch (emitParams.code) { case 'trial': this.trialLimitbody(limitbodyRequest); break; case 'query': this.queryLimitbody(limitbodyRequest); break; default: return } }, }, };