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
5d915578
Commit
5d915578
authored
Sep 27, 2022
by
dragondean@qq.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://gitlab.jdshangmen.com/jiedao-app/jiedao-app-operator
into dev
parents
083f0740
1df20f6a
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
106 additions
and
32 deletions
+106
-32
index.vue
src/views/ecw/customer/index.vue
+1
-0
index.vue
src/views/ecw/deptTarget/index.vue
+2
-2
index.vue
src/views/ecw/myCustomerService/index.vue
+88
-16
createLog.vue
src/views/ecw/offer/createLog.vue
+3
-2
index.vue
src/views/ecw/order/index.vue
+3
-3
prepayDeal.vue
src/views/ecw/order/prepayDeal.vue
+4
-4
splitApply.vue
src/views/ecw/order/splitApply.vue
+5
-5
No files found.
src/views/ecw/customer/index.vue
View file @
5d915578
...
...
@@ -745,6 +745,7 @@ export default {
watch
:{
selectCustomerList
(
val
){
if
(
val
.
length
===
0
){
this
.
getList
()
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
...
...
src/views/ecw/deptTarget/index.vue
View file @
5d915578
...
...
@@ -315,8 +315,8 @@
setTime
(
item
)
{
this
.
targetPeriod
.
forEach
((
i
,
index
)
=>
{
if
(
i
.
name
===
item
)
{
this
.
form
.
startTime
=
i
.
startDate
;
this
.
form
.
endTime
=
i
.
endDate
;
this
.
form
.
startTime
=
i
.
startDate
+
"
00:00:00
"
;
this
.
form
.
endTime
=
i
.
endDate
+
"
23:59:59
"
;
}
})
},
...
...
src/views/ecw/myCustomerService/index.vue
View file @
5d915578
...
...
@@ -11,30 +11,50 @@
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入客户名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"客户等级"
prop=
"level"
>
<el-select
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.level"
placeholder=
"请选择客户等级"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"联系方式"
>
<el-input
placeholder=
"请输入联系方式"
v-model=
"queryParams.defaultContactPhone"
></el-input>
</el-form-item>
<el-form-item
label=
"客户类别"
prop=
"level"
>
<dict-selector
:type=
"DICT_TYPE.CUSTOMER_TYPE"
multiple
v-model=
"queryParams.type"
></dict-selector>
</el-form-item>
<el-form-item
label=
"客户经理"
prop=
"customerService"
>
<el-select
clearable
v-model=
"queryParams.customerService"
placeholder=
"请选择客户经理"
clearable
size=
"small"
>
<el-option
v-for=
"dict in customerServiceList"
:key=
"dict.id"
:label=
"dict.nickname"
:value=
"dict.id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"客户来源"
prop=
"source"
>
<el-select
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.source"
placeholder=
"请选择客户来源"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"国家"
prop=
"source"
>
<el-select
clearable
v-model=
"form.country"
placeholder=
"请选择国家"
>
<el-option
v-for=
"dict in countryList"
:key=
"dict.id"
:label=
"dict.nameZh"
:value=
"parseInt(dict.id)"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"客户状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-select
clearable
v-model=
"queryParams.status"
placeholder=
"请选择客户状态"
clearable
size=
"small"
>
<el-option
v-for=
"dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"部门"
prop=
"department"
>
<el-input
v-model=
"queryParams.department"
placeholder=
"请输入部门"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-date-picker
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
<el-date-picker
clearable
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
<el-form-item
label=
"信用等级"
prop=
"department"
>
<el-select
clearable
v-model=
"form.level"
>
<el-option
v-for=
"(item,index) in creditList"
:label=
"item.nameZh"
:key=
"index"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
...
...
@@ -51,34 +71,42 @@
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
导出
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
:disabled=
"selectCustomerList.length === 0"
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"show = true;"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:customer:export']"
>
批量移交
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table
ref=
"multipleTable"
v-loading=
"loading"
:data=
"list"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
label=
"客户编号"
align=
"center"
prop=
"number"
/>
<el-table-column
label=
"客户名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
level
"
>
<el-table-column
label=
"客户等级"
align=
"center"
prop=
"
vipLevelNameZh
"
>
<template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_LEVEL"
:value=
"scope.row.level"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.COUNTRY"
:value=
"scope.row.country"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"信用等级"
prop=
"creditLevelNameZh"
></el-table-column>
<el-table-column
label=
"客户状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.CUSTOMER_STATUS"
:value=
"scope.row.status"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"部门"
align=
"center"
prop=
"department"
/>
<el-table-column
label=
"主联系人"
prop=
"defaultContactName"
></el-table-column>
<el-table-column
label=
"主联系方式"
prop=
"defaultContactPhone"
></el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"客户经理"
align=
"center"
prop=
"customerService"
:formatter=
"customerServiceFn"
>
</el-table-column>
<el-table-column
label=
"国家"
align=
"center"
prop=
"country"
:formatter=
"countryFormatter"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-view"
@
click=
"handleView(scope.row)"
...
...
@@ -98,6 +126,7 @@
@
pagination=
"getList"
/>
<customer-follow-list
ref=
"customerFollowList"
:customer-id=
"customerId"
:id=
"customerId"
></customer-follow-list>
<customer-complaints
ref=
"customerComplaint"
:customer-id.sync=
"customerId"
></customer-complaints>
<transfer-customer
:show.sync=
"show"
:customer-ids.sync=
"selectCustomerList"
></transfer-customer>
</div>
</template>
...
...
@@ -108,15 +137,24 @@ import { getDictDatas, DICT_TYPE } from '@/utils/dict';
import
upload
from
'
@/components/ImageUpload
'
import
customerFollowList
from
"
@/components/CustomerFollowList
"
;
import
customerComplaints
from
"
@/components/customerComplaints
"
;
import
{
listServiceUser
}
from
"
@/api/system/user
"
;
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
{
getCreditPage
}
from
"
@/api/customer/credit
"
;
import
transferCustomer
from
"
@/views/ecw/customer/transferCustomer
"
;
export
default
{
name
:
"
myCustomerService
"
,
components
:
{
upload
,
customerFollowList
,
customerComplaints
customerComplaints
,
transferCustomer
},
data
()
{
return
{
show
:
false
,
creditList
:[],
countryList
:[],
customerServiceList
:[],
getDictDatas
,
DICT_TYPE
,
// 遮罩层
...
...
@@ -163,6 +201,7 @@ export default {
nodeList
:
[],
showLine
:
false
,
customerId
:
undefined
,
selectCustomerList
:[],
};
},
created
()
{
...
...
@@ -170,8 +209,32 @@ export default {
// getNodeList().then(r => {
// this.nodeList = r.data
// })
getCreditPage
({
page
:
1
,
rows
:
999
}).
then
(
r
=>
{
this
.
creditList
=
r
.
data
.
list
})
listServiceUser
().
then
(
r
=>
{
this
.
customerServiceList
=
r
.
data
;
})
getCountryListAll
().
then
(
r
=>
{
this
.
countryList
=
r
.
data
})
},
methods
:
{
handleSelectionChange
(
val
){
this
.
selectCustomerList
=
val
.
map
(
i
=>
i
.
id
);
},
countryFormatter
(
row
,
column
,
cellValue
)
{
const
country
=
this
.
countryList
.
find
((
e
)
=>
e
.
id
===
cellValue
)
return
country
?.
nameZh
},
customerServiceFn
(
val
){
if
(
this
.
customerServiceList
.
length
>
0
){
let
index
=
this
.
customerServiceList
.
findIndex
(
item
=>
item
.
id
===
val
.
customerService
);
return
index
!==
-
1
?
this
.
customerServiceList
[
index
]?.
nickname
:
''
}
else
{
return
''
}
},
/** 查询列表 */
getList
()
{
this
.
loading
=
true
;
...
...
@@ -323,6 +386,15 @@ export default {
this
.
$refs
[
'
customerComplaint
'
].
handleAdd
()
})
}
},
watch
:{
selectCustomerList
(
val
){
if
(
val
.
length
===
0
){
this
.
getList
()
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
}
};
</
script
>
src/views/ecw/offer/createLog.vue
View file @
5d915578
...
...
@@ -14,13 +14,13 @@
<el-date-picker
clearable
v-model=
"form.followUpTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
format=
"yyyy-MM-dd HH:mm:ss"
type=
"datetime"
:placeholder=
"$t('选择跟进时间')"
/>
</el-form-item>
<el-form-item
:label=
"$t('客户经理')"
prop=
"followUpSalesmanId"
style=
"width: 46%;display: inline-block;;margin-left:8%"
>
<el-select
v-model=
"form.followUpSalesmanId"
:placeholder=
"$t('请选择跟进业务员')"
>
<el-select
v-model=
"form.followUpSalesmanId"
:placeholder=
"$t('请选择跟进业务员')"
clearable
>
<el-option
v-for=
"item in creatorData"
:key=
"item.id"
:label=
"item.nickname"
:value=
"item.id"
/>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('联系人')"
prop=
"contacts"
style=
"width: 46%;display: inline-block"
>
<el-select
v-model=
"form.contacts"
:placeholder=
"$t('请选择联系人')"
>
<el-select
v-model=
"form.contacts"
:placeholder=
"$t('请选择联系人')"
clearable
>
<el-option
v-for=
"item in contactsData"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
/>
</el-select>
</el-form-item>
...
...
@@ -30,6 +30,7 @@
:placeholder=
"$t('请选择跟进方式')"
v-model=
"form.followUpMethod"
form-type=
"select"
:clearable=
"true"
/>
</el-form-item>
<el-form-item
:label=
"$t('客户反馈')"
prop=
"customerFeedback"
>
...
...
src/views/ecw/order/index.vue
View file @
5d915578
...
...
@@ -247,14 +247,14 @@
<el-dropdown-menu
slot=
"dropdown"
>
<!-- 入仓操作 -->
<
template
v-if=
"include(scope.row.status, [0,2]) || include(scope.row.abnormalState, [1])"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓
操作
'
)
}}
</el-dropdown-item>
</
template
>
<!-- 入仓补充 -->
<
template
v-if=
"
include(scope.row.inWarehouseState, [201,202, 208, 202, 210, 202, 211, 202, 213, 214, 215, 216]) ||
include(scope.row.abnormalState, [99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14])
"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓
'
)
}}
</el-dropdown-item>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓
补充
'
)
}}
</el-dropdown-item>
</
template
>
<!-- 入仓修改 -->
<
template
v-if=
"
...
...
@@ -262,7 +262,7 @@
"
>
<el-dropdown-item
@
click.native=
"$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi=
"['ecw:order:update']"
>
{{
$t
(
'
入仓修改
'
)
}}
</el-dropdown-item>
</
template
>
<!-- 退仓 -->
<
template
v-if=
"
include(scope.row.inWarehouseState, [201, 202, 207, 208, 202, 209, 210, 202, 211, 212, 202, 213, 214, 215, 216]) &&
...
...
src/views/ecw/order/prepayDeal.vue
View file @
5d915578
...
...
@@ -187,7 +187,7 @@
</el-row>
<el-row
v-if=
"orderExceptionData.orderExceptionType!='order_miss_exception'&&orderExceptionData.orderExceptionType!='order_superfluous_goods_exception'&&orderExceptionData.orderExceptionType!='order_in_water_exception'&&orderExceptionData.orderExceptionType!='order_damage_exception'"
>
<el-form-item
:label=
"$t('处理结果:')"
required
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
placeholder=
"请选择"
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
placeholder=
"请选择"
clearable
>
<el-option
v-for=
"dict in getDictDatas(orderExceptionData.orderExceptionType+'_result')"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
...
...
@@ -196,8 +196,8 @@
<el-row
:span=
"8"
v-if=
"orderExceptionData.orderExceptionType=='order_pick_up_exception'&&handlerParams.orderExceptionHandlerResult=='cost_required'"
>
<el-form-item
:label=
"$t('送货费用:')"
size=
"medium"
>
<el-input
style=
"width: 100px;"
type=
"text"
v-model=
"handlerParams.amount"
/>
<el-select
v-model=
"handlerParams.currency"
style=
"width: 100px;margin-left: 10px;"
>
<el-option
v-for=
"dict in getDictDatas('shipping_price_unit')"
<el-select
v-model=
"handlerParams.currency"
style=
"width: 100px;margin-left: 10px;"
clearable
>
<el-option
v-for=
"dict in getDictDatas('shipping_price_unit')
"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
...
...
@@ -222,7 +222,7 @@
</el-row>
<el-row>
<el-form-item
:label=
"$t('查明原因:')"
required
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
>
<el-select
v-model=
"handlerParams.orderExceptionHandlerResult"
clearable
>
<el-option
v-for=
"dict in getDictDatas(orderExceptionData.orderExceptionType+'_result')"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
...
...
src/views/ecw/order/splitApply.vue
View file @
5d915578
...
...
@@ -187,17 +187,17 @@
<el-form
ref=
"formSplit"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-row>
<el-form-item
:label=
"$t('运输方式')"
>
<dict-selector
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"form.transportId"
formatter=
"number"
/>
<dict-selector
:
clearable=
"true"
:
type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model=
"form.transportId"
formatter=
"number"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('目的仓库:')"
>
<el-select
v-model=
"form.destWarehouseId"
:placeholder=
"$t('请选择目的仓库')"
>
<el-select
v-model=
"form.destWarehouseId"
:placeholder=
"$t('请选择目的仓库')"
clearable
>
<el-option
v-for=
"item in importCityList"
:label=
"item.titleZh"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('出货渠道')"
v-if=
"getDictData(DICT_TYPE.ECW_TRANSPORT_TYPE, form.transportId).cssClass == 'channel'"
>
<el-select
v-model=
"form.channelId"
:placeholder=
"$t('请选择出货渠道')"
>
<el-select
v-model=
"form.channelId"
:placeholder=
"$t('请选择出货渠道')"
clearable
>
<el-option
:disabled=
"getDictData(DICT_TYPE.ECW_TRANSPORT_TYPE, form.transportId).cssClass != 'channel'"
v-for=
"item in channelData"
:key=
"item.channelId"
:label=
"item.nameZh"
:value=
"item.channelId"
/>
</el-select>
</el-form-item>
...
...
@@ -214,14 +214,14 @@
<el-form
ref=
"shopForm"
:model=
"shopForm"
:rules=
"shopRules"
label-width=
"80px"
>
<el-row>
<el-form-item
:label=
"$t('中文品名:')"
v-if=
"splitData.length>0"
>
<el-select
v-model=
"shopForm.prodTitleZh"
:placeholder=
"$t('请选择中文品名')"
@
change=
"changeProdTitleZh"
>
<el-select
v-model=
"shopForm.prodTitleZh"
:placeholder=
"$t('请选择中文品名')"
@
change=
"changeProdTitleZh"
clearable
>
<el-option
v-for=
"item in splitData[0].orderSplitItemBackVOList"
:label=
"item.prodTitleZh"
:value=
"item.prodTitleZh"
:key=
"item.prodTitleZh"
></el-option>
</el-select>
</el-form-item>
</el-row>
<el-row>
<el-form-item
:label=
"$t('英文品名:')"
v-if=
"splitData.length>0"
>
<el-select
v-model=
"shopForm.prodTitleEn"
:placeholder=
"$t('请选择英文品名')"
@
change=
"changeProdTitleEn"
>
<el-select
v-model=
"shopForm.prodTitleEn"
:placeholder=
"$t('请选择英文品名')"
@
change=
"changeProdTitleEn"
clearable
>
<el-option
v-for=
"item in splitData[0].orderSplitItemBackVOList"
:label=
"item.prodTitleEn"
:value=
"item.prodTitleEn"
:key=
"item.prodTitleEn"
></el-option>
</el-select>
</el-form-item>
...
...
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