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
8028f675
Commit
8028f675
authored
Oct 31, 2023
by
我在何方
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
重量超限异常添加工作流
parent
0c89be3c
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
297 additions
and
18 deletions
+297
-18
detail.vue
src/views/bpm/processInstance/detail.vue
+7
-1
overweightException.vue
...ws/ecw/order/exception/components/overweightException.vue
+252
-0
prepayDeal.vue
src/views/ecw/order/prepayDeal.vue
+38
-17
No files found.
src/views/bpm/processInstance/detail.vue
View file @
8028f675
...
...
@@ -459,7 +459,13 @@ export default {
revoke_clear
:{
component
:()
=>
import
(
"
@/views/ecw/box/components/RevokeClear
"
),
id
:
this
.
processInstance
.
businessKey
}
},
// 重量超限
over_weight_exception
:{
component
:
()
=>
import
(
'
@/views/ecw/order/exception/components/overweightException
'
),
id
:
this
.
processInstance
.
businessKey
,
path
:
this
.
processInstance
.
processDefinition
?.
formCustomViewPath
},
}
console
.
log
(
'
formCustomViewPath
'
,
this
.
processInstance
.
processDefinition
.
formCustomViewPath
.
trim
())
return
map
[
this
.
processInstance
.
processDefinition
.
formCustomViewPath
.
trim
()]
...
...
src/views/ecw/order/exception/components/overweightException.vue
0 → 100644
View file @
8028f675
<!--拆单审核中的申请信息部分-->
<
template
>
<div
v-if=
"order"
>
<el-descriptions
:column=
"3"
v-if=
"order"
:colon=
"false"
>
<el-descriptions-item
:label=
"$t('订单号')"
>
{{
order
.
orderNo
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('运输方式')"
>
<dict-tag
class=
"mr-10"
:type=
"DICT_TYPE.ECW_TRANSPORT_TYPE"
:value=
"order.transportId"
/>
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('出货方式')"
>
{{
channel
?
channel
.
nameZh
:
'
/
'
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('唛头')"
>
{{
order
.
marks
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('始发仓')"
>
{{
order
.
logisticsInfoDto
.
startTitleZh
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('目的仓')"
:span=
"2"
>
{{
order
.
logisticsInfoDto
.
destAddressZh
}}
</el-descriptions-item>
<el-descriptions-item
:label=
"$t('异常描述')"
:span=
"2"
>
{{
$l
(
orderExceptionData
.
orderExceptionDescVO
,
'
desc
'
)
}}
</el-descriptions-item>
</el-descriptions>
<div
v-for=
"row in orderItemData"
:key=
"row.orderItemId"
>
<div
v-if=
"row.charging ==1"
class=
"price_list"
>
<span>
旧成交价:
</span>
<div>
<div
v-if=
"!row.oneSeaFreight"
>
<span>
{{
$t
(
'
全包价
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span>
{{
$t
(
'
全包价
'
)
}}
:
</span>
<span>
【
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
】
</span>
</div>
</div>
</div>
<div
v-else
class=
"price_list"
>
<span>
旧成交价:
</span>
<div>
<div
v-if=
"!row.oneSeaFreight"
>
<span>
{{
$t
(
'
运费
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span>
{{
$t
(
'
运费
'
)
}}
:
</span>
<span>
【
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
】
</span>
</div>
</div>
<div>
<div
v-if=
"!row.oneClearanceFreight"
>
<span
>
{{
$t
(
'
清关费
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span>
{{
$t
(
'
清关费
'
)
}}
:
</span>
<span>
【
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
】
</span>
</div>
</div>
</div>
</div>
<div
v-for=
"row in loopOrderItem"
:key=
"row.orderItemId"
>
<div
v-if=
"row.charging ==1"
class=
"price_list"
>
<span>
新成交价:
</span>
<div>
<div
v-if=
"!row.oneSeaFreight"
>
<span
>
{{
$t
(
'
全包价
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span
>
{{
$t
(
'
全包价
'
)
}}
:
</span>
<span>
【
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
】
</span>
</div>
</div>
</div>
<div
v-else
class=
"price_list"
>
<span>
新成交价:
</span>
<div>
<div
v-if=
"!row.oneSeaFreight"
>
<span>
{{
$t
(
'
运费
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span
>
{{
$t
(
'
运费
'
)
}}
:
</span>
<span>
【
{{
row
.
oneSeaFreight
}}
{{
currencyMap
[
row
.
seaFreightCurrency
]
}}
/
{{
unitMap
[
row
.
seaFreightVolume
]
}}
】
</span>
</div>
</div>
<div>
<div
v-if=
"!row.oneClearanceFreight"
>
<span
>
{{
$t
(
'
清关费
'
)
}}
:
</span>
<span>
{{
$t
(
'
未报价
'
)
}}
</span>
</div>
<div
v-else
>
<span>
{{
$t
(
'
清关费
'
)
}}
:
</span>
<span>
【
{{
row
.
oneClearanceFreight
}}
{{
currencyMap
[
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
row
.
clearanceFreightVolume
]
}}
】
</span>
</div>
</div>
</div>
</div>
<el-descriptions
:column=
"3"
v-if=
"order"
:colon=
"false"
>
<el-descriptions-item
:label=
"$t('备注')"
:span=
"2"
>
{{
$l
(
orderExceptionData
.
orderExceptionRemark
,
'
desc
'
)
}}
</el-descriptions-item>
</el-descriptions>
</div>
</
template
>
<
script
>
import
{
getOrder
}
from
'
@/api/ecw/order
'
import
{
getChannel
}
from
'
@/api/ecw/channel
'
import
{
getUnitList
}
from
"
@/api/ecw/unit
"
import
{
getCurrencyList
}
from
'
@/api/ecw/currency
'
import
{
getProductAttrList
}
from
'
@/api/ecw/productAttr
'
import
Decimal
from
'
decimal.js
'
import
{
getExceptionDetailByBusinessId
,
getOrderExceptionChannelPriceList
}
from
'
@/api/ecw/orderException
'
export
default
{
name
:
'
overweightException
'
,
props
:{
id
:
[
String
,
Number
],
path
:
String
},
data
(){
return
{
orderExceptionData
:
null
,
order
:
null
,
channel
:
null
,
unitList
:[],
currencyList
:[],
detail
:
null
,
loopOrderItem
:[],
orderItemData
:[]
}
},
watch
:{
id
(){
this
.
getData
()
},
order
(){
if
(
this
.
order
.
channelId
){
this
.
getChannel
()
}
},
},
computed
:{
currencyMap
(){
let
map
=
{}
this
.
currencyList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
})
return
map
},
unitMap
(){
let
map
=
{}
this
.
unitList
.
forEach
(
item
=>
{
map
[
item
.
id
]
=
this
.
$l
(
item
,
'
title
'
)
})
return
map
}
},
async
created
(){
await
getUnitList
().
then
(
res
=>
this
.
unitList
=
res
.
data
)
await
getCurrencyList
().
then
(
res
=>
this
.
currencyList
=
res
.
data
)
this
.
productAttrList
=
(
await
getProductAttrList
()).
data
if
(
this
.
id
){
this
.
getData
()
}
},
methods
:{
Decimal
,
getData
(){
getExceptionDetailByBusinessId
({
businessId
:
this
.
id
}).
then
(
res
=>
{
this
.
orderExceptionData
=
res
.
data
if
(
this
.
orderExceptionData
.
orderExceptionRemark
){
this
.
orderExceptionData
.
orderExceptionRemark
=
JSON
.
parse
(
this
.
orderExceptionData
.
orderExceptionRemark
)
}
if
(
res
.
data
.
orderId
){
getOrder
(
res
.
data
.
orderId
).
then
(
res
=>
{
this
.
order
=
res
.
data
this
.
getExceptionPriceList
(
res
.
data
.
orderId
)
})
}
})
},
getProdAtrr
(
ids
){
if
(
!
ids
)
return
''
let
attr
=
[]
let
attrIds
=
ids
.
split
(
'
,
'
)
this
.
productAttrList
.
forEach
(
item
=>
{
if
(
attrIds
.
indexOf
(
item
.
id
)
>
-
1
||
attrIds
.
indexOf
(
item
.
id
+
''
)
>-
1
){
attr
.
push
(
this
.
$l
(
item
,
'
attrName
'
))
}
})
return
attr
.
join
(
'
,
'
)
},
getChannel
(){
getChannel
(
this
.
order
.
channelId
).
then
(
res
=>
{
this
.
channel
=
res
.
data
})
},
getExceptionPriceList
(
orderId
){
let
that
=
this
that
.
loopOrderItem
=
[]
getOrderExceptionChannelPriceList
({
orderId
:
orderId
,
exceptionId
:
this
.
orderExceptionData
.
id
,
exceptionResultId
:
parseInt
(
that
.
id
)}).
then
(
res
=>
{
if
(
res
.
code
==
0
&&
res
.
data
.
length
>
0
){
that
.
order
.
orderItemVOList
.
map
(
v
=>
{
let
item
=
res
.
data
.
find
(
vs
=>
vs
.
orderItemId
==
v
.
orderItemId
)
let
orderItem
=
{}
if
(
item
){
orderItem
.
oneSeaFreight
=
item
.
freightFee
orderItem
.
seaFreightCurrency
=
item
.
freightCurrencyId
orderItem
.
seaFreightVolume
=
item
.
freightUnitId
orderItem
.
oneClearanceFreight
=
item
.
clearanceFee
orderItem
.
clearanceFreightCurrency
=
item
.
clearanceCurrencyId
orderItem
.
clearanceFreightVolume
=
item
.
clearanceUnitId
that
.
loopOrderItem
.
push
(
orderItem
)
that
.
orderItemData
.
push
(
v
)
}
})
}
})
}
}
}
</
script
>
<
style
scoped
lang=
"scss"
>
.title
{
padding
:
10px
0
;
span
{
font-size
:
14px
;
font-weight
:
bold
;
}
}
.bold
{
font-weight
:
bold
;
}
::v-deep
.prepay_exception_detail
.el-form-item
{
margin-bottom
:
0
;
}
.price_list
{
display
:
flex
;
align-items
:
center
;
margin-right
:
10px
;
font-weight
:
700
;
font-size
:
14px
;
color
:
#333
;
margin-bottom
:
10px
;
}
.price_list
div
{
}
</
style
>
src/views/ecw/order/prepayDeal.vue
View file @
8028f675
...
...
@@ -45,6 +45,13 @@
{{
$l
(
orderExceptionData
.
orderExceptionDescVO
,
'
desc
'
)
}}
</el-form-item>
</el-row>
<el-row
:span=
"12"
v-if=
"orderExceptionData.orderExceptionType=='order_other_exception'&&orderExceptionData.orderExceptionRemark"
>
<el-form-item
:label=
"$t('详细说明')+':'"
>
<!--
<dict-tag
:type=
"DICT_TYPE.ORDER_ERROR_TYPE"
:value=
"orderExceptionData.orderExceptionType"
/>
-->
<!--
{{
orderExceptionData
.
orderExceptionDescVO
?
orderExceptionData
.
orderExceptionDescVO
.
descZh
:
'
无
'
}}
-->
{{
$l
(
orderExceptionData
.
orderExceptionRemark
,
'
desc
'
)
}}
</el-form-item>
</el-row>
<!-- 单证异常,发货人异常,其他异常 不显示这部分内容 -->
<div
v-if=
"['order_doc_exception','order_consignor_exception', 'order_other_exception','overweight_exception','channel_packaging_overweight_exception'].indexOf(orderExceptionData.orderExceptionType) == -1"
>
...
...
@@ -361,8 +368,9 @@
<
el
-
input
style
=
"
width: 500px;
"
type
=
"
textarea
"
v
-
model
=
"
handlerParams.orderExceptionHandlerRemark
"
:
disabled
=
"
orderExceptionData.orderExceptionStatus==2
"
/>
<
/el-form-item
>
<
/el-row
>
<!--
线路单证异常
-->
<
div
v
-
if
=
"
orderExceptionData.orderExceptionType=='line_loop_exception'
"
>
<!--
线路单证异常
,
重量超限,渠道超限异常
-->
<
div
v
-
if
=
"
orderExceptionData.orderExceptionType=='line_loop_exception'||((orderExceptionData.orderExceptionType=='channel_packaging_overweight_exception'||orderExceptionData.orderExceptionType=='overweight_exception')&&handlerParams.orderExceptionHandlerResult=='allow_over')
"
>
<
div
v
-
for
=
"
row in loopOrderItem
"
:
key
=
"
row.orderItemId
"
>
<
div
v
-
if
=
"
row.charging ==1
"
>
...
...
@@ -415,7 +423,7 @@
<
/div
>
<
/div
>
<
div
class
=
"
price_list
"
>
<
div
v
-
if
=
"
!row.one
Sea
Freight
"
>
<
div
v
-
if
=
"
!row.one
Clearance
Freight
"
>
<
span
class
=
"
price_label
"
>
{{
$t
(
'
清关费
'
)
}}
:
<
/span
>
<
span
>
{{
$t
(
'
未报价
'
)
}}
<
/span
>
<
/div
>
...
...
@@ -768,8 +776,10 @@
待审核可能没有
bpmStatus
字段
-->
<
template
v
-
if
=
"
orderExceptionData.bpmStatus == 1 || (orderExceptionData.bpmId && !orderExceptionData.bpmStatus)
"
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
$router.push(`/bpm/process-instance/detail?id=`+orderExceptionData.bpmId)
"
>
{{
$t
(
'
审核中
'
)
}}
<
/el-button
>
<
el
-
button
plain
type
=
"
primary
"
@
click
=
"
cancelAudit
"
>
{{
$t
(
'
取消审核
'
)
}}
<
/el-button
>
<
el
-
button
v
-
if
=
"
['channel_packaging_overweight_exception','overweight_exception'].indexOf(orderExceptionData.orderExceptionType)>-1
"
type
=
"
primary
"
@
click
=
"
$router.push(`/bpm/process-instance/detail?id=`+orderExceptionData.bpmId)
"
>
{{
$t
(
'
重量超限改价审核中
'
)
}}
<
/el-button
>
<
el
-
button
v
-
else
type
=
"
primary
"
@
click
=
"
$router.push(`/bpm/process-instance/detail?id=`+orderExceptionData.bpmId)
"
>
{{
$t
(
'
审核中
'
)
}}
<
/el-button
>
<
el
-
button
v
-
if
=
"
['channel_packaging_overweight_exception','overweight_exception'].indexOf(orderExceptionData.orderExceptionType)>-1
"
plain
type
=
"
primary
"
@
click
=
"
cancelAudit
"
>
{{
$t
(
'
取消重量超限改价审核
'
)
}}
<
/el-button
>
<
el
-
button
v
-
else
plain
type
=
"
primary
"
@
click
=
"
cancelAudit
"
>
{{
$t
(
'
取消审核
'
)
}}
<
/el-button
>
<
el
-
button
plain
type
=
"
primary
"
@
click
=
"
$store.dispatch('tagsView/delCurrentView')
"
>
{{
$t
(
'
返回
'
)
}}
<
/el-button
>
<
/template
>
<
template
v
-
else
-
if
=
"
orderExceptionData.orderExceptionStatus==2
"
>
...
...
@@ -891,7 +901,7 @@
}
,
watch
:{
'
handlerParams.orderExceptionHandlerResult
'
(
val
){
if
(
val
==
'
no_pay
'
){
if
(
val
==
'
no_pay
'
||
val
==
"
allow_over
"
){
this
.
showWorkFlow
=
true
}
else
if
(
val
==
"
continue_channel
"
){
this
.
showWorkFlow
=
true
...
...
@@ -1027,6 +1037,10 @@
if
(
that
.
orderExceptionData
.
orderExceptionAttr
){
that
.
handlerParams
.
fileList
=
that
.
orderExceptionData
.
orderExceptionAttr
.
split
(
'
,
'
)
}
if
(
that
.
orderExceptionData
.
orderExceptionRemark
){
that
.
orderExceptionData
.
orderExceptionRemark
=
JSON
.
parse
(
that
.
orderExceptionData
.
orderExceptionRemark
)
}
// if(response.data.hasOwnProperty('orderItemId'))
{
// that.getShopData(response.data.orderItemId)
//
}
...
...
@@ -1093,12 +1107,17 @@
v
.
clearanceFreightVolume
=
this
.
unitList
[
1
][
'
id
'
]
}
}
)
}
else
if
(
handlerParams
.
orderExceptionHandlerResult
==
'
continue_channel
'
){
this
.
getExceptionPriceList
(
'
continue_channel
'
)
}
else
if
(
this
.
handlerParams
.
orderExceptionHandlerResult
==
'
line_loop_exception
'
){
this
.
getExceptionPriceList
(
'
line_loop_exception
'
,
1
)
}
}
if
(
this
.
orderExceptionData
.
orderExceptionType
==
'
line_loop_exception
'
){
this
.
getExceptionPriceList
(
'
line_loop_exception
'
)
if
(
this
.
handlerParams
.
orderExceptionHandlerResult
==
'
continue_channel
'
){
this
.
getExceptionPriceList
(
'
continue_channel
'
,
1
)
}
if
([
'
channel_packaging_overweight_exception
'
,
'
overweight_exception
'
].
indexOf
(
this
.
orderExceptionData
.
orderExceptionType
)
>-
1
&&
this
.
orderExceptionData
.
orderExceptionStatus
==
'
1
'
){
this
.
getExceptionPriceList
(
'
continue_channel
'
,
2
)
}
else
{
this
.
getExceptionPriceList
(
'
line_loop_exception
'
,
1
)
}
}
);
}
,
...
...
@@ -1203,8 +1222,8 @@
return
}
}
if
(
(
this
.
orderExceptionData
.
orderExceptionType
==
'
not_shipping_channel_exception
'
)
||
this
.
orderExceptionData
.
orderExceptionType
==
'
line_loop_exception
'
){
if
(
this
.
orderExceptionData
.
orderExceptionType
==
'
line_loop_exception
'
){
if
(
[
'
line_loop_exception
'
,
'
channel_packaging_overweight_exception
'
,
'
overweight_exception
'
,
'
not_shipping_channel_exception
'
].
indexOf
(
this
.
orderExceptionData
.
orderExceptionType
)
>-
1
){
if
(
this
.
orderExceptionData
.
orderExceptionType
==
'
line_loop_exception
'
||
((
this
.
orderExceptionData
.
orderExceptionType
==
'
channel_packaging_overweight_exception
'
||
this
.
orderExceptionData
.
orderExceptionType
==
'
overweight_exception
'
)
&&
this
.
handlerParams
.
orderExceptionHandlerResult
==
'
allow_over
'
)
){
this
.
handlerParams
.
orderItemVOList
=
this
.
loopOrderItem
}
else
{
this
.
handlerParams
.
orderItemVOList
=
this
.
orderData
.
orderItemVOList
...
...
@@ -1418,14 +1437,13 @@
return
arr
}
,
//获取提交的不可出渠道异常商品清关费
getExceptionPriceList
(
type
){
getExceptionPriceList
(
type
,
index
){
let
that
=
this
that
.
loopOrderItem
=
[]
if
(
type
==
'
line_loop_exception
'
){
this
.
loopOrderItem
=
[]
that
.
orderData
.
orderItemVOList
.
map
((
v
,
i
)
=>
{
if
(
v
.
orderItemId
==
th
is
.
orderExceptionData
.
orderItemId
){
th
is
.
loopOrderItem
.
push
(
v
)
if
(
v
.
orderItemId
==
th
at
.
orderExceptionData
.
orderItemId
){
th
at
.
loopOrderItem
.
push
(
v
)
}
}
)
}
else
{
...
...
@@ -1442,6 +1460,9 @@
v
.
clearanceFreightCurrency
=
item
.
clearanceCurrencyId
v
.
clearanceFreightVolume
=
item
.
clearanceUnitId
}
if
(
item
&&
index
==
2
){
that
.
loopOrderItem
.
push
(
v
)
}
}
)
}
}
...
...
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