Commit a1a34dec authored by houjn@hikoon.cn's avatar houjn@hikoon.cn

Merge remote-tracking branch 'origin/dev' into dev

parents 387b121d 8c4a0ea3
...@@ -34,6 +34,14 @@ export function getCustomerContacts(id) { ...@@ -34,6 +34,14 @@ export function getCustomerContacts(id) {
}) })
} }
// 获得客户联系人列表
export function getCustomerContactsList() {
return request({
url: '/ecw/customer-contacts/page',
method: 'get'
})
}
// 获得客户联系人分页 // 获得客户联系人分页
export function getCustomerContactsPage(query) { export function getCustomerContactsPage(query) {
return request({ return request({
......
import request from '@/utils/request'
// 创建跟进
export function createCustomerFollow(data) {
return request({
url: '/ecw/customer-follow/create',
method: 'post',
data: data
})
}
// 更新跟进
export function updateCustomerFollow(data) {
return request({
url: '/ecw/customer-follow/update',
method: 'put',
data: data
})
}
// 删除跟进
export function deleteCustomerFollow(id) {
return request({
url: '/ecw/customer-follow/delete?id=' + id,
method: 'delete'
})
}
// 获得跟进
export function getCustomerFollow(id) {
return request({
url: '/ecw/customer-follow/get?id=' + id,
method: 'get'
})
}
// 获得跟进分页
export function getCustomerFollowPage(query) {
return request({
url: '/ecw/customer-follow/page',
method: 'get',
params: query
})
}
// 导出跟进 Excel
export function exportCustomerFollowExcel(query) {
return request({
url: '/ecw/customer-follow/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}
...@@ -100,6 +100,8 @@ export const DICT_TYPE = { ...@@ -100,6 +100,8 @@ export const DICT_TYPE = {
AREA_CODE: 'area_code', // 区号 AREA_CODE: 'area_code', // 区号
SOCIAL: 'customer_social_tools', // 社交软件 SOCIAL: 'customer_social_tools', // 社交软件
IS_DEFAULT: 'is_default', // 默认联系人 IS_DEFAULT: 'is_default', // 默认联系人
CUSTOMER_FOLLOW_TYPE: 'customer_follow_type', // 跟进类型
CUSTOMER_FOLLOW_METHOD: 'customer_follow_method', // 跟进方式
COMMISSION_PRODUCT_APPROVAL:'commission_product_approval', //佣金备案 COMMISSION_PRODUCT_APPROVAL:'commission_product_approval', //佣金备案
SHIPPING_DECLARATION_TYPE:'shipping_declaration_type',//出货报关方式(与订单报关方式相同) SHIPPING_DECLARATION_TYPE:'shipping_declaration_type',//出货报关方式(与订单报关方式相同)
COMMISSION_TYPE:'commission_type',//佣金类型 COMMISSION_TYPE:'commission_type',//佣金类型
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="客户等级" prop="level"> <el-form-item label="客户等级" prop="level">
<el-select v-model="form.level" placeholder="请选择客户等级"> <el-select v-model="form.level" placeholder="请选择客户等级" disabled>
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)" <el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" /> :key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select> </el-select>
...@@ -33,20 +33,13 @@ ...@@ -33,20 +33,13 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="客户类别" prop="type"> <el-form-item label="客户类别" prop="type">
<el-select v-model="form.type" placeholder="请选择客户类别"> <dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" form-type="select" multiple v-model="form.type"></dict-selector>
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_TYPE)" <!-- <el-select v-model="form.type" placeholder="请选择客户类别">-->
:key="dict.value" :label="dict.label" :value="dict.value" /> <!-- <el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_TYPE)"-->
</el-select> <!-- :key="dict.value" :label="dict.label" :value="dict.value" />-->
<!-- </el-select>-->
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="12">-->
<!-- <el-form-item label="所属代理" prop="agentId">-->
<!-- <el-select v-model="form.agentId" placeholder="请选择所属代理">-->
<!-- <el-option v-for="dict in getDictDatas(DICT_TYPE.COMMON_STATUS)"-->
<!-- :key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="12"> <el-col :span="12">
<el-form-item label="常用提货网点" prop="pickupPoint"> <el-form-item label="常用提货网点" prop="pickupPoint">
<el-select v-model="form.pickupPoint" placeholder="请输入常用提货网点"> <el-select v-model="form.pickupPoint" placeholder="请输入常用提货网点">
...@@ -55,6 +48,14 @@ ...@@ -55,6 +48,14 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="13" v-show="form.type && form.type.indexOf('3') !== -1">
<el-form-item label="所属代理" prop="agentId">
<el-select v-model="form.agentId" placeholder="请选择所属代理">
<el-option v-for="dict in getDictDatas(DICT_TYPE.COMMON_STATUS)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="公司名称" prop="company"> <el-form-item label="公司名称" prop="company">
...@@ -129,16 +130,30 @@ ...@@ -129,16 +130,30 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="推介人" prop="promoter"> <el-form-item label="推介人" prop="promoter">
<el-input v-model="form.promoter" placeholder="请输入推介人" /> <el-select v-model="form.promoter" placeholder="请输入推介人" filterable>
<el-option
v-for="item in customerSelect"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="创建人" prop="founder"> <el-form-item label="创建人" prop="founder">
<el-input v-model="form.founder" placeholder="请输入创建人" /> <el-select v-model="form.founder" disabled>
<el-option
v-for="item in serviceUserList"
:key="item.id"
:label="item.nickname"
:value="item.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="创建时间" prop="founder"> <el-form-item label="创建时间" prop="createTime">
<el-date-picker <el-date-picker
v-model="form.createTime" v-model="form.createTime"
type="datetime" type="datetime"
...@@ -157,30 +172,32 @@ ...@@ -157,30 +172,32 @@
<el-switch v-model="form.arrivalConfirm" :active-value="0" :inactive-value="1" /> <el-switch v-model="form.arrivalConfirm" :active-value="0" :inactive-value="1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="13">
<el-form-item label="重货标准" prop="weightUnit"> <el-form-item label="重货标准" prop="weightUnit">
<el-input v-model="form.weightUnit" placeholder="请输入重货标准"> <el-switch v-model="showZhong"/>
<el-input v-model="form.weightUnit" placeholder="请输入重货标准" v-show="showZhong">
<template slot="append">kg/cbm</template> <template slot="append">kg/cbm</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24" v-show="showZhong">
<el-form-item label="指定线路" prop="line"> <el-form-item label="指定线路" prop="line">
<el-switch v-model="showZhong"></el-switch> <el-switch v-model="showZhong1"></el-switch>
<customer-line-table v-show="showZhong" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="zhongLines" :zhong-pao-type="0"></customer-line-table> <customer-line-table v-show="showZhong1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="zhongLines" :zhong-pao-type="0"></customer-line-table>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="13">
<el-form-item label="泡货标准" prop="weightUnit"> <el-form-item label="泡货标准" prop="weightUnit">
<el-input v-model="form.lightUnit" placeholder="请输入泡货标准"> <el-switch v-model="showPao"/>
<el-input v-model="form.lightUnit" placeholder="请输入泡货标准" v-show="showPao">
<template slot="append">kg/cbm</template> <template slot="append">kg/cbm</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24" v-show="showPao">
<el-form-item label="指定线路" prop="line"> <el-form-item label="指定线路" prop="line">
<el-switch v-model="showPao"></el-switch> <el-switch v-model="showPao1"></el-switch>
<customer-line-table v-show="showPao" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="paoLines" :zhong-pao-type="1"></customer-line-table> <customer-line-table v-show="showPao1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="paoLines" :zhong-pao-type="1"></customer-line-table>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -365,6 +382,8 @@ import { getProductList } from '@/api/ecw/product' ...@@ -365,6 +382,8 @@ import { getProductList } from '@/api/ecw/product'
import {getTradeCityList} from "@/api/ecw/region" import {getTradeCityList} from "@/api/ecw/region"
import {getWarehouseList} from "@/api/ecw/warehouse" import {getWarehouseList} from "@/api/ecw/warehouse"
import CustomerLineTable from '@/components/CustomerLineTable' import CustomerLineTable from '@/components/CustomerLineTable'
import {getCustomerSelect} from "@/api/ecw/customer"
import {listServiceUser} from "@/api/system/user"
export default { export default {
name: "edit", name: "edit",
...@@ -395,6 +414,12 @@ export default { ...@@ -395,6 +414,12 @@ export default {
getWarehouseList().then(r => { getWarehouseList().then(r => {
this.warehouseList = r.data this.warehouseList = r.data
}) })
getCustomerSelect().then(r => {
this.customerSelect = r.data
})
listServiceUser().then(r => {
this.serviceUserList = r.data
})
}, },
data(){ data(){
return { return {
...@@ -420,9 +445,13 @@ export default { ...@@ -420,9 +445,13 @@ export default {
productTypeList: [], productTypeList: [],
productList: [], productList: [],
showZhong: false, showZhong: false,
showZhong1: false,
showPao: false, showPao: false,
showPao1: false,
warehouseList: [], // 仓库列表 warehouseList: [], // 仓库列表
importCityList: [], // 进口地址 importCityList: [], // 进口地址
customerSelect: [],
serviceUserList: [],
zhongLines: [], // 重货线路 zhongLines: [], // 重货线路
paoLines: [], // 泡货线路 paoLines: [], // 泡货线路
...@@ -463,7 +492,7 @@ export default { ...@@ -463,7 +492,7 @@ export default {
id: undefined, id: undefined,
number: undefined, number: undefined,
name: undefined, name: undefined,
level: undefined, level: 1,
country: undefined, country: undefined,
type: undefined, type: undefined,
agentId: undefined, agentId: undefined,
...@@ -483,7 +512,7 @@ export default { ...@@ -483,7 +512,7 @@ export default {
lightUnit: undefined, lightUnit: undefined,
promoter: undefined, promoter: undefined,
status: undefined, status: undefined,
founder: undefined, founder: this.$store.getters.userId,
department: undefined, department: undefined,
invoiceTitle: undefined, invoiceTitle: undefined,
licenseNumber: undefined, licenseNumber: undefined,
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<el-button type="primary" size="small">添加优惠</el-button> <el-button type="primary" size="small">添加优惠</el-button>
<el-button type="primary" size="small" @click="$router.push('/customer/edit/' + customerId)">编辑</el-button> <el-button type="primary" size="small" @click="$router.push('/customer/edit/' + customerId)">编辑</el-button>
<el-button type="primary" size="small">报价</el-button> <el-button type="primary" size="small">报价</el-button>
<el-button type="primary" size="small">跟进</el-button> <el-button type="primary" size="small" @click="customerFollow.dialogVisible = true">跟进</el-button>
<el-button type="primary" size="small">客诉</el-button> <el-button type="primary" size="small">客诉</el-button>
<el-button type="danger" size="small">删除</el-button> <el-button type="danger" size="small">删除</el-button>
</div> </div>
...@@ -94,7 +94,7 @@ ...@@ -94,7 +94,7 @@
<el-tabs style="margin-top: 15px" type="border-card"> <el-tabs style="margin-top: 15px" type="border-card">
<el-tab-pane label="订单"> <el-tab-pane label="订单">
订单
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="报价"> <el-tab-pane label="报价">
<el-table <el-table
...@@ -145,7 +145,7 @@ ...@@ -145,7 +145,7 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="跟进"> <el-tab-pane label="跟进">
<el-table <el-table
:data="[]" :data="customerFollowList"
style="width: 100%" style="width: 100%"
> >
<el-table-column <el-table-column
...@@ -154,37 +154,37 @@ ...@@ -154,37 +154,37 @@
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="followType"
label="跟进类型" label="跟进类型"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="contactName"
label="联系人" label="联系人"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="followMethod"
label="跟进方式" label="跟进方式"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="followTime"
label="跟进时间" label="跟进时间"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="feedback"
label="客户反馈" label="客户反馈"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="result"
label="处理结果" label="处理结果"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="" prop="followUserId"
label="跟进业务" label="跟进业务"
> >
</el-table-column> </el-table-column>
...@@ -285,6 +285,70 @@ ...@@ -285,6 +285,70 @@
</el-col> </el-col>
</el-row> </el-row>
<el-dialog
title="客户跟进"
:visible.sync="customerFollow.dialogVisible"
:close-on-click-modal="false"
width="680px">
<el-form ref="customerFollowForm" :model="customerFollow.form" label-width="80px">
<el-row :gutter="10">
<el-col>
<el-form-item label="跟进类型" required>
<dict-selector form-type="radio" v-model="customerFollow.form.followType" :type="DICT_TYPE.CUSTOMER_FOLLOW_TYPE"></dict-selector>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="跟进时间" required>
<el-date-picker v-model="customerFollow.form.followTime" type="datetime" placeholder="选择跟进时间"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系人" required>
<el-select v-model="customerFollow.form.contactName" placeholder="请选择">
<el-option
v-for="item in customerContactsList"
:key="item.name"
:label="item.name"
:value="item.name">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="跟进业务" required>
<el-select v-model="customerFollow.form.followUserId" placeholder="请选择">
<el-option
v-for="item in serviceUserList"
:key="item.id"
:label="item.nickname"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="跟进方式" required>
<dict-selector v-model="customerFollow.form.followMethod" :type="DICT_TYPE.CUSTOMER_FOLLOW_METHOD"></dict-selector>
</el-form-item>
</el-col>
<el-col>
<el-form-item label="客户反馈" required>
<el-input type="textarea" v-model="customerFollow.form.feedback"></el-input>
</el-form-item>
</el-col>
<el-col>
<el-form-item label="处理结果" required>
<el-input type="textarea" v-model="customerFollow.form.result"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="customerFollow.dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="customerFollowSubmit">确 定</el-button>
</span>
</el-dialog>
</div> </div>
</template> </template>
...@@ -293,12 +357,19 @@ import { getCustomer } from '@/api/ecw/customer' ...@@ -293,12 +357,19 @@ import { getCustomer } from '@/api/ecw/customer'
import { DICT_TYPE, getDictDataLabel } from '@/utils/dict' import { DICT_TYPE, getDictDataLabel } from '@/utils/dict'
import { getProductTypeList } from '@/api/ecw/productType' import { getProductTypeList } from '@/api/ecw/productType'
import { getNodeList } from '@/api/ecw/node' import { getNodeList } from '@/api/ecw/node'
import DictSelector from "@/components/DictSelector"
import {getCustomerContactsList} from "@/api/ecw/customerContacts"
import {listServiceUser} from "@/api/system/user"
import {createCustomerFollow, getCustomerFollowPage} from "@/api/ecw/customerFollow"
export default { export default {
name: 'query', name: 'query',
props: { props: {
customerId: String customerId: String
}, },
components: {
DictSelector
},
created() { created() {
getNodeList().then(r => { getNodeList().then(r => {
this.nodeList = r.data this.nodeList = r.data
...@@ -309,6 +380,16 @@ export default { ...@@ -309,6 +380,16 @@ export default {
getProductTypeList().then(r => { getProductTypeList().then(r => {
this.productTypeList = r.data this.productTypeList = r.data
}) })
this.resetCustomerFollowForm()
getCustomerContactsList().then(r => {
// todo 接口不对,分页了
this.customerContactsList = r.data.list
})
listServiceUser().then(r => {
this.serviceUserList = r.data
})
this.getCustomerFollowList()
}, },
data() { data() {
return { return {
...@@ -316,6 +397,9 @@ export default { ...@@ -316,6 +397,9 @@ export default {
getDictDataLabel, getDictDataLabel,
nodeList: [], nodeList: [],
productTypeList: [], productTypeList: [],
customerContactsList: [],
serviceUserList: [],
customerFollowList: [],
customer: { customer: {
id: undefined, id: undefined,
number: undefined, number: undefined,
...@@ -353,11 +437,47 @@ export default { ...@@ -353,11 +437,47 @@ export default {
arrivalConfirm: undefined, arrivalConfirm: undefined,
weightUnit: undefined, weightUnit: undefined,
createTime: undefined createTime: undefined
} },
customerFollow: {
dialogVisible: true,
form: {}
},
} }
}, },
methods: { methods: {
customerFollowSubmit() {
this.$refs["customerFollowForm"].validate(valid => {
if (!valid) {
return
}
createCustomerFollow(this.customerFollow.form).then(r => {
this.resetCustomerFollowForm()
this.getCustomerFollowList()
this.customerFollow.dialogVisible = false
})
})
},
resetCustomerFollowForm() {
this.customerFollow.form = {
"bizId": this.customerId,
"contactName": undefined,
"feedback": undefined,
"followMethod": undefined,
"followTime": undefined,
"followType": undefined,
"followUserId": undefined,
"result": undefined
}
},
getCustomerFollowList() {
getCustomerFollowPage({bizId: this.customerId}).then(r => {
this.customerFollowList = r.data.list
})
}
}, },
computed: { computed: {
productType(){ productType(){
......
...@@ -32,9 +32,15 @@ export default { ...@@ -32,9 +32,15 @@ export default {
selectVal:'' selectVal:''
} }
}, },
mounted() {
this.selectVal = this.value;
},
watch:{ watch:{
selectVal(val){ selectVal(val){
this.$emit('input',val) this.$emit('input',val)
},
value(val){
this.selectVal = val;
} }
} }
} }
......
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :inline="true"> <el-form :rules="rules" :model="form" ref="form" :inline="true" >
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="客户名称"> <el-form-item label="客户名称" prop="customerId">
<el-select <el-select
v-model="customerForm.name" v-model="customerForm.name"
filterable filterable
...@@ -25,31 +25,31 @@ ...@@ -25,31 +25,31 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="运输方式"> <el-form-item label="运输方式" prop="transportId">
<div style="width: 130px;"> <div style="width: 130px;">
<custom-selectors-dictionary v-model="form.objectiveId" <custom-selectors-dictionary v-model="form.transportId"
:options="getDictDatas(DICT_TYPE.ECW_TRANSPORT_TYPE)"></custom-selectors-dictionary> :options="getDictDatas(DICT_TYPE.ECW_TRANSPORT_TYPE)"></custom-selectors-dictionary>
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="5">
<el-form-item label="始发地"> <el-form-item label="始发地" prop="departureId">
<div style="width: 130px;"> <div style="width: 130px;">
<custom-selectors-dictionary v-model="value" <custom-selectors-dictionary label-key="titleZh" value-key="id" v-model="form.departureId"
:options="getDictDatas(DICT_TYPE.COUNTRY)"></custom-selectors-dictionary> :options="exportCityList"></custom-selectors-dictionary>
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="5">
<el-form-item label="目的地"> <el-form-item label="目的地" prop="objectiveId">
<div style="width: 130px;"> <div style="width: 130px;">
<custom-selectors-dictionary v-model="value" <custom-selectors-dictionary label-key="titleZh" value-key="id" v-model="form.objectiveId"
:options="getDictDatas(DICT_TYPE.COUNTRY)"></custom-selectors-dictionary> :options="importCityList"></custom-selectors-dictionary>
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="报关方式"> <el-form-item label="报关方式" prop="customsType">
<div style="width: 130px;"> <div style="width: 130px;">
<custom-selectors-dictionary v-model="form.customsType" <custom-selectors-dictionary v-model="form.customsType"
:options="getDictDatas(DICT_TYPE.SHIPPING_DECLARATION_TYPE)"></custom-selectors-dictionary> :options="getDictDatas(DICT_TYPE.SHIPPING_DECLARATION_TYPE)"></custom-selectors-dictionary>
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="备案"> <el-form-item label="备案" prop="approval">
<div style="width: 130px;"> <div style="width: 130px;">
<custom-selectors-dictionary v-model="form.approval" <custom-selectors-dictionary v-model="form.approval"
:options="getDictDatas(DICT_TYPE.COMMISSION_PRODUCT_APPROVAL)"></custom-selectors-dictionary> :options="getDictDatas(DICT_TYPE.COMMISSION_PRODUCT_APPROVAL)"></custom-selectors-dictionary>
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
<div class="label">佣金</div> <div class="label">佣金</div>
<div class="content"> <div class="content">
<div> <div>
<el-input v-model="mingServantFrom[0].refund" placeholder="placeholder"></el-input> <el-input v-model="mingServantFrom[0].refund"></el-input>
</div> </div>
<div> <div>
<custom-selectors-dictionary v-model="mingServantFrom[0].refundCurrency" <custom-selectors-dictionary v-model="mingServantFrom[0].refundCurrency"
...@@ -144,7 +144,7 @@ ...@@ -144,7 +144,7 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="column" v-if="form.type == 2 && form.darkReturnType == 2"> <div class="column" v-if="form.type == 2 && form.darkReturnType == 2">
<div v-for="(item,index) in darkServantAndRebateForm" :key="index"> <div style="margin-bottom: 10px" v-for="(item,index) in darkServantAndRebateForm" :key="index">
<div class="label"> <div class="label">
佣金: 佣金:
</div> </div>
...@@ -176,7 +176,7 @@ ...@@ -176,7 +176,7 @@
:options="getDictDatas(DICT_TYPE.COMMISSION_UNIT)"></custom-selectors-dictionary> :options="getDictDatas(DICT_TYPE.COMMISSION_UNIT)"></custom-selectors-dictionary>
</div> </div>
</div> </div>
<el-button @click="addToFn(2)" v-if="darkServantAndRebateForm.length -1 === index">添加</el-button> <el-button @click="addToFn(2)" v-show="darkServantAndRebateForm.length -1 === index">添加</el-button>
</div> </div>
</div> </div>
<div class="mingServantAndDarkServant" v-if="form.type == 3"> <div class="mingServantAndDarkServant" v-if="form.type == 3">
...@@ -240,11 +240,13 @@ import { ...@@ -240,11 +240,13 @@ import {
import {DICT_TYPE, getDictDatas} from "@/utils/dict"; import {DICT_TYPE, getDictDatas} from "@/utils/dict";
import customSelectorsDictionary from "./customSelectorsDictionary" import customSelectorsDictionary from "./customSelectorsDictionary"
import {getTradeCityList} from "@/api/ecw/region"; import {getTradeCityList} from "@/api/ecw/region";
import RoutersSelector from "@/components/RoutersSelector"
export default { export default {
name: "CustomerCommissionInfo", name: "CustomerCommissionInfo",
components: { components: {
customSelectorsDictionary, customSelectorsDictionary,
RoutersSelector
}, },
data() { data() {
return { return {
...@@ -261,47 +263,48 @@ export default { ...@@ -261,47 +263,48 @@ export default {
customsType: undefined,//报关类别:我司全代:1,自单代报:2,混合报关:3 customsType: undefined,//报关类别:我司全代:1,自单代报:2,混合报关:3
darkReturnType: this.getDictDatas(this.DICT_TYPE.COMMISSION_DARK_TYPE)[0].value,// 暗佣类型 1产品2达标 darkReturnType: this.getDictDatas(this.DICT_TYPE.COMMISSION_DARK_TYPE)[0].value,// 暗佣类型 1产品2达标
departureId: undefined,// 始发地id departureId: undefined,// 始发地id
objectiveId: undefined,// 运输方式 objectiveId: undefined,//目的地id
transportId:undefined,//运输方式
type: this.getDictDatas(this.DICT_TYPE.COMMISSION_TYPE)[1].value,// 佣金类型 type: this.getDictDatas(this.DICT_TYPE.COMMISSION_TYPE)[1].value,// 佣金类型
}, },
//明佣 //明佣
mingServantFrom: [ mingServantFrom: [
{ {
refund: undefined, refund: 0,
refundCurrency: undefined, refundCurrency:this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,
refundUnit: undefined, refundUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,
} }
], ],
//暗佣金+产品 //暗佣金+产品
darkServantAndProductForm: [ darkServantAndProductForm: [
{ {
productType: undefined,//商品类型 productType:undefined,//商品类型
productAttr: undefined,//暗佣 产品属性 productAttr: undefined,//暗佣 产品属性
darkCommission: undefined,//暗佣 佣金 darkCommission: 0,//暗佣 佣金
darkCurrency: undefined,// 暗佣 货币 darkCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,// 暗佣 货币
darkUnit: undefined,// 暗佣 单位 darkUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,// 暗佣 单位
} }
], ],
//暗佣+产品达标 //暗佣+达标返佣
darkServantAndRebateForm: [ darkServantAndRebateForm: [
{ {
amount: undefined,// 暗佣-满减金额 amount: 0,// 暗佣-满减金额
amountCurrency: undefined,// 暗佣-满减金额对应货币 amountCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,// 暗佣-满减金额对应货币
amountUnit: undefined,// 暗佣-满减金额对应单位, amountUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,// 暗佣-满减金额对应单位,
refund: undefined,//暗佣-满之后返还金额 refund: 0,//暗佣-满之后返还金额
refundCurrency: undefined,//暗佣-满之后返还金额的货币 refundCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,//暗佣-满之后返还金额的货币
refundUnit: undefined,//暗佣-满之后返还金额的单位 refundUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,//暗佣-满之后返还金额的单位
} }
], ],
//暗佣+明金 //暗佣+明金
mingServantAnddarkServant: [ mingServantAnddarkServant: [
{ {
refund: undefined,// 暗佣+明佣 上调金额 refund: 0,// 暗佣+明佣 上调金额
refundCurrency: undefined,// 暗佣+明佣 上调对应的货币 refundCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,// 暗佣+明佣 上调对应的货币
refundUnit: undefined,//暗佣+明佣 上调对应的单位 refundUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,//暗佣+明佣 上调对应的单位
darkAdjustCommission: undefined,//暗佣+明佣 上调金额 darkAdjustCommission: 0,//暗佣+明佣 上调金额
darkAdjustCurrency: undefined,//暗佣+明佣 上调对应的货币 darkAdjustCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,//暗佣+明佣 上调对应的货币
darkAdjustUnit: undefined,//暗佣+明佣 上调对应的单位 darkAdjustUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,//暗佣+明佣 上调对应的单位
} }
], ],
customerForm: { customerForm: {
...@@ -314,17 +317,33 @@ export default { ...@@ -314,17 +317,33 @@ export default {
commodity: [], commodity: [],
// 表单校验 // 表单校验
rules: { rules: {
commissionId: [{required: true, message: "佣金表id不能为空", trigger: "blur"}], customerId: [{required: true, message: "客户名称不能为空", trigger: "blur"}],
departureId: [{required: true, message: "客户名称不能为空", trigger: "blur"}],
transportId: [{required: true, message: "运输方式不能为空", trigger: "blur"}],
objectiveId: [{required: true, message: "客户名称不能为空", trigger: "blur"}],
customsType: [{required: true, message: "客户名称不能为空", trigger: "blur"}],
approval: [{required: true, message: "客户名称不能为空", trigger: "blur"}],
}, },
customerShow: true customerShow: true
}; };
}, },
computed:{
importCityList(){
return this.tradeCityList.filter(item => item.type == 1)
},
exportCityList(){
return this.tradeCityList.filter(item => item.type == 2)
},
},
created() { created() {
this.getItemType(); this.getItemType();
console.log(this.getDictDatas(this.DICT_TYPE.COMMISSION_TYPE),'123');
commodityList().then(res => { commodityList().then(res => {
console.log(res, 'res'); console.log(res, 'res');
this.commodity = res.data this.commodity = res.data
this.darkServantAndProductForm.forEach(item=>{item.productType =this.commodity[0].id})
})
getTradeCityList().then(res => {
this.tradeCityList = res.data
}) })
}, },
methods: { methods: {
...@@ -363,26 +382,28 @@ export default { ...@@ -363,26 +382,28 @@ export default {
addToFn(val){ addToFn(val){
if(val === 1){ if(val === 1){
this.darkServantAndProductForm.push( { this.darkServantAndProductForm.push( {
amount: undefined,// 暗佣-满减金额 productType:this.commodity[0].id,//商品类型
amountCurrency: undefined,// 暗佣-满减金额对应货币 productAttr: this.commodityType[0].id,//暗佣 产品属性
amountUnit: undefined,// 暗佣-满减金额对应单位, darkCommission: 0,//暗佣 佣金
refund: undefined,//暗佣-满之后返还金额 darkCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,// 暗佣 货币
refundCurrency: undefined,//暗佣-满之后返还金额的货币 darkUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,// 暗佣 单位
refundUnit: undefined,//暗佣-满之后返还金额的单位
}) })
}else { }else {
this.darkServantAndRebateForm.push( { this.darkServantAndRebateForm.push( {
amount: undefined,// 暗佣-满减金额 amount: 0,// 暗佣-满减金额
amountCurrency: undefined,// 暗佣-满减金额对应货币 amountCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,// 暗佣-满减金额对应货币
amountUnit: undefined,// 暗佣-满减金额对应单位, amountUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,// 暗佣-满减金额对应单位,
refund: undefined,//暗佣-满之后返还金额 refund: 0,//暗佣-满之后返还金额
refundCurrency: undefined,//暗佣-满之后返还金额的货币 refundCurrency: this.getDictDatas(this.DICT_TYPE.COMMISSION_CURRENCY_TYPE)[0].value,//暗佣-满之后返还金额的货币
refundUnit: undefined,//暗佣-满之后返还金额的单位 refundUnit: this.getDictDatas(this.DICT_TYPE.COMMISSION_UNIT)[0].value,//暗佣-满之后返还金额的单位
}) })
} }
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs.form.validate ((valid)=>{
if(!valid)return
console.log(valid,'1234')
if (this.form.type == 1) { if (this.form.type == 1) {
this.form.customerCommissionInfoBaseVOList = this.mingServantFrom this.form.customerCommissionInfoBaseVOList = this.mingServantFrom
} else if (this.form.type == 2) { } else if (this.form.type == 2) {
...@@ -394,16 +415,17 @@ export default { ...@@ -394,16 +415,17 @@ export default {
} else if (this.form.type == 3) { } else if (this.form.type == 3) {
this.form.customerCommissionInfoBaseVOList = this.mingServantAnddarkServant this.form.customerCommissionInfoBaseVOList = this.mingServantAnddarkServant
} }
console.log(this.form)
createCommission(this.form).then(r =>{ createCommission(this.form).then(r =>{
console.log(r) console.log(r)
}) })
})
}, },
// 商品类型 // 商品类型
getItemType() { getItemType() {
itemTypeListApi().then(res => { itemTypeListApi().then(res => {
if (res.code === 0) { if (res.code === 0) {
this.commodityType = res.data; this.commodityType = res.data;
this.darkServantAndProductForm.forEach(item =>{item.productAttr = this.commodityType[0].id})
} }
}) })
}, },
...@@ -484,6 +506,7 @@ export default { ...@@ -484,6 +506,7 @@ export default {
font-size: 14px; font-size: 14px;
color: #606266; color: #606266;
font-weight: 700; font-weight: 700;
text-align: left;
} }
.custom { .custom {
...@@ -499,12 +522,13 @@ export default { ...@@ -499,12 +522,13 @@ export default {
align-items: center; align-items: center;
.label { .label {
width: 50px; width: 26px;
white-space: nowrap; white-space: nowrap;
vertical-align: middle; vertical-align: middle;
font-size: 14px; font-size: 14px;
color: #606266; color: #606266;
font-weight: 700; font-weight: 700;
width: 100px;
} }
} }
......
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