Commit 2107de65 by chengzhuoshen

前端保证金模块分离

parent 8f2892a9
......@@ -500,18 +500,48 @@ export default class Gitopn{
amt:"", // Balance .gidgrp.cbs.cnf.amt
},
},
apl:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.apl.namelc
adrelc:"", // 地址 .gidgrp.apl.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.apl.dbfadrblkcn
},
ben:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.ben.namelc
adrelc:"", // 地址 .gidgrp.ben.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.ben.dbfadrblkcn
},
iss:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.iss.namelc
adrelc:"", // 地址 .gidgrp.iss.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.iss.dbfadrblkcn
},
adv:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.adv.namelc
adrelc:"", // 地址 .gidgrp.adv.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.adv.dbfadrblkcn
},
ctr:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.ctr.namelc
adrelc:"", // 地址 .gidgrp.ctr.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.ctr.dbfadrblkcn
},
atb:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.atb.namelc
adrelc:"", // 地址 .gidgrp.atb.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.atb.dbfadrblkcn
},
con:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.con.namelc
adrelc:"", // 地址 .gidgrp.con.adrelc
dbfadrblkcn:"", // Chinese address .gidgrp.con.dbfadrblkcn
},
bdb:{
pts:new Pts().data,
namelc:"", // 名称 .gidgrp.bdb.namelc
......@@ -660,6 +690,7 @@ export default class Gitopn{
mtabut:new Pub().data.Mtabut,
trnmod:new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
pageId: "", // ctx的key,
sysmod:{
......
......@@ -131,7 +131,7 @@ import Aacp from "./Aacp";
import Dclpp from "./Dclpp";
import Engp from "~/components/business/engp/views";
import Ccvpan from "~/views/Public/Ccvpan";
import Ccvpan from "~/components/business/ccvpan/views";
import Setmod from "~/components/business/setmod/views";
import Glentry from "~/components/business/glentry/views";
import Coninfp from "~/views/Public/Coninfp";
......@@ -284,12 +284,12 @@ export default {
this.model.gitp.usr.extkey = 'ZL'
this.model.liaall.exttotamt = '0.000'
this.model.liaall.exttotoldamt = '0.000'
this.model.liaall.liaccv.cshpct = '0.00'
this.model.liaall.liaccv.newamt = '0.000'
this.model.liaall.liaccv.newresamt = '0.000'
this.model.liaall.liaccv.pctresamt = '0.000'
this.model.liaall.liaccv.relcshpct = '0.00'
this.model.liaall.liaccv.totcovamt = '0.000'
this.model.liaccv.cshpct = '0.00'
this.model.liaccv.newamt = '0.000'
this.model.liaccv.newresamt = '0.000'
this.model.liaccv.pctresamt = '0.000'
this.model.liaccv.relcshpct = '0.00'
this.model.liaccv.totcovamt = '0.000'
this.model.liaall.limmod.ccvamt = '0.000'
this.model.liaall.limmod.comamt = '0.000'
this.model.liaall.misamt = '0.000'
......
import LiaccvRequest from "../model/LiaccvRequest.js";
import Api from "~/service/Api";
import Utils from "~/utils";
export default {
buildPtspta(ptsptaObj) {
let ptspta = {};
let pts = ptsptaObj.pts;
let adr = ptsptaObj.adr;
ptspta.rol=pts.rol;
ptspta.name=pts.nam;
ptspta.ptyinr=pts.ptyinr;
ptspta.ptainr=pts.ptainr;
ptspta.extkey=pts.extkey;
ptspta.dftdsp=pts.dftdsp;
ptspta.dftcur=pts.dftcur;
ptspta.dftact=pts.dftact;
ptspta.dftfeecur=pts.dftfeecur;
ptspta.dftactptainr=pts.dftactptainr;
ptspta.glggrpflg=pts.glggrpflg;
ptspta.adrblk=pts.adrblk;
return ptspta;
},
buildLiaccvRequest() {
let liaccvRequest = new LiaccvRequest().data;
let rec = {};
let cbsMap = {};
if (this.trnName === "litopn") {
rec.objtyp = "LID";
rec.ownref = this.model.lidgrp.rec.ownref;
rec.opndat = this.model.lidgrp.rec.opndat;
rec.branchInr = this.model.lidgrp.rec.branchinr;
liaccvRequest.rec = rec;
cbsMap.NOM1 = {
"cur":this.model.lidgrp.cbs.nom1.cur,
"amt":this.model.lidgrp.cbs.nom1.amt,
};
cbsMap.OPN1 = {};
cbsMap.OPN2 = {
"cur":this.model.lidgrp.cbs.opn2.cur,
"amt":this.model.lidgrp.cbs.opn2.amt,
};
cbsMap.MAX = {
"cur":this.model.lidgrp.cbs.max.cur,
"amt":this.model.lidgrp.cbs.max.amt,
};
cbsMap.MAX2 = {
"cur":this.model.lidgrp.cbs.max2.cur,
"amt":this.model.lidgrp.cbs.max2.amt,
};
liaccvRequest.cbsMap = cbsMap;
let ptsptaList = [];
if (this.model.lidgrp.apl.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.lidgrp.apl));
}
if (this.model.lidgrp.adv.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.lidgrp.adv));
}
if (this.model.lidgrp.ben.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.lidgrp.ben));
}
liaccvRequest.ptsList = ptsptaList;
} else if (this.trnName === "gitopn") {
rec.objtyp = "GID";
rec.ownref = this.model.gidgrp.rec.ownref;
rec.opndat = this.model.gidgrp.rec.opndat;
rec.expdat = this.model.gidgrp.rec.expdat;
rec.branchInr = this.model.gidgrp.rec.branchinr;
rec.hndtyp = this.model.gidgrp.rec.hndtyp;
rec.gartyp = this.model.gidgrp.rec.gartyp;
rec.fingua = this.model.gidgrp.rec.fingua;
rec.segtyp = this.model.gidgrp.ghd.segtyp;
rec.fromflg = this.model.gidgrp.rec.fromflg;
rec.othersno= this.model.gidgrp.rec.othersno;
rec.sndto = this.model.gidgrp.rec.sndto;
rec.swiftflg = this.model.gitp.swiftflg;
rec.giduil = this.model.gidgrp.rec.giduil;
rec.purpos = this.model.gidgrp.rec.purpos;
rec.revflg = this.model.gidgrp.rec.revflg;
rec.cnfsta = this.model.gidgrp.rec.cnfsta;
liaccvRequest.rec = rec;
cbsMap.MAX = this.model.gidgrp.cbs.max;
cbsMap.OPN1 = this.model.gidgrp.cbs.opn1;
cbsMap.MAC = this.model.gidgrp.cbs.mac;
cbsMap.MAC2 = this.model.gidgrp.cbs.mac2;
cbsMap.OPC2 = this.model.gidgrp.cbs.opc2;
cbsMap.CNF = this.model.gidgrp.cbs.cnf;
liaccvRequest.cbsMap = cbsMap;
let ptsptaList = [];
if (this.model.gidgrp.apl.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.gidgrp.apl));
}
if (this.model.gidgrp.adv.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.gidgrp.adv));
}
if (this.model.gidgrp.ben.pts.extkey !== "") {
ptsptaList.push(this.buildPtspta(this.model.gidgrp.ben));
}
liaccvRequest.ptsList = ptsptaList;
}
liaccvRequest.transName = this.trnName;
if (!!window.sessionStorage.userId) {
liaccvRequest.userId = window.sessionStorage.userId;
} else {
liaccvRequest.userId = "ZL";
}
liaccvRequest.liaccvg = this.model.liaccv.liaccvg;
return liaccvRequest;
},
async processLiaccv() {
//组数据,发post请求
const loading = this.loading("正在请求数据")
let rulePath = "/service/liaccv/assertLiaccv";
let liaccvRequest = this.buildLiaccvRequest();
let rtnmsg = await Api.post(rulePath, liaccvRequest);
if (rtnmsg.respCode == SUCCESS) {
Utils.copyValueFromVO(this.model.liaccv, rtnmsg.data);
}
loading.close();
}
}
export default class LiaccvRequest {
constructor() {
this.data = {
transName: "",
userId: "",
rec: {},
amdRec: {
engamt: "",
amecur: ""
},
cbsMap: {
OPN2: {
cur: "",
amt: ""
},
NOM1: {
cur: "",
amt: ""
},
OPN1: {
cur: "",
amt: ""
},
MAX: {
cur: "",
amt: ""
},
MAX2: {
cur: "",
amt: ""
}
},
ptsList: [],
liaccvg: []
}
}
}
\ No newline at end of file
export default class Liaccv {
constructor() {
this.data = {
newamt: "", // 合同金额 .liaall.liaccv.newamt
concur: "", // 应付保证金金额 .liaall.liaccv.concur
totcovamt: "", // 金额总和 .liaall.liaccv.totcovamt
newresamt: "", // Reserved Amount .liaall.liaccv.newresamt
addinf: "", // Additional Information .liaall.liaccv.addinf
cshpct: "", // 保证金应收比例 .liaall.liaccv.cshpct
relcshpct: "", // 保证金实收比例 .liaall.liaccv.relcshpct
gleflg: "", // Create gle flag .liaall.liaccv.gleflg
chgcurflg: "", // Change currency flag .liaall.liaccv.chgcurflg
pctresamt: "", // reserve amount based percent .liaall.liaccv.pctresamt
liaccvg: [],
stgstm:[],
dnfmod:{
kehuzh:"", //保证金账户 liaall.liaccv.dnfmod.kehuzh
ccvtyp:"", //操作类型 liaall.liaccv.dnfmod.ccvtyp
zhqtyp:"", //支取类型 liaall.liaccv.dnfmod.zhqtyp
zhqucs:"", //支取次数 liaall.liaccv.dnfmod.zhqucs
tizamt:"", //部分提支金额 liaall.liaccv.dnfmod.tizamt
yewudh:"", //业务代号 liaall.liaccv.dnfmod.yewudh
pridsp:"", //本金转入账户 liaall.liaccv.dnfmod.pridsp
zhruzh:"", //本金转入账户 liaall.liaccv.dnfmod.zhruzh
qicuje:"", //起存金额 liaall.liaccv.dnfmod.qicuje
intdsp:"", //利息转入账户 liaall.liaccv.dnfmod.intdsp
lxzyzh:"", //利息转入账户 liaall.liaccv.dnfmod.lxzyzh
zhhuye:"", //帐户余额 liaall.liaccv.dnfmod.zhhuye
stm8023:"", //8023STREAM liaall.liaccv.dnfmod.stm8023
},
}
}
}
\ No newline at end of file
<!-- 保证金公共页面 -->
<template>
<div class="eibs-tab">
<!--
<c-col :span="12">
<el-form-item label="应付保证金金额">
<c-input v-model="model.liaccv.concur" maxlength="3" placeholder="请输入应付保证金金额"></c-input>
</el-form-item>
</c-col>
-->
<c-col :span="24">
<c-col :span="12">
<el-form-item label="合同金额" prop="liaall.liaccv.concur">
<c-row>
<!-- <c-col :span="8">-->
<!-- <c-input type="text" :readonly="true" value="CNY"></c-input>-->
<!-- </c-col>-->
<c-col :span="8">
<c-select
v-model="model.liaccv.concur"
disabled
style="width: 95%"
placeholder=""
>
<el-option
v-for="item in codes.curtxt"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</c-col>
<c-col :span="16">
<c-input
:readonly="true"
v-model="model.liaccv.newamt"
></c-input>
</c-col>
</c-row>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="应收比例" prop="liaccv.cshpct">
<c-row>
<c-col :span="22">
<c-input v-model="model.liaccv.cshpct"></c-input>
</c-col>
<c-col :span="1" style="float: right; text-align: right">
<span>%</span>
</c-col>
</c-row>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="保留金额" prop="liaccv.newresamt">
<c-row>
<c-col :span="8">
<c-select
v-model="model.liaccv.concur"
disabled
style="width: 95%"
placeholder=""
>
<el-option
v-for="item in codes.curtxt"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</c-col>
<c-col :span="16">
<c-input
:readonly="true"
v-model="model.liaccv.newresamt"
></c-input>
</c-col>
</c-row>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="实收比例" prop="liaccv.relcshpct">
<c-row>
<c-col :span="22">
<c-input
:readonly="true"
v-model="model.liaccv.relcshpct"
></c-input>
</c-col>
<c-col :span="1" style="float: right; text-align: right">
<span>%</span>
</c-col>
</c-row>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="应付金额" prop="liaccv.concur">
<c-row>
<!-- <c-col :span="8">-->
<!-- <c-input type="text" :readonly="true" value="CNY"></c-input>-->
<!-- </c-col>-->
<c-col :span="8">
<c-select
v-model="model.liaccv.concur"
disabled
style="width: 95%"
placeholder=""
>
<el-option
v-for="item in codes.curtxt"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</c-col>
<c-col :span="16">
<c-input
:readonly="true"
v-model="model.liaccv.pctresamt"
></c-input>
</c-col>
</c-row>
</el-form-item>
</c-col>
<c-col :span="12">
<!-- <c-col :span="20">
</c-col> -->
<el-form-item
label=""
style="text-align: left"
prop="liaccv.gleflg"
>
<c-col :span="7" class="">
<el-form-item label="" prop="liaccv.gleflg" class="checkbox-left" label-width="0px">
<c-checkbox v-model="model.liaccv.gleflg">过账</c-checkbox>
</el-form-item>
</c-col>
<!-- <c-col :span="3" style="float: right;"> -->
<!-- <c-row> -->
<!-- <c-col :span="24" style="margin-left:35px;text-align:right"> -->
<c-button
size="small"
type="primary"
@click="onLiaccvAdd"
style="margin-left: 0px;float: right;"
>
添加
</c-button>
<!-- </c-col> -->
<!-- </c-col> -->
</el-form-item>
</c-col>
</c-col>
<template>
<el-dialog :visible.sync="dialogTableVisible" width="60%" center>
<c-istream-table
:list="stmData.data"
:columns="stmData.columns"
:paginationShow="true"
:total="stmData.data.length"
:tableData="stmData.data"
>
<el-table-column prop="op" label="OP" width="80" fixed="right">
<template slot-scope="scope">
<c-button
style="margin-left: 0"
size="small"
type="primary"
@click="pickDepItem(scope.$index, scope.row)"
>
选择
</c-button>
</template>
</el-table-column>
</c-istream-table>
</el-dialog>
</template>
<c-col :span="24">
<c-table
:border="true"
:list="model.liaccv.liaccvg"
:total="model.liaccv.liaccvg.length"
style="width:100%,text-align:center"
>
<el-table-column prop="ccdflg" label="调整标识" width="70px">
</el-table-column>
<el-table-column prop="ownref" label="保证金编号" width="180px">
</el-table-column>
<el-table-column prop="cur" label="币种" width="70px">
</el-table-column>
<el-table-column prop="oldamt" label="余额" width="110px">
<!-- <template slot-scope="scope">
<c-input-currency
v-model="scope.row.oldamt"
placeholder="0.00"
></c-input-currency>
</template>-->
</el-table-column>
<el-table-column prop="amt" label="变动金额" width="110px">
<!-- <template slot-scope="scope">
<c-input-currency
v-model="scope.row.amt"
placeholder="0.00"
></c-input-currency>
</template> -->
</el-table-column>
<el-table-column prop="acc" label="保证金账号" width="180px">
</el-table-column>
<el-table-column prop="rat" label="汇率" width="150px">
</el-table-column>
<el-table-column prop="concur" label="币种" width="70px">
</el-table-column>
<el-table-column prop="covamt" label="折算后金额" width="110px">
<!-- <template slot-scope="scope">
<c-input-currency
v-model="scope.row.covamt"
placeholder="0.00"
></c-input-currency>
</template>-->
</el-table-column>
<el-table-column prop="acccovamt" label="实际折算金额" width="150px">
<!-- <template slot-scope="scope">
<c-input-currency
v-model="scope.row.acccovamt"
placeholder="0.00"
></c-input-currency>
</template> -->
</el-table-column>
<el-table-column label="操作" width="auto" fixed="right" align="center">
<template slot-scope="scope">
<c-button
style="margin-left: 0"
type="primary"
size="small"
@click="onLiaccvDel(scope.$index, scope.row)"
>
删除</c-button
>
</template>
</el-table-column>
</c-table>
</c-col>
<c-col :span="12" style="margin-top: 25px">
<c-col :span="24">
<el-form-item label="折算金额总和">
<c-row>
<c-col :span="8">
<c-select
v-model="model.liaccv.concur"
disabled
style="width: 95%"
placeholder=""
>
<el-option
v-for="item in codes.curtxt"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</c-col>
<c-col :span="16">
<c-input
v-model="model.liaccv.totcovamt"
:readonly="true"
></c-input>
</c-col>
</c-row>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="附加信息 " v-if="model.liaccv.addinf != ''">
<c-input
type="textarea"
:rows="5"
v-model="model.liaccv.addinf"
maxlength="200"
show-word-limit
placeholder="请输入附加信息"
></c-input>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Utils from "~/utils/index";
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
dialogTableVisible: false,
stmData: {
columns: [
'1 1:1 "编号" 150',
'2 2:1 "用户" 80',
'3 3:1 "申请人" 100',
'4 4:1 "账户" 200',
'5 5:1 "币种" 200',
'6 6:1 "金额" 100 2 0 1 18.3',
'7 7:1 "开立日期" 80 4 7',
'8 8:1 "标志" 150',
'9 9:1 "备注" 250',
"P COLORED TRUE",
"P VERTLINES TRUE",
"P HORZLINES TRUE",
"P MULTISELECT FALSE",
"P COLUMNSIZING TRUE",
],
data: [],
},
relrowDisabled: true,
};
},
methods: {
async onLiaccvAdd() {
let rtnmsg = await this.executeRule("liaall.liaccv.add");
//const that = this.root;
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
if (typeof rtnmsg.data.vals != "undefined") {
this.stmData.data = rtnmsg.data.vals.rows;
} else {
this.stmData.data = [];
}
this.dialogTableVisible = true;
} else {
this.$notify.error({ title: "错误", message: "服务请求失败!" });
}
},
async pickDepItem(idx, row) {
var params = { selDst: "", selIds: [idx + 1] };
let rtnmsg = await this.executeRule("liaall.liaccv.add", params);
if (rtnmsg.respCode == SUCCESS) {
this.dialogTableVisible = false;
Utils.copyValueFromVO(this.model, rtnmsg.data);
}
},
async onLiaccvDel(index, row) {
let ids = [index + 1];
let params = { selDst: "liaall.liaccv.liaccvg", selIds: ids };
let rtnmsg = await this.executeRule("liaall.liaccv.del", params);
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
this.$message({
type: "success",
message: "删除成功!",
});
//this.model.liaall.liaccv.liaccvg = [];
Utils.copyValueFromVO(this.model, rtnmsg.data);
} else {
this.$notify.error({ title: "错误", message: "服务请求失败!" });
}
},
},
created: function () {},
};
</script>
<style>
</style>
\ No newline at end of file
......@@ -114,6 +114,7 @@ export default {
} else {
liaallRequest.userId = "ZL";
}
liaallRequest.liaallg = this.model.liaall.liaallg;
return liaallRequest;
},
......
......@@ -30,7 +30,8 @@ export default class LiaallRequest {
amt: ""
}
},
ptsList: []
ptsList: [],
liaallg: []
}
}
}
\ No newline at end of file
......@@ -80,6 +80,7 @@ export default {
}
setfegRequest.ptsList = ptsptaList;
setfegRequest.liaall = this.model.liaall;
setfegRequest.liaccv = this.model.liaccv;
} else if (this.trnName === 'gitopn') {
rec.objtyp = "GID";
rec.ownref = this.model.gidgrp.rec.ownref;
......@@ -120,6 +121,7 @@ export default {
}
setfegRequest.ptsList = ptsptaList;
setfegRequest.liaall = this.model.liaall;
setfegRequest.liaccv = this.model.liaccv;
}
//setfegRequest.ptydet = ptydetList;
setfegRequest.doceot=this.model.trnmod.trndoc.doceot;
......
import commonDeclare from "./commonDeclare"
import commonApi from "./commonApi"
import SettleEvent from "~/components/business/setmod/event"
import LiaccvEvent from "~/components/business/ccvpan/event"
import LiaallEvent from "~/components/business/engp/event"
import GletnryEvent from "~/components/business/glentry/event"
import DocpanEvent from "~/components/business/docpan/event"
......@@ -61,6 +62,7 @@ export default {
...LiaallEvent,
...GletnryEvent,
...DocpanEvent,
...LiaccvEvent,
/**
* 表单校验 rules 的赋值
* @returns void
......@@ -163,7 +165,10 @@ export default {
return
}
let name = tab.name;
if (name === "ccvpan") {
this.processLiaccv();
return;
}
if (name === "engp") {
this.processLiaall();
return;
......
......@@ -2,6 +2,7 @@ import Trnmod from "./Trnmod";
import Mtabut from './Mtabut'
import Setmod from '~/components/business/setmod/model'
import Liaall from '~/components/business/engp/model'
import Liaccv from '~/components/business/ccvpan/model'
import Docpan from '~/components/business/docpan/model'
export default class Publics {
......@@ -11,6 +12,7 @@ export default class Publics {
Mtabut: new Mtabut().data,
Setmod: new Setmod().data,
Liaall: new Liaall().data,
Liaccv: new Liaccv().data,
Docpan: new Docpan().data,
}
}
......
......@@ -71,8 +71,7 @@ module.exports = {
}
},
'/gjjs/service/': {
// target: 'http://192.168.0.85:9999',//魏关应
target: 'http://192.168.0.42:9999',//胡希 192.168.0.42:9999
target: 'http://127.0.0.1:9999',
changeOrigin: true,
pathRewrite: {
'^/gjjs/service': '/gjjs/service'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment