Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xoadoPlatform
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
yaohui
xoadoPlatform
Commits
de689fa6
Commit
de689fa6
authored
May 17, 2022
by
吕海涛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改bug
parent
9b223baa
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
367 additions
and
318 deletions
+367
-318
index.js
src/port/maintenance/index.js
+16
-15
index.js
src/port/orderOperation/index.js
+2
-2
getters.js
src/store/getters.js
+8
-0
item.vue
src/views/business/complaintList/components/item.vue
+4
-0
index.vue
src/views/business/complaintList/index.vue
+312
-263
index.vue
src/views/maintenance/waybill/index.vue
+7
-8
orderDetail.vue
src/views/operation/orderDetail.vue
+18
-30
No files found.
src/port/maintenance/index.js
View file @
de689fa6
import
{
post
,
get
}
from
"@/request/http"
;
import
{
post
,
get
}
from
"@/request/http"
;
/*
/*
*获取订单详情
*获取订单详情
*/
*/
export
function
getOrderInfoApi
(
u
,
data
)
{
export
function
getOrderInfoApi
(
u
,
data
)
{
const
url
=
u
+
'/xoado/order/select'
;
const
url
=
u
+
'/xoado/order/select'
;
return
post
(
url
,
data
)
return
post
(
url
,
data
)
}
}
/*
/*
*删除订单
*删除订单
*/
*/
export
function
delDispatchDataApi
(
id
)
{
export
function
delDispatchDataApi
(
id
)
{
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
`/orderUnIfyReceipt/delDispatchData/
${
id
}
`
;
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
`/orderUnIfyReceipt/delDispatchData/
${
id
}
`
;
return
get
(
url
,
{})
return
get
(
url
,
{})
}
}
/*
/*
*获取运单详情
*获取运单详情
*/
*/
export
function
getWaybillInfoApi
(
data
)
{
export
function
getWaybillInfoApi
(
data
)
{
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/new/waybill/obj'
;
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/new/waybill/obj'
;
return
get
(
url
,
data
)
return
get
(
url
,
data
)
}
}
/*
/*
*获取商户订单
*获取商户订单
*/
*/
export
function
paymentRecordApi
(
data
)
{
export
function
paymentRecordApi
(
data
)
{
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/waybill/payment/record'
;
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/waybill/payment/record'
;
return
get
(
url
,
data
)
return
get
(
url
,
data
)
}
}
/*
/*
*获取商户订单
*获取商户订单
*/
*/
export
function
pushDriverApi
(
u
,
data
)
{
export
function
pushDriverApi
(
data
)
{
const
url
=
u
+
'/xoado/order/pushDriver
'
;
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/new/waybill/pushDriverToBrand/waybillId
'
;
return
ge
t
(
url
,
data
)
return
pos
t
(
url
,
data
)
}
}
/*
/*
*运单强制完单
*运单强制完单
*/
*/
export
function
forceFinishApi
(
data
)
{
export
function
forceFinishApi
(
data
)
{
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/temporaryDispatch/forceFinish'
;
const
url
=
process
.
env
.
VUE_APP_BASE_API6
+
'/temporaryDispatch/forceFinish'
;
return
get
(
url
,
data
)
return
get
(
url
,
data
)
}
}
\ No newline at end of file
src/port/orderOperation/index.js
View file @
de689fa6
...
@@ -19,8 +19,8 @@ export function updateBatchOrder(data) {
...
@@ -19,8 +19,8 @@ export function updateBatchOrder(data) {
/*
/*
*推送司机信息
*推送司机信息
*/
*/
export
function
pushDriver
(
data
)
{
export
function
pushDriver
(
u
,
data
)
{
const
url
=
process
.
env
.
VUE_APP_BASE_API5
+
`/xoado/order/pushDriver`
;
const
url
=
u
+
'/xoado/order/pushDriver/orderId'
;
return
post
(
url
,
data
)
return
post
(
url
,
data
)
}
}
...
...
src/store/getters.js
View file @
de689fa6
...
@@ -34,6 +34,14 @@ const getters = {
...
@@ -34,6 +34,14 @@ const getters = {
return
[]
return
[]
}
}
},
},
orderDetail
:
state
=>
{
let
arr
=
Object
.
keys
(
state
.
business
.
orderDetail
);
if
(
arr
.
length
>
0
)
{
return
JSON
.
parse
(
state
.
business
.
orderDetail
)
}
else
{
return
{}
}
},
areaCodeObj
:
state
=>
{
areaCodeObj
:
state
=>
{
let
arr
=
Object
.
keys
(
state
.
business
.
areaCodeObj
);
let
arr
=
Object
.
keys
(
state
.
business
.
areaCodeObj
);
if
(
arr
.
length
>
0
)
{
if
(
arr
.
length
>
0
)
{
...
...
src/views/business/complaintList/components/item.vue
View file @
de689fa6
...
@@ -130,6 +130,9 @@ export default {
...
@@ -130,6 +130,9 @@ export default {
}
}
},
},
created
()
{
created
()
{
console
.
log
(
this
.
searchInfo
);
},
},
filters
:
{
filters
:
{
preDate
(
v
)
{
preDate
(
v
)
{
...
@@ -156,6 +159,7 @@ export default {
...
@@ -156,6 +159,7 @@ export default {
},
},
handledbClick
(
row
)
{
handledbClick
(
row
)
{
let
search
=
this
.
searchInfo
;
let
search
=
this
.
searchInfo
;
this
.
$store
.
commit
(
'business/SET_ORDERDETAIL'
,
JSON
.
stringify
({
brandUrl
:
search
.
brandUrl
,
platformId
:
JSON
.
parse
(
search
.
platformId
).
platformId
}));
this
.
$store
.
commit
(
'business/SET_ORDERDETAIL'
,
JSON
.
stringify
({
brandUrl
:
search
.
brandUrl
,
platformId
:
JSON
.
parse
(
search
.
platformId
).
platformId
}));
this
.
$router
.
push
({
path
:
'/business/complaint-detail'
,
query
:
{
id
:
row
.
complaintId
,
orderId
:
row
.
orderId
}})
this
.
$router
.
push
({
path
:
'/business/complaint-detail'
,
query
:
{
id
:
row
.
complaintId
,
orderId
:
row
.
orderId
}})
},
},
...
...
src/views/business/complaintList/index.vue
View file @
de689fa6
<
template
>
<
template
>
<div
style=
"padding-left: 5px;border-radius: 5px;position:relative;background-color: #ffffff;"
>
<div
<el-row
style=
"background-color: #ffffff;padding: 10px 0 0 20px;"
>
style=
"
<el-radio-group
v-model=
"form.platformId"
@
change=
"changePlatform"
>
padding-left: 5px;
<el-radio-button
border-radius: 5px;
v-for=
"(item, index) in brandLists"
position: relative;
:label=
"item.id"
background-color: #ffffff;
:key=
"'platformId'+index"
"
>
>
{{
item
.
name
}}
<el-row
style=
"background-color: #ffffff; padding: 10px 0 0 20px"
>
</el-radio-button>
<el-radio-group
v-model=
"form.platformId"
@
change=
"changePlatform"
>
</el-radio-group>
<el-radio-button
</el-row>
v-for=
"(item, index) in brandLists"
<el-tabs
style=
"padding-left: 20px;"
v-model=
"form.runType"
type=
"card"
@
tab-click=
"handleClick"
>
:label=
"item.id"
<el-tab-pane
:key=
"'platformId' + index"
style=
"padding: 0 10px;"
>
v-for=
"(item, index) in tabs"
{{
item
.
name
}}
:key=
"index"
</el-radio-button>
:label=
"item.label"
</el-radio-group>
:name=
"item.runType"
>
</el-row>
</el-tab-pane>
<el-tabs
</el-tabs>
style=
"padding-left: 20px"
v-model=
"form.runType"
type=
"card"
@
tab-click=
"handleClick"
>
<el-tab-pane
style=
"padding: 0 10px"
v-for=
"(item, index) in tabs"
:key=
"index"
:label=
"item.label"
:name=
"item.runType"
>
</el-tab-pane>
</el-tabs>
<el-card
shadow=
"never"
>
<el-card
shadow=
"never"
>
<el-form
:inline=
"true"
v-model=
"form"
>
<el-form
:inline=
"true"
v-model=
"form"
>
<el-row
class=
"row-d"
>
<el-row
class=
"row-d"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
style=
"max-width: 300px;"
placeholder=
"请输入手机号/运单编号/订单编号"
<el-input
v-model=
"form.orderInfo"
></el-input>
style=
"max-width: 300px"
</el-col>
placeholder=
"请输入手机号/运单编号/订单编号"
<el-col
:span=
"8"
>
v-model=
"form.orderInfo"
<Selects
:options=
"dataSource.localTransportId"
></el-input>
:selectName=
"'承接运力:'"
</el-col>
:type=
"'transportIds'"
<el-col
:span=
"8"
>
@
changeList=
"handlechangeList"
></Selects>
<Selects
</el-col>
:options=
"dataSource.localTransportId"
<el-col
:span=
"8"
style=
"font-size: 14px;"
>
:selectName=
"'承接运力:'"
控诉时间:
:type=
"'transportIds'"
<el-date-picker
@
changeList=
"handlechangeList"
style=
"max-width: 225px;margin-left: 11px;"
></Selects>
v-model=
"form.dateTime"
</el-col>
type=
"daterange"
<el-col
:span=
"8"
style=
"font-size: 14px"
>
value-format=
"yyyy-MM-dd"
控诉时间:
range-separator=
"至"
<el-date-picker
start-placeholder=
"开始日期"
style=
"max-width: 225px; margin-left: 11px"
end-placeholder=
"结束日期"
>
v-model=
"form.dateTime"
</el-date-picker>
type=
"daterange"
</el-col>
value-format=
"yyyy-MM-dd"
</el-row>
range-separator=
"至"
<el-row
class=
"row-d"
>
start-placeholder=
"开始日期"
<el-col
:span=
"8"
>
end-placeholder=
"结束日期"
<Selects
:options=
"dataSource.complainCategory"
>
:selectName=
"'控诉类别:'"
</el-date-picker>
:type=
"'complainCategory'"
</el-col>
@
changeList=
"handlechangeList"
></Selects>
</el-row>
</el-col>
<el-row
class=
"row-d"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<Selects
:options=
"dataSource.complainWay"
<Selects
:selectName=
"'控诉方式:'"
:options=
"dataSource.complainCategory"
:type=
"'complainWay'"
:selectName=
"'控诉类别:'"
@
changeList=
"handlechangeList"
></Selects>
:type=
"'complainCategory'"
</el-col>
@
changeList=
"handlechangeList"
<el-col
:span=
"8"
>
></Selects>
<Selects
:options=
"dataSource.orderSourceListNew"
</el-col>
:selectName=
"'订单来源:'"
<el-col
:span=
"8"
>
:type=
"'orderSourceList'"
<Selects
@
changeList=
"handlechangeList"
></Selects>
:options=
"dataSource.complainWay"
</el-col>
:selectName=
"'控诉方式:'"
</el-row>
:type=
"'complainWay'"
<el-row
class=
"row-d"
>
@
changeList=
"handlechangeList"
<el-col
:span=
"8"
>
></Selects>
<Selects
:options=
"dataSource.processingStatus"
</el-col>
:selectName=
"'处理状态:'"
<el-col
:span=
"8"
>
:type=
"'processingStatus'"
<Selects
@
changeList=
"handlechangeList"
></Selects>
:options=
"dataSource.orderSourceListNew"
</el-col>
:selectName=
"'订单来源:'"
<el-col
:span=
"8"
>
:type=
"'orderSourceList'"
<el-button
style=
"padding: 8px 20px;"
type=
"primary"
@
click=
"searchByInfo"
>
查询
</el-button>
@
changeList=
"handlechangeList"
<el-button
style=
"padding: 8px 20px;"
type=
"primary"
@
click=
"exportB"
>
批量导出excel
</el-button>
></Selects>
</el-col>
</el-col>
</el-row>
</el-row>
</el-form>
<el-row
class=
"row-d"
>
<itemList
ref=
"itemList"
:searchInfo=
"form"
></itemList>
<el-col
:span=
"8"
>
</el-card>
<Selects
</div>
:options=
"dataSource.processingStatus"
:selectName=
"'处理状态:'"
:type=
"'processingStatus'"
@
changeList=
"handlechangeList"
></Selects>
</el-col>
<el-col
:span=
"8"
>
<el-button
style=
"padding: 8px 20px"
type=
"primary"
@
click=
"searchByInfo"
>
查询
</el-button
>
<el-button
style=
"padding: 8px 20px"
type=
"primary"
@
click=
"exportB"
>
批量导出excel
</el-button
>
</el-col>
</el-row>
</el-form>
<itemList
ref=
"itemList"
:searchInfo=
"form"
></itemList>
</el-card>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
Selects
from
'@/components/Selects'
import
Selects
from
"@/components/Selects"
;
import
JudgeType
from
'@/mixins/judgeType'
import
JudgeType
from
"@/mixins/judgeType"
;
import
{
exportComplaint
}
from
"@/port/complaint/complaint"
;
import
{
exportComplaint
}
from
"@/port/complaint/complaint"
;
import
{
Loading
}
from
"element-ui"
;
import
{
Loading
}
from
"element-ui"
;
import
itemList
from
"./components/item"
import
itemList
from
"./components/item"
;
import
{
platformInfosList
}
from
"@/port/platfrom/setting"
;
import
{
platformInfosList
}
from
"@/port/platfrom/setting"
;
import
{
getAllTransport
}
from
"@/port/set-request"
;
import
{
getAllTransport
}
from
"@/port/set-request"
;
import
dataSource
from
"@/libs/screen"
;
import
dataSource
from
"@/libs/screen"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
mapGetters
}
from
"vuex"
;
export
default
{
export
default
{
name
:
"index"
,
name
:
"index"
,
components
:
{
components
:
{
itemList
,
itemList
,
Selects
Selects
,
},
},
computed
:
{
computed
:
{
...
mapGetters
([
'platformId'
]),
...
mapGetters
([
"platformId"
]),
brandLists
()
{
brandLists
()
{
let
brandList
=
this
.
$store
.
getters
.
brandList
;
let
brandList
=
this
.
$store
.
getters
.
brandList
;
if
(
brandList
.
length
===
0
)
{
if
(
brandList
.
length
===
0
)
{
return
new
Promise
(()
=>
{
return
new
Promise
(()
=>
{
this
.
$store
.
dispatch
(
'business/getBrandList'
)
this
.
$store
.
dispatch
(
"business/getBrandList"
);
})
});
brandList
=
this
.
$store
.
getters
.
brandList
;
brandList
=
this
.
$store
.
getters
.
brandList
;
}
}
brandList
=
brandList
.
filter
(
item
=>
{
brandList
=
brandList
.
filter
((
item
)
=>
{
return
item
.
brandUrl
return
item
.
brandUrl
;
})
});
brandList
=
brandList
.
map
(
item
=>
{
brandList
=
brandList
.
map
((
item
)
=>
{
return
{
id
:
JSON
.
stringify
(
item
),
name
:
item
.
brandName
}
})
return
brandList
;
}
},
watch
:
{
async
brandLists
(
v
){
if
(
v
.
length
>
0
)
{
this
.
getPlatformInfo
();
this
.
getTransport
();
}
}
},
mixins
:
[
JudgeType
],
data
()
{
return
{
return
{
form
:
{
id
:
JSON
.
stringify
(
item
),
orderInfo
:
''
,
name
:
item
.
brandName
,
dateTime
:
[],
};
platformId
:
''
,
});
orderSourceList
:
dataSource
.
applyOrderSourceList
,
return
brandList
;
complainWay
:
[
'1'
,
'2'
],
complainCategory
:
[
'1'
,
'2'
],
processingStatus
:
[
'0'
,
'1'
,
'2'
],
transportIds
:
[],
brandUrl
:
''
,
runType
:
'1'
},
dataSource
:
dataSource
,
platformList
:
[],
tabs
:
[
{
label
:
'同城打车'
,
runType
:
'1'
},
{
label
:
'跨城约车'
,
runType
:
'2'
},
{
label
:
'接送用车'
,
runType
:
'3'
},
{
label
:
'包车'
,
runType
:
'6'
},
{
label
:
'货运'
,
runType
:
'5'
}
],
}
},
},
created
()
{
},
// this.getPlatformFun();
watch
:
{
if
(
this
.
brandLists
.
length
>
0
)
{
async
brandLists
(
v
)
{
this
.
getPlatformInfo
();
if
(
v
.
length
>
0
)
{
this
.
getTransport
();
this
.
getPlatformInfo
();
}
this
.
getTransport
();
}
},
},
methods
:
{
},
getPlatformInfo
()
{
mixins
:
[
JudgeType
],
this
.
dataSource
.
localOrgId
=
this
.
brandLists
;
data
()
{
this
.
form
.
platformId
=
this
.
brandLists
.
length
>
0
?
this
.
brandLists
[
0
].
id
:
''
;
return
{
this
.
brandUrl
=
this
.
brandLists
.
length
>
0
?
JSON
.
parse
(
this
.
brandLists
[
0
].
id
).
brandUrl
:
''
;
form
:
{
this
.
plat
=
this
.
brandLists
.
length
>
0
?
JSON
.
parse
(
this
.
brandLists
[
0
].
id
).
platformId
:
''
;
orderInfo
:
""
,
},
dateTime
:
[],
getPlatformFun
()
{
platformId
:
""
,
platformInfosList
({}).
then
(
res
=>
{
orderSourceList
:
dataSource
.
applyOrderSourceList
,
if
(
res
.
status
==
200
)
{
complainWay
:
[
"1"
,
"2"
],
let
transportIdListArr
=
[];
complainCategory
:
[
"1"
,
"2"
],
res
.
data
.
forEach
((
item
,
index
)
=>
{
processingStatus
:
[
"0"
,
"1"
,
"2"
],
if
(
item
.
brandUrl
)
{
transportIds
:
[],
transportIdListArr
.
push
({
id
:
JSON
.
stringify
(
item
),
name
:
item
.
brandName
})
brandUrl
:
""
,
}
runType
:
"1"
,
})
},
this
.
dataSource
.
localOrgId
=
transportIdListArr
;
dataSource
:
dataSource
,
this
.
platformList
=
transportIdListArr
;
platformList
:
[],
this
.
form
.
platformId
=
transportIdListArr
.
length
>
0
?
transportIdListArr
[
0
].
id
:
''
;
tabs
:
[
this
.
form
.
brandUrl
=
sessionStorage
.
getItem
(
'test'
)
?
''
:
JSON
.
parse
(
transportIdListArr
[
0
].
id
).
brandUrl
;
{
label
:
"同城打车"
,
runType
:
"1"
},
{
label
:
"跨城约车"
,
runType
:
"2"
},
{
label
:
"接送用车"
,
runType
:
"3"
},
this
.
getTransport
();
{
label
:
"包车"
,
runType
:
"6"
},
}
{
label
:
"货运"
,
runType
:
"5"
},
})
],
.
catch
(()
=>
{
};
},
created
()
{
// this.getPlatformFun();
if
(
this
.
brandLists
.
length
>
0
)
{
this
.
getPlatformInfo
();
this
.
getTransport
();
}
},
methods
:
{
getPlatformInfo
()
{
this
.
dataSource
.
localOrgId
=
this
.
brandLists
;
this
.
form
.
platformId
=
this
.
brandLists
.
length
>
0
?
this
.
brandLists
[
0
].
id
:
""
;
this
.
brandUrl
=
this
.
brandLists
.
length
>
0
?
JSON
.
parse
(
this
.
brandLists
[
0
].
id
).
brandUrl
:
""
;
this
.
plat
=
this
.
brandLists
.
length
>
0
?
JSON
.
parse
(
this
.
brandLists
[
0
].
id
).
platformId
:
""
;
this
.
form
.
brandUrl
=
this
.
brandUrl
;
},
getPlatformFun
()
{
platformInfosList
({})
.
then
((
res
)
=>
{
if
(
res
.
status
==
200
)
{
let
transportIdListArr
=
[];
res
.
data
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
brandUrl
)
{
transportIdListArr
.
push
({
id
:
JSON
.
stringify
(
item
),
name
:
item
.
brandName
,
});
}
});
this
.
dataSource
.
localOrgId
=
transportIdListArr
;
this
.
platformList
=
transportIdListArr
;
this
.
form
.
platformId
=
transportIdListArr
.
length
>
0
?
transportIdListArr
[
0
].
id
:
""
;
this
.
form
.
brandUrl
=
sessionStorage
.
getItem
(
"test"
)
?
""
:
JSON
.
parse
(
transportIdListArr
[
0
].
id
).
brandUrl
;
})
},
changePlatform
(
v
)
{
this
.
form
.
platformId
=
v
;
this
.
form
.
brandUrl
=
JSON
.
parse
(
this
.
form
.
platformId
).
brandUrl
;
this
.
dataSource
.
localTransportId
=
[];
this
.
getTransport
();
this
.
getTransport
();
// this.$refs.itemList.initTable(this.form);
}
},
})
handleClick
()
{
.
catch
(()
=>
{});
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
},
},
changePlatform
(
v
)
{
searchByInfo
()
{
this
.
form
.
platformId
=
v
;
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
this
.
form
.
brandUrl
=
JSON
.
parse
(
this
.
form
.
platformId
).
brandUrl
;
},
this
.
dataSource
.
localTransportId
=
[];
this
.
getTransport
();
async
exportB
()
{
// this.$refs.itemList.initTable(this.form);
let
search
=
this
.
form
;
},
let
params
=
{
handleClick
()
{
platformId
:
JSON
.
parse
(
search
.
platformId
).
platformId
,
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
transportIds
:
this
.
form
.
transportIds
,
},
complaintLabel
:
this
.
form
.
complainCategory
,
// 投诉类别:1客户投诉2司机投诉
searchByInfo
()
{
complaintType
:
search
.
complainWay
,
// 投诉类型:1线上投诉2电话投诉3建议
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
orderSource
:
search
.
orderSourceList
,
},
status
:
search
.
processingStatus
,
page
:
1
,
rows
:
9999
,
runType
:
[
this
.
form
.
runType
],
queryParam
:
search
.
orderInfo
,
startTime
:
search
.
dateTime
.
length
===
0
?
''
:
search
.
dateTime
[
0
],
endTime
:
search
.
dateTime
.
length
===
0
?
''
:
search
.
dateTime
[
1
],
};
let
loadingInstance
=
Loading
.
service
({
fullscreen
:
true
});
let
res
=
await
exportComplaint
(
params
,
this
.
form
.
brandUrl
)
let
blob
=
new
Blob
([
res
],
{
type
:
"application/vnd.openxmlformatsnh[nh-officedocument.spreadsheetml.sheet;charset=utf-8"
});
let
link
=
document
.
createElement
(
'a'
);
link
.
href
=
window
.
URL
.
createObjectURL
(
blob
);
loadingInstance
.
close
();
link
.
download
=
`工单列表.xlsx`
;
link
.
click
();
},
getTransport
()
{
let
json
=
{
async
exportB
()
{
platformId
:
JSON
.
parse
(
this
.
form
.
platformId
).
platformId
,
let
search
=
this
.
form
;
page
:
1
,
let
params
=
{
rows
:
50
platformId
:
JSON
.
parse
(
search
.
platformId
).
platformId
,
}
transportIds
:
this
.
form
.
transportIds
,
getAllTransport
(
json
,
this
.
form
.
brandUrl
).
then
(
res
=>
{
complaintLabel
:
this
.
form
.
complainCategory
,
// 投诉类别:1客户投诉2司机投诉
if
(
res
.
status
==
200
)
{
complaintType
:
search
.
complainWay
,
// 投诉类型:1线上投诉2电话投诉3建议
let
datas
=
res
.
data
.
content
;
orderSource
:
search
.
orderSourceList
,
let
transportIdList
=
[];
status
:
search
.
processingStatus
,
let
transportIdListArr
=
[];
page
:
1
,
datas
.
forEach
((
item
,
index
)
=>
{
rows
:
9999
,
transportIdListArr
.
push
({
id
:
String
(
item
.
transportId
),
name
:
item
.
transportName
})
runType
:
[
this
.
form
.
runType
],
transportIdList
.
push
(
String
(
item
.
transportId
))
queryParam
:
search
.
orderInfo
,
})
startTime
:
search
.
dateTime
.
length
===
0
?
""
:
search
.
dateTime
[
0
],
this
.
form
.
transportIds
=
transportIdList
;
endTime
:
search
.
dateTime
.
length
===
0
?
""
:
search
.
dateTime
[
1
],
this
.
dataSource
.
localTransportId
=
transportIdListArr
;
};
let
loadingInstance
=
Loading
.
service
({
fullscreen
:
true
});
let
res
=
await
exportComplaint
(
params
,
this
.
form
.
brandUrl
);
let
blob
=
new
Blob
([
res
],
{
type
:
"application/vnd.openxmlformatsnh[nh-officedocument.spreadsheetml.sheet;charset=utf-8"
,
});
let
link
=
document
.
createElement
(
"a"
);
link
.
href
=
window
.
URL
.
createObjectURL
(
blob
);
loadingInstance
.
close
();
link
.
download
=
`工单列表.xlsx`
;
link
.
click
();
},
getTransport
()
{
let
json
=
{
platformId
:
JSON
.
parse
(
this
.
form
.
platformId
).
platformId
,
page
:
1
,
rows
:
50
,
};
getAllTransport
(
json
,
this
.
form
.
brandUrl
).
then
((
res
)
=>
{
if
(
res
.
status
==
200
)
{
let
datas
=
res
.
data
.
content
;
let
transportIdList
=
[];
let
transportIdListArr
=
[];
datas
.
forEach
((
item
,
index
)
=>
{
transportIdListArr
.
push
({
id
:
String
(
item
.
transportId
),
name
:
item
.
transportName
,
});
transportIdList
.
push
(
String
(
item
.
transportId
));
});
this
.
form
.
transportIds
=
transportIdList
;
this
.
dataSource
.
localTransportId
=
transportIdListArr
;
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
this
.
$refs
.
itemList
.
initTable
(
this
.
form
);
}
}
})
});
},
},
handlechangeList
(
val
)
{
handlechangeList
(
val
)
{
let
source
=
JSON
.
parse
(
JSON
.
stringify
(
val
))
let
source
=
JSON
.
parse
(
JSON
.
stringify
(
val
));
let
type
=
source
.
type
let
type
=
source
.
type
;
let
data
=
this
.
filftersFun
(
source
.
data
);
let
data
=
this
.
filftersFun
(
source
.
data
);
this
.
form
[
type
]
=
data
;
this
.
form
[
type
]
=
data
;
},
},
}
},
}
}
;
</
script
>
</
script
>
<
style
scoped
lang=
"scss"
>
<
style
scoped
lang=
"scss"
>
.EnterpriseInformation
{
.EnterpriseInformation
{
::v-deep
{
::v-deep
{
.el-tabs__header
{
.el-tabs__header
{
margin
:
0
;
margin
:
0
;
}
}
.el-tabs--card
>
.el-tabs__header
{
.el-tabs--card
>
.el-tabs__header
{
border-bottom
:
none
;
border-bottom
:
none
;
}
}
}
}
}
}
.row-d
{
.row-d
{
.el-col
{
.el-col
{
padding
:
5px
10px
;
padding
:
5px
10px
;
}
}
}
}
</
style
>
</
style
>
src/views/maintenance/waybill/index.vue
View file @
de689fa6
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
</el-row>
</el-row>
<div
style=
"margin-top: 10px; display: inline-block"
>
<div
style=
"margin-top: 10px; display: inline-block"
>
<div
style=
"display: flex; align-items: center"
>
<div
style=
"display: flex; align-items: center"
>
<div
style=
"margin-right: 10px; display: flex; align-items: center"
>
<
!--
<
div
style=
"margin-right: 10px; display: flex; align-items: center"
>
<span
style=
"white-space: nowrap; margin-right: 10px"
>
<span
style=
"white-space: nowrap; margin-right: 10px"
>
品牌:
品牌:
</span>
</span>
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
>
>
</el-option>
</el-option>
</el-select>
</el-select>
</div>
</div>
-->
<el-input
v-model=
"orderId"
placeholder=
"请输入内容"
style=
"width: 300px"
></el-input>
<el-input
v-model=
"orderId"
placeholder=
"请输入内容"
style=
"width: 300px"
></el-input>
...
@@ -44,8 +44,8 @@
...
@@ -44,8 +44,8 @@
</div>
</div>
<el-row
v-if=
"isShow"
>
<el-row
v-if=
"isShow"
>
<el-button
v-if=
"
dataSource.waybillStatus == '1'
"
type=
"primary"
style=
"padding: 5px 20px;"
@
click=
"synchronization"
>
同步司机信息
</el-button>
<el-button
v-if=
"
!!dataSource.driverId
"
type=
"primary"
style=
"padding: 5px 20px;"
@
click=
"synchronization"
>
同步司机信息
</el-button>
<el-button
v-if=
"dataSource.waybillStatus >= 1 && dataSource.waybillStatus
<
6
"
type=
"warning"
style=
"padding: 5px 20px;"
@
click=
"force"
:loading=
"forceLoading"
>
强制完单
</el-button>
<el-button
type=
"warning"
style=
"padding: 5px 20px;"
@
click=
"force"
:loading=
"forceLoading"
>
强制完单
</el-button>
</el-row>
</el-row>
</el-row>
</el-row>
...
@@ -571,11 +571,10 @@ export default {
...
@@ -571,11 +571,10 @@ export default {
pushDriver
()
{
pushDriver
()
{
this
.
synchronizationLoading
=
true
;
this
.
synchronizationLoading
=
true
;
let
params
=
{
let
params
=
{
order
Id
:
this
.
orderId
,
waybill
Id
:
this
.
orderId
,
platformId
:
JSON
.
parse
(
this
.
platformInfo
).
platformId
}
}
pushDriverApi
(
params
)
pushDriverApi
(
JSON
.
parse
(
this
.
platformInfo
).
brandUrl
,
params
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
if
(
res
.
status
===
200
)
{
if
(
res
.
status
===
200
)
{
this
.
$message
.
success
(
'推送成功'
);
this
.
$message
.
success
(
'推送成功'
);
...
...
src/views/operation/orderDetail.vue
View file @
de689fa6
...
@@ -363,45 +363,32 @@
...
@@ -363,45 +363,32 @@
<div
class=
"clearfix"
>
<div
class=
"clearfix"
>
<span
class=
"title"
>
订单详情
</span>
<span
class=
"title"
>
订单详情
</span>
<div>
<div>
<el-button
<el-button
type=
"danger"
size=
"mini"
@
click=
"cancelOrder()"
type=
"danger"
size=
"mini"
@
click=
"cancelOrder()"
v-if=
"dataSource.status * 1
<
3
"
>
取消订单
>
取消订单
</el-button>
</el-button>
<el-button
<!-- v-if="dataSource.status * 1
<
3
"
--
>
type=
"primary"
<el-button
type=
"primary"
size=
"mini"
@
click=
"driverInfo()"
v-if=
"
size=
"mini"
!!dataSource.driverId"
@
click=
"driverInfo()"
v-if=
"
dataSource.status * 1 == 2 || dataSource.status * 1 == 1
"
>
同步司机信息
>
同步司机信息
</el-button>
</el-button>
<el-button
<!-- v-if="
type=
"warning"
dataSource.status * 1 == 2 || dataSource.status * 1 == 1
size=
"mini"
" -->
v-if=
"
<el-button
type=
"warning"
size=
"mini"
@
click=
"finishOrder()"
dataSource.status * 1
<
6
&&
dataSource
.
status
*
1
>
= 1
"
@click="finishOrder()"
>
强制完单
>
强制完单
</el-button>
</el-button>
<!-- v-if="
<el-button
dataSource.status * 1
<
6
&&
dataSource
.
status
*
1
>
= 1
type=
"warning"
" -->
size=
"mini"
<el-button
type=
"warning"
size=
"mini"
@
click=
"setpaystatus"
@
click=
"setpaystatus"
>
更改支付状态
v-if=
"
</el-button>
<!-- v-if="
dataSource.status * 1 >= 6 &&
dataSource.status * 1 >= 6 &&
(dataSource.orderSource * 1 == 6 ||
(dataSource.orderSource * 1 == 6 ||
dataSource.orderSource * 1 == 4 ||
dataSource.orderSource * 1 == 4 ||
dataSource.orderSource * 1 == 7)
dataSource.orderSource * 1 == 7)
"
" -->
>
更改支付状态
</el-button>
<!-- orderSource=6 4 7 -->
<!-- orderSource=6 4 7 -->
<!-- 完单 未支付 自营 -->
<!-- 完单 未支付 自营 -->
<!--
<span
v-html=
"renderfun(dataSource)"
></span>
-->
<!--
<span
v-html=
"renderfun(dataSource)"
></span>
-->
...
@@ -919,11 +906,12 @@ export default {
...
@@ -919,11 +906,12 @@ export default {
});
});
},
},
pushDrive
()
{
pushDrive
()
{
let
u
=
JSON
.
parse
(
this
.
platformInfo
).
brandUrl
let
json
=
{
let
json
=
{
platformId
:
this
.
driverdata
.
platformId
,
platformId
:
this
.
driverdata
.
platformId
,
orderId
:
this
.
driverdata
.
orderId
,
orderId
:
this
.
driverdata
.
orderId
,
};
};
pushDriver
(
json
).
then
((
res
)
=>
{
pushDriver
(
u
,
json
).
then
((
res
)
=>
{
if
(
res
.
status
==
200
)
{
if
(
res
.
status
==
200
)
{
this
.
driverStatus
=
false
;
this
.
driverStatus
=
false
;
this
.
$message
({
this
.
$message
({
...
...
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