|
@@ -25,8 +25,18 @@
|
|
|
<el-col v-for="(item, index) in basicData.column" :key="index" :span="item.span ? item.span : 8"
|
|
<el-col v-for="(item, index) in basicData.column" :key="index" :span="item.span ? item.span : 8"
|
|
|
:class="{ isShow: item.display }" >
|
|
:class="{ isShow: item.display }" >
|
|
|
<el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
|
|
<el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
|
|
|
- <div v-if="item.prop == 'businessTypeId'">
|
|
|
|
|
- 业务类型
|
|
|
|
|
|
|
+ <div v-if="item.prop == 'businessTypeCnName'">
|
|
|
|
|
+ <search-query ref="SearchQuery"
|
|
|
|
|
+ :selectValue="form[item.prop]"
|
|
|
|
|
+ :datalist="businessTypeData"
|
|
|
|
|
+ title="业务类型"
|
|
|
|
|
+ :filterable="true"
|
|
|
|
|
+ :clearable="true"
|
|
|
|
|
+ :remote="true"
|
|
|
|
|
+ :forParameter="{key:'id',label:'cnName',value:'cnName'}"
|
|
|
|
|
+ @remoteMethod="bbusinesstypeListfun" @corpChange="businessTypeCorpChange" >
|
|
|
|
|
+ <bbusinesstype></bbusinesstype>
|
|
|
|
|
+ </search-query>
|
|
|
</div>
|
|
</div>
|
|
|
<el-select v-else-if="item.type == 'select'" v-model="form[item.prop]" :placeholder="'请选择' + item.label" clearable
|
|
<el-select v-else-if="item.type == 'select'" v-model="form[item.prop]" :placeholder="'请选择' + item.label" clearable
|
|
|
filterable style="width: 100%" size="small"
|
|
filterable style="width: 100%" size="small"
|
|
@@ -57,11 +67,47 @@
|
|
|
</div>
|
|
</div>
|
|
|
<el-table
|
|
<el-table
|
|
|
stripe
|
|
stripe
|
|
|
- :data="form.feestemplateList"
|
|
|
|
|
|
|
+ :data="form.feesTemplateItemsList"
|
|
|
id="out-table"
|
|
id="out-table"
|
|
|
:header-cell-class-name="headerClassName"
|
|
:header-cell-class-name="headerClassName"
|
|
|
style="width: 100%">
|
|
style="width: 100%">
|
|
|
<el-table-column
|
|
<el-table-column
|
|
|
|
|
+ prop="curCode"
|
|
|
|
|
+ label="客户">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="curCode"
|
|
|
|
|
+ label="客户英文名称">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="curCode"
|
|
|
|
|
+ label="费用编码">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="feeCnName"
|
|
|
|
|
+ label="费用">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="curCode"
|
|
|
|
|
+ label="费用英文名称">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="quantityRule"
|
|
|
|
|
+ label="数量规则">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="quantity"
|
|
|
|
|
+ label="数量">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="price"
|
|
|
|
|
+ label="单价">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ prop="curCode"
|
|
|
|
|
+ label="币别">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column
|
|
|
prop="remarks"
|
|
prop="remarks"
|
|
|
label="备注">
|
|
label="备注">
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
@@ -88,7 +134,7 @@
|
|
|
<el-dialog
|
|
<el-dialog
|
|
|
title="费用详细"
|
|
title="费用详细"
|
|
|
:visible.sync="feestemplateVisible"
|
|
:visible.sync="feestemplateVisible"
|
|
|
- width="50%"
|
|
|
|
|
|
|
+ width="60%"
|
|
|
append-to-body
|
|
append-to-body
|
|
|
:destroy-on-close="true"
|
|
:destroy-on-close="true"
|
|
|
:modal-append-to-body="false"
|
|
:modal-append-to-body="false"
|
|
@@ -158,13 +204,15 @@ import {losbfeestemplateDetail, losbfeestemplateSubmit} from "@/api/iosBasicData
|
|
|
import {bfeesList} from "@/api/iosBasicData/bfees";
|
|
import {bfeesList} from "@/api/iosBasicData/bfees";
|
|
|
import {getBcorpsList} from "@/api/iosBasicData/bcorps";
|
|
import {getBcorpsList} from "@/api/iosBasicData/bcorps";
|
|
|
import { getRateList } from "@/api/iosBasicData/rateManagement";
|
|
import { getRateList } from "@/api/iosBasicData/rateManagement";
|
|
|
|
|
+import {bbusinesstypeList} from "@/api/iosBasicData/bbusinesstype";
|
|
|
import SearchQuery from '@/components/iosbasic-data/searchquery.vue'
|
|
import SearchQuery from '@/components/iosbasic-data/searchquery.vue'
|
|
|
import bcorps from "@/views/iosBasicData/bcorps/index.vue";
|
|
import bcorps from "@/views/iosBasicData/bcorps/index.vue";
|
|
|
import bfeesdefine from "@/views/iosBasicData/bfeesdefine/index.vue";
|
|
import bfeesdefine from "@/views/iosBasicData/bfeesdefine/index.vue";
|
|
|
|
|
+import bbusinesstype from "@/views/iosBasicData/bbusinesstype/index.vue";
|
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
|
- components: {SearchQuery,bcorps,bfeesdefine},
|
|
|
|
|
|
|
+ components: {SearchQuery,bcorps,bfeesdefine,bbusinesstype},
|
|
|
props:{
|
|
props:{
|
|
|
detailData: {
|
|
detailData: {
|
|
|
type: Object
|
|
type: Object
|
|
@@ -186,32 +234,36 @@ export default {
|
|
|
feeData:[],
|
|
feeData:[],
|
|
|
// 币别请求数据
|
|
// 币别请求数据
|
|
|
curCodeData:[],
|
|
curCodeData:[],
|
|
|
|
|
+ // 业务类型数据
|
|
|
|
|
+ businessTypeData:[],
|
|
|
|
|
|
|
|
// 获取到的数据
|
|
// 获取到的数据
|
|
|
form:{
|
|
form:{
|
|
|
- feestemplateList:[]
|
|
|
|
|
|
|
+ isShared:0,
|
|
|
|
|
+ status:0,
|
|
|
|
|
+ feesTemplateItemsList:[]
|
|
|
},
|
|
},
|
|
|
// 基础资料数据
|
|
// 基础资料数据
|
|
|
basicData:{
|
|
basicData:{
|
|
|
column:[
|
|
column:[
|
|
|
|
|
+ // {
|
|
|
|
|
+ // label: "业务类型",
|
|
|
|
|
+ // prop: "businessTypeId",
|
|
|
|
|
+ // rules: [{
|
|
|
|
|
+ // required: true,
|
|
|
|
|
+ // message: "",
|
|
|
|
|
+ // trigger: "blur"
|
|
|
|
|
+ // }]
|
|
|
|
|
+ // },
|
|
|
{
|
|
{
|
|
|
label: "业务类型",
|
|
label: "业务类型",
|
|
|
- prop: "businessTypeId",
|
|
|
|
|
|
|
+ prop: "businessTypeCnName",
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
message: "",
|
|
message: "",
|
|
|
trigger: "blur"
|
|
trigger: "blur"
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- // {
|
|
|
|
|
- // label: "业务类型中文名称",
|
|
|
|
|
- // prop: "businessTypeCnName",
|
|
|
|
|
- // rules: [{
|
|
|
|
|
- // required: true,
|
|
|
|
|
- // message: "",
|
|
|
|
|
- // trigger: "blur"
|
|
|
|
|
- // }]
|
|
|
|
|
- // },
|
|
|
|
|
{
|
|
{
|
|
|
label: "业务类型英文",
|
|
label: "业务类型英文",
|
|
|
prop: "businessTypeEnName",
|
|
prop: "businessTypeEnName",
|
|
@@ -261,11 +313,6 @@ export default {
|
|
|
label:'付',
|
|
label:'付',
|
|
|
value:'C'
|
|
value:'C'
|
|
|
}],
|
|
}],
|
|
|
- rules: [{
|
|
|
|
|
- required: true,
|
|
|
|
|
- message: "请输入收付",
|
|
|
|
|
- trigger: "blur"
|
|
|
|
|
- }]
|
|
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: "是否公开共享",
|
|
label: "是否公开共享",
|
|
@@ -279,11 +326,6 @@ export default {
|
|
|
label:'是',
|
|
label:'是',
|
|
|
value:1
|
|
value:1
|
|
|
}],
|
|
}],
|
|
|
- rules: [{
|
|
|
|
|
- required: true,
|
|
|
|
|
- message: "请输入是否公开共享",
|
|
|
|
|
- trigger: "blur"
|
|
|
|
|
- }]
|
|
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: "状态",
|
|
label: "状态",
|
|
@@ -409,6 +451,7 @@ export default {
|
|
|
this.getBcorpsListfun()
|
|
this.getBcorpsListfun()
|
|
|
this.bfeesListfun()
|
|
this.bfeesListfun()
|
|
|
this.getRateListfun()
|
|
this.getRateListfun()
|
|
|
|
|
+ this.bbusinesstypeListfun()
|
|
|
},
|
|
},
|
|
|
methods:{
|
|
methods:{
|
|
|
// 获取客户数据
|
|
// 获取客户数据
|
|
@@ -432,6 +475,12 @@ export default {
|
|
|
this.curCodeData = res.data.data.records
|
|
this.curCodeData = res.data.data.records
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
|
|
+ // 获取业务类型
|
|
|
|
|
+ bbusinesstypeListfun(cnName){
|
|
|
|
|
+ bbusinesstypeList(1,10,{cnName}).then(res=>{
|
|
|
|
|
+ this.businessTypeData = res.data.data.records
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
// 客户选择之后的回调
|
|
// 客户选择之后的回调
|
|
|
corpCorpChange(value){
|
|
corpCorpChange(value){
|
|
|
for(let item of this.corpData) {
|
|
for(let item of this.corpData) {
|
|
@@ -457,6 +506,16 @@ export default {
|
|
|
curCodeCorpChange(value) {
|
|
curCodeCorpChange(value) {
|
|
|
this.$set(this.feestemplateForm,'curCode',value)
|
|
this.$set(this.feestemplateForm,'curCode',value)
|
|
|
},
|
|
},
|
|
|
|
|
+ // 业务类型选择之后
|
|
|
|
|
+ businessTypeCorpChange(value){
|
|
|
|
|
+ for(let item of this.businessTypeData) {
|
|
|
|
|
+ if (item.cnName == value){
|
|
|
|
|
+ this.$set(this.form,'businessTypeId',item.id)
|
|
|
|
|
+ this.$set(this.form,'businessTypeCnName',item.cnName)
|
|
|
|
|
+ this.$set(this.form,'businessTypeEnName',item.enName)
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
// 获取详情数据
|
|
// 获取详情数据
|
|
|
losbfeestemplateDetailfun(id){
|
|
losbfeestemplateDetailfun(id){
|
|
|
this.pageLoading = true
|
|
this.pageLoading = true
|
|
@@ -482,7 +541,6 @@ export default {
|
|
|
},
|
|
},
|
|
|
// 保存接口
|
|
// 保存接口
|
|
|
losbfeestemplateSubmitfun(){
|
|
losbfeestemplateSubmitfun(){
|
|
|
- this.form.extendedData = JSON.stringify(this.form.extendedDataArr)
|
|
|
|
|
losbfeestemplateSubmit(this.form).then((res)=>{
|
|
losbfeestemplateSubmit(this.form).then((res)=>{
|
|
|
this.$message({
|
|
this.$message({
|
|
|
type: "success",
|
|
type: "success",
|
|
@@ -506,14 +564,17 @@ export default {
|
|
|
},
|
|
},
|
|
|
// 费用详细删除
|
|
// 费用详细删除
|
|
|
feestemplateCompanyDelete(index,row){
|
|
feestemplateCompanyDelete(index,row){
|
|
|
- this.form.feestemplateList.splice(index,1)
|
|
|
|
|
|
|
+ this.form.feesTemplateItemsList.splice(index,1)
|
|
|
},
|
|
},
|
|
|
// 费用详细确认
|
|
// 费用详细确认
|
|
|
feestemplatecompanyConfirm(){
|
|
feestemplatecompanyConfirm(){
|
|
|
if (this.feestemplateIndex != null) {
|
|
if (this.feestemplateIndex != null) {
|
|
|
- this.form.feestemplateList.splice(this.feestemplateIndex,1,this.feestemplateForm)
|
|
|
|
|
|
|
+ this.form.feesTemplateItemsList.splice(this.feestemplateIndex,1,this.feestemplateForm)
|
|
|
}else {
|
|
}else {
|
|
|
- this.form.feestemplateList.push(this.feestemplateForm)
|
|
|
|
|
|
|
+ if (!this.form.feesTemplateItemsList) {
|
|
|
|
|
+ this.form.feesTemplateItemsList = []
|
|
|
|
|
+ }
|
|
|
|
|
+ this.form.feesTemplateItemsList.push(this.feestemplateForm)
|
|
|
}
|
|
}
|
|
|
this.feestemplateForm = {}
|
|
this.feestemplateForm = {}
|
|
|
this.feestemplateIndex = null
|
|
this.feestemplateIndex = null
|