Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-app-operator-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lanbaoming
jiedao-app-operator-master
Commits
e9ce7afa
Commit
e9ce7afa
authored
Jun 26, 2022
by
dragondean@qq.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
报价单没搞完备份
parent
8b054d4a
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
308 additions
and
43 deletions
+308
-43
customer.js
src/api/ecw/customer.js
+10
-1
index.vue
src/components/CustomerSelector/index.vue
+67
-0
index.vue
src/components/CustomersSelector/index.vue
+21
-3
index.vue
src/components/Selector/index.vue
+5
-4
dict.js
src/utils/dict.js
+1
-0
edit.vue
src/views/ecw/coupon/edit.vue
+2
-2
edit.vue
src/views/ecw/offer/edit.vue
+202
-33
No files found.
src/api/ecw/customer.js
View file @
e9ce7afa
...
...
@@ -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
({
...
...
src/components/CustomerSelector/index.vue
0 → 100644
View file @
e9ce7afa
<
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
src/components/CustomersSelector/index.vue
View file @
e9ce7afa
...
...
@@ -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
=
[]
...
...
src/components/Selector/index.vue
View file @
e9ce7afa
<
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
]
})
})
...
...
src/utils/dict.js
View file @
e9ce7afa
...
...
@@ -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
'
,
...
...
src/views/ecw/coupon/edit.vue
View file @
e9ce7afa
...
...
@@ -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
...
...
src/views/ecw/offer/edit.vue
View file @
e9ce7afa
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment