Commit e9ce7afa authored by dragondean@qq.com's avatar dragondean@qq.com

报价单没搞完备份

parent 8b054d4a
......@@ -43,7 +43,7 @@ export function getCustomerPage(query) {
})
}
// 获得客户下
// 获得客户下
export function getCustomerSelect(query) {
return request({
url: '/ecw/customer/select',
......@@ -52,6 +52,15 @@ export function getCustomerSelect(query) {
})
}
// 根据客户id集合获得客户详情列表
export function getCustomerList(query) {
return request({
url: '/ecw/customer/list',
method: 'get',
params: query
})
}
// 导出客户 Excel
export function exportCustomerExcel(query) {
return request({
......
<template>
<el-select
v-model="index"
filterable
clearable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="remoteMethod"
:loading="loading">
<el-option
v-for="(item, index) in list"
:key="item.id"
:label="`${item.name}(${item.number})`"
:value="index">
</el-option>
</el-select>
</template>
<script>
import {getCustomerSelect, getCustomer} from '@/api/ecw/customer'
export default {
props:{
productType: [String, Number],
value: [String, Number]
},
data(){
return {
index: {},
list:[],
loading: false
}
},
watch:{
index(val){
this.$emit('input', val !== null ? this.list[val].id : null)
this.$emit('change', val !== null ? this.list[val] : null)
},
value(val){
this.init()
}
},
created(){
this.init()
},
methods:{
init(){
if(!this.value) return null
let index = this.list.findIndex(item => item.id == this.value)
if(index < 0){
getCustomer(this.value).then(res => {
this.list.unshift(res.data)
this.index = 0
})
}
},
remoteMethod(keyword){
let params = {}
params.searchKey = keyword
this.loading = true
getCustomerSelect(params)
.then(res => this.list = res.data)
.finally(() => this.loading = false)
}
}
}
</script>
\ No newline at end of file
......@@ -31,13 +31,14 @@
</el-row>
</template>
<script>
import {getCustomerSelect} from '@/api/ecw/customer'
import {getCustomerSelect, getCustomerList} from '@/api/ecw/customer'
export default {
props:{
value: [Array]
},
data(){
return {
list:[],
/* page: 1,
pages: 1, */
queryParams:{
page: 1,
name: null,
......@@ -58,12 +59,29 @@ export default {
watch:{
customerIds(val){
this.$emit('input', val)
},
value(val, old){
if(val.sort().join(',') != old.sort().join(',')){
this.getChoosedList()
}
}
},
created(){
if(this.value && this.value.length){
this.getChoosedList()
}
this.reLoad()
},
methods:{
getChoosedList(){
if(!this.value || !this.value.length){
return
}
getCustomerList({ids: this.value.join(',')})
.then(res => {
this.$set(this, 'choosedList', res.data)
})
},
reLoad(){
this.queryParams.page = 1
this.list = []
......
<template>
<el-select v-model="valueSync" :multiple="multiple">
<el-select v-model="valueSync" :multiple="multiple" :disabled="disabled">
<el-option v-for="item in optionsFormated" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</template>
......@@ -14,7 +14,7 @@ export default {
options: Array,
value: [String, Number, Boolean, Object],
labelField: {
type: String,
type: [String, Function],
default: 'label'
},
valueField: {
......@@ -24,13 +24,14 @@ export default {
multiple: Boolean,
clearable: Boolean,
defaultable: Boolean, // 没有值的时候是否选择第一项
disabled: Boolean
},
computed:{
optionsFormated(){
let arr = []
this.options.forEach(item => {
this.options.forEach((item, index) => {
arr.push({
label: item[this.labelField],
label: typeof this.labelField == 'string' ? item[this.labelField] : (this.labelField)(item, index),
value: item[this.valueField]
})
})
......
......@@ -82,6 +82,7 @@ export const DICT_TYPE = {
ECW_COOPERATION_TYPE: 'cooperation_type', // 合作类型
ECW_SHIPPING_DECLARATION_TYPE: 'shipping_declaration_type', // 出货报关方式(与订单报关方式相同)
ECW_CUSTOMS_TYPE: 'customs_type', // 订单报关方式(非出货报关),优惠券中的单证报关
ECW_PACKAGE_TYPE: 'packageType',
//--------ecw---------
CUSTOMER_STATUS: 'customer_status',
CUSTOMER_SOURCE: 'customer_source',
......
......@@ -56,7 +56,7 @@
<div class="fee-item" v-for="(item, index) in fee[1]" :key="index">
<template v-if="[1,2,3,4,5].indexOf(form.type) > -1">
<el-input v-model="item.fullAmount" style="width:100px" :rules='[costType == 1 ? {required: true, message: "请选择类型"} : null]' />
<el-input v-model="item.fullAmount" style="width:100px" />
<!-- <el-select v-model="item.fullCurrencyId" style="width:100px" >
<el-option v-for="item in currencyList" :key="item.id" :label="item.titleZh" :value="item.id" />
</el-select> -->
......@@ -432,7 +432,7 @@ export default {
// status必填
data.status = 0
data.couponIds = this.couponIds.join(',')
// 费用类型 1 运输费 2 清关费 3 总费用(优惠卷专用)
if(this.form.type == 1){
data.costType = 3
......
This diff is collapsed.
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