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
ccced454
Commit
ccced454
authored
Oct 26, 2023
by
我在何方
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://gitlab.jdshangmen.com/jiedao-app/jiedao-app-operator
into dev
parents
74222797
9f27e22a
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
499 additions
and
519 deletions
+499
-519
boxAir.js
src/api/ecw/boxAir.js
+15
-0
SidebarItem.vue
src/layout/components/Sidebar/SidebarItem.vue
+1
-1
index.vue
src/layout/components/Sidebar/index.vue
+1
-5
user.js
src/store/modules/user.js
+9
-0
dict.js
src/utils/dict.js
+1
-0
indexAir.vue
src/views/ecw/box/indexAir.vue
+9
-0
arrival.vue
src/views/ecw/box/shippingAir/nodePage/arrival.vue
+199
-138
cusClearance.vue
src/views/ecw/box/shippingAir/nodePage/cusClearance.vue
+192
-370
supplementOrder.vue
...ecw/box/shippingAir/nodePage/mergePkg/supplementOrder.vue
+3
-0
preinstall.vue
src/views/ecw/box/shippingAir/nodePage/preinstall.vue
+39
-2
startUnloading.vue
...ecw/box/shippingAir/nodePage/unloading/startUnloading.vue
+2
-2
penddingList.vue
src/views/ecw/order/penddingList.vue
+3
-0
WarehouseRecordDetail.vue
...cw/order/warehousing/components/WarehouseRecordDetail.vue
+1
-0
WarehouseRecordDetailItem.vue
...rder/warehousing/components/WarehouseRecordDetailItem.vue
+23
-0
edit.vue
src/views/ecw/productPrice/edit.vue
+1
-1
No files found.
src/api/ecw/boxAir.js
View file @
ccced454
...
...
@@ -360,4 +360,19 @@ export function updateAllOrderClearance(data) {
method
:
"
post
"
,
data
:
data
});
}
/**
* 获取线路配置
*
* @export
* @param {*} data
* @return {*}
*/
export
function
getLineInfoList
(
params
)
{
return
request
({
url
:
`/ecw/warehouse/getLineInfoList`
,
method
:
"
get
"
,
params
});
}
\ No newline at end of file
src/layout/components/Sidebar/SidebarItem.vue
View file @
ccced454
...
...
@@ -56,7 +56,7 @@ export default {
},
computed
:{
badge
(){
return
this
.
$store
.
getters
.
badgeData
[
this
.
item
.
meta
.
badgeField
]
return
this
.
$store
.
getters
.
badgeData
[
this
.
item
.
meta
?
.
badgeField
]
}
},
methods
:
{
...
...
src/layout/components/Sidebar/index.vue
View file @
ccced454
...
...
@@ -55,11 +55,7 @@ export default {
}
},
created
()
{
// 查询待出订单数量 waitingShipment
getWaitingShipmentCount
().
then
(
res
=>
{
console
.
log
(
'
getWaitingShipmentCount
'
,
res
.
data
)
this
.
$store
.
commit
(
'
SET_BADGE_DATA
'
,
{
waitingShipment
:
res
.
data
},
)
})
this
.
$store
.
dispatch
(
'
getBadgeData
'
)
}
};
</
script
>
src/store/modules/user.js
View file @
ccced454
...
...
@@ -2,6 +2,7 @@ import {login, logout, getInfo, socialLogin, socialLogin2} from '@/api/login'
import
{
getToken
,
setToken
,
removeToken
}
from
'
@/utils/auth
'
import
{
getNotReadInternalMessageTotal
,}
from
'
@/api/system/internalMessage
'
import
{
taskTodoCount
,
userMark
}
from
"
@/api/bpm/task
"
;
import
{
getWaitingShipmentCount
}
from
"
@/api/ecw/order
"
;
const
user
=
{
state
:
{
...
...
@@ -202,6 +203,14 @@ const user = {
reject
(
err
)
})
})
},
// 获取菜单角标数据,当前只有空运待出
getBadgeData
({
commit
}){
// 查询待出订单数量 waitingShipment
getWaitingShipmentCount
().
then
(
res
=>
{
console
.
log
(
'
getWaitingShipmentCount
'
,
res
.
data
)
commit
(
'
SET_BADGE_DATA
'
,
{
waitingShipment
:
res
.
data
},
)
})
}
}
}
...
...
src/utils/dict.js
View file @
ccced454
...
...
@@ -193,6 +193,7 @@ export const DICT_TYPE = {
MANUAL_EXCEPTION_TYPE
:
'
manual_exception_type
'
,
APPLY_STATUS
:
'
apply_status
'
,
//特价申请审核状态
WAREHOUSING_SPECIFICATION_TYPE
:
'
warehousing_specification_type
'
,
WAREHOUSING_RECORD_DETAIL_USAGE
:
'
warehousing_record_detail_usage
'
,
// 入仓规格类型
ECW_AUTH_TYPE
:
'
auth_type
'
,
//品牌授权
OREER_ITEM_USAGE
:
'
order_item_usage
'
,
//用途
...
...
src/views/ecw/box/indexAir.vue
View file @
ccced454
...
...
@@ -206,6 +206,7 @@ import {
dealCustomsSplitNotify
,
exportPreloadGoodsList
,
downloadReceivableList
,
getAirNoticeList
,
zipDownload
,
downloadAirReceivableList
}
from
'
@/api/ecw/box
'
import
{
getLineInfoList
}
from
'
@/api/ecw/boxAir
'
import
{
getChannelList
}
from
'
@/api/ecw/channel
'
import
{
getWarehouseList
}
from
'
@/api/ecw/warehouse
'
import
costForm
from
'
./costForm.vue
'
...
...
@@ -393,6 +394,14 @@ export default {
getboxPage
(
params
).
then
((
response
)
=>
{
this
.
list
=
response
.
data
.
list
this
.
total
=
response
.
data
.
total
// var lineParams = []
// this.list.forEach(item=>
{
// let line = lineParams.findIndex(li=>li.startWarehouseId==item.startWarehouseId&&li.destWarehouseId==item.destWarehouseId&&li.transportType==item.transportType)
// if(line == -1)
{
// lineParams.push(
{
startWarehouseId
:
item
.
startWarehouseId
,
destWarehouseId
:
item
.
destWarehouseId
,
transportType
:
item
.
transportType
}
)
//
}
//
}
)
// getLineInfoList(lineParams)
this
.
loading
=
false
}
)
}
,
...
...
src/views/ecw/box/shippingAir/nodePage/arrival.vue
View file @
ccced454
<
template
>
<div>
<el-form
ref=
"arrivalForm"
:rules=
"rules"
:model=
"airArrivalInfo"
label-width=
"120px"
>
<el-form-item
:label=
"$t('到港情况')"
prop=
"arriveType"
>
<el-form-item
:label=
"$t('到港情况')"
prop=
"arriveType"
>
<el-radio-group
v-model=
"airArrivalInfo.arriveType"
>
<el-radio
:label=
"0"
>
{{
$t
(
'
一次到港
'
)
}}
</el-radio>
<el-radio
:label=
"1"
>
{{
$t
(
'
多次到港
'
)
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
:label=
"$t('选择订单')"
prop=
"arriveOrderIdList"
v-show=
"airArrivalInfo.arriveType == 1"
>
<el-select
v-model=
"airArrivalInfo.arriveOrderIdList"
multiple
filterable
clearable
reserve-keyword
:filter-method=
"filterOrder"
:placeholder=
"$t('请输入订单号、提单号、唛头')"
@
change=
"selectOrderId"
>
<el-option
v-for=
"(item) in statusOrderList"
:key=
"item.orderId"
:label=
"item.orderNo+' '+item.arrival"
:value=
"item.orderId"
>
</el-option>
</el-select>
<span
v-for=
"order in selectOrders"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
<el-button
type=
"primary"
@
click=
"orderdialogVisible = true"
>
{{
$t
(
'
订单列表
'
)
}}
</el-button>
</el-form-item>
<el-form-item
:label=
"$t('已到港订单')"
v-show=
"airArrivalInfo.arriveType == 1"
>
<span
v-for=
"order in airArrivalInfo.arrivalOrderList"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
<span
v-for=
"order in airArrivalInfo.arrivalOrderList"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
</el-form-item>
<el-form-item
v-if=
"dtRealHeadTimeFlag||airArrivalInfo.arriveType==1"
:label=
"$t('实际二程起飞时间')"
prop=
"actSecondTime"
>
<template
slot=
"label"
slot-scope=
"scope"
>
<span
style=
"color: red;"
>
*
</span>
{{
$t
(
'
实际二程起飞时间
'
)
}}
</
template
>
<el-form-item
v-if=
"dtRealHeadTimeFlag || airArrivalInfo.arriveType == 1"
:label=
"$t('实际二程起飞时间')"
prop=
"actSecondTime"
>
<template
slot=
"label"
slot-scope=
"scope"
>
<span
style=
"color: red"
>
*
</span>
{{
$t
(
'
实际二程起飞时间
'
)
}}
</
template
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actSecondTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
<el-form-item
:label=
"$t('预计到港时间')"
prop=
"estTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.estTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
<el-form-item
:label=
"$t('实际到港时间')"
prop=
"actTime"
>
<
template
slot=
"label"
slot-scope=
"scope"
>
<span
style=
"color: red;"
>
*
</span>
{{
$t
(
'
实际到港时间
'
)
}}
</
template
>
<
template
slot=
"label"
slot-scope=
"scope"
>
<span
style=
"color: red"
>
*
</span>
{{
$t
(
'
实际到港时间
'
)
}}
</
template
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit(1)"
>
{{
$t('保存')
}}
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit(2)"
>
{{
$t('提交')
}}
</el-button>
<el-button
@
click=
"cancel"
>
{{
$t('关闭')
}}
</el-button>
<el-button
type=
"primary"
@
click=
"exceptionReg"
:disabled=
"!showMsg"
>
{{
$t('异常登记')
}}
</el-button>
<el-button
type=
"primary"
@
click=
"onSubmit(1)"
>
{{
$t('保存')
}}
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit(2)"
>
{{
$t('提交')
}}
</el-button>
<el-button
@
click=
"cancel"
>
{{
$t('关闭')
}}
</el-button>
<el-button
type=
"primary"
@
click=
"exceptionReg"
:disabled=
"!showMsg"
>
{{
$t('异常登记')
}}
</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog"
:title=
"$t('票异常')"
:visible.sync=
"dialogVisible"
width=
"700px"
:modal-append-to-body=
false
append-to-body
destroy-on-close
>
<el-dialog
custom-class=
"shipping-dialog"
:title=
"$t('票异常')"
:visible.sync=
"dialogVisible"
width=
"700px"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<regError
@
closeDialog=
"regCloseDialog"
v-bind=
"$attrs"
/>
</el-dialog>
<!-- 订单列表 -->
<el-dialog
width=
"70%"
:title=
"$t('选择订单')"
:visible.sync=
"orderdialogVisible"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"7"
>
{{ $t('关键字:') }}
<el-input
style=
"width: 300px"
v-model=
"searchForm.orderKeyword"
:placeholder=
"$t('请输入订单号、提单号、唛头')"
/>
</el-col>
<el-col
:span=
"5"
>
{{ $t("到港状态") }}
<el-select
v-model=
"searchForm.orderPortStatus"
>
<el-option
:value=
"0"
:label=
"$t('未到港')"
/>
<el-option
:value=
"1"
:label=
"$t('已到港')"
/>
</el-select>
</el-col>
<el-col
:span=
"4"
>
<el-button
type=
"primary"
@
click=
"searchOrderList"
>
{{ $t('查询') }}
</el-button>
<el-button
type=
"primary"
@
click=
"reloafSearch"
>
{{ $t('重置') }}
</el-button>
</el-col>
</el-row>
<div
style=
"margin-top: 10px"
>
<el-button
type=
"primary"
@
click=
"multipleSelect"
>
{{ $t('批量选择') }}
</el-button>
</div>
<el-table
style=
"margin-top: 10px"
:data=
"statusOrderList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
:label=
"$t('序号')"
type=
"index"
width=
"50"
>
</el-table-column>
<el-table-column
:label=
"$t('订单号')"
prop=
"orderNo"
/>
<el-table-column
:label=
"$t('唛头')"
prop=
"marks"
/>
<el-table-column
:label=
"$t('提单号')"
prop=
"tidanNo"
/>
<el-table-column
width=
"150"
:label=
"$t('总箱数/入仓箱数')"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalNum
}}
/
{{
scope
.
row
.
sumNum
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('体积/重量')"
prop=
""
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
sumVolume
}}
/
{{
scope
.
row
.
sumWeight
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('到港状态')"
prop=
"arrival"
/>
<el-table-column
:label=
"$t('控货')"
>
<
template
slot-scope=
"scope"
>
{{
cargoControlStatus
[
scope
.
row
.
cargoControlStatus
]
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('订单状态')"
prop=
"statusMsg"
/>
<el-table-column
:label=
"$t('操作')"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"primary"
@
click=
"selectOrder(scope.row)"
>
{{
$t
(
'
选择
'
)
}}
</el-button>
</
template
>
</el-table-column>
</el-table>
</el-dialog>
</div>
</template>
<
script
>
import
regError
from
"
../../regError
"
;
import
dayjs
from
"
dayjs
"
;
import
{
arrivalCreate
}
from
"
@/api/ecw/boxSeaAir
"
;
import
{
shipmentOrderList
}
from
"
@/api/ecw/boxAir
"
;
import
{
formatDateStr
,
serviceMsg
,
formatDate
}
from
"
../utils
"
;
import
regError
from
'
../../regError
'
import
dayjs
from
'
dayjs
'
import
{
arrivalCreate
}
from
'
@/api/ecw/boxSeaAir
'
import
{
shipmentOrderList
}
from
'
@/api/ecw/boxAir
'
import
{
formatDateStr
,
serviceMsg
,
formatDate
}
from
'
../utils
'
/**
* 到港
*/
export
default
{
name
:
"
arrival
"
,
name
:
'
arrival
'
,
inheritAttrs
:
false
,
components
:
{
regError
,
regError
},
data
()
{
var
validateActSecondTime
=
(
rule
,
value
,
callback
)
=>
{
if
(
!
value
&&
(
this
.
airArrivalInfo
.
arriveType
==
0
||
(
this
.
airArrivalInfo
.
arriveType
==
1
&&
this
.
airArrivalInfo
.
arriveOrderIdList
.
length
>
0
)))
{
callback
(
new
Error
(
"
必填
"
));
if
(
!
value
&&
(
this
.
airArrivalInfo
.
arriveType
==
0
||
(
this
.
airArrivalInfo
.
arriveType
==
1
&&
this
.
airArrivalInfo
.
arriveOrderIdList
.
length
>
0
)))
{
callback
(
new
Error
(
this
.
$t
(
'
必填
'
)))
}
callback
()
;
}
;
callback
()
}
var
validateActTime
=
(
rule
,
value
,
callback
)
=>
{
if
(
!
value
&&
(
this
.
airArrivalInfo
.
arriveType
==
0
||
(
this
.
airArrivalInfo
.
arriveType
==
1
&&
this
.
airArrivalInfo
.
arriveOrderIdList
.
length
>
0
)))
{
callback
(
new
Error
(
"
必填
"
));
if
(
!
value
&&
(
this
.
airArrivalInfo
.
arriveType
==
0
||
(
this
.
airArrivalInfo
.
arriveType
==
1
&&
this
.
airArrivalInfo
.
arriveOrderIdList
.
length
>
0
)))
{
callback
(
new
Error
(
this
.
$t
(
'
必填
'
)))
}
callback
()
;
}
;
callback
()
}
return
{
// 到港对象
airArrivalInfo
:
{},
// 校验
rules
:
{
actSecondTime
:
[
{
validator
:
validateActSecondTime
,
trigger
:
"
change
"
},
],
actTime
:
[
{
validator
:
validateActTime
,
trigger
:
"
change
"
},
]
actSecondTime
:
[{
validator
:
validateActSecondTime
,
trigger
:
'
change
'
}],
actTime
:
[{
validator
:
validateActTime
,
trigger
:
'
change
'
}]
},
// 弹窗配置
dialogVisible
:
false
,
// 提示消息
showMsg
:
false
,
inspectionTimeArrival
:
this
.
getDictDatas
(
this
.
DICT_TYPE
.
BOX_INSPECTION_TIME_ARRIVAL
)[
0
].
value
,
inspectionTimeArrival
:
this
.
getDictDatas
(
this
.
DICT_TYPE
.
BOX_INSPECTION_TIME_ARRIVAL
)[
0
].
value
,
dtRealHeadTimeFlag
:
false
,
orderList
:
[],
orderListFilter
:
[],
arrivalOrderList
:
[]
};
arrivalOrderList
:
[],
orderdialogVisible
:
false
,
selectOrders
:
[],
multipleSelectOrder
:
[],
cargoControlStatus
:
[
this
.
$t
(
'
控货中
'
),
this
.
$t
(
'
已放完货
'
),
this
.
$t
(
'
部分控货
'
)],
searchForm
:
{
orderKeyword
:
null
,
orderPortStatus
:
null
},
searchFormFilter
:
{}
}
},
created
()
{
const
voName
=
this
.
$attrs
.
currNode
.
voName
;
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
voName
]
};
oldData
=
formatDateStr
(
oldData
,
[
"
actSecondTime
"
,
"
estTime
"
,
"
actTime
"
],
"
YYYY-MM-DD HH:mm:ss
"
);
this
.
airArrivalInfo
=
oldData
;
if
(
this
.
$attrs
.
shipmentObj
[
'
bookAirInfo
'
].
voyage
&&
this
.
$attrs
.
shipmentObj
[
'
bookAirInfo
'
].
voyage
==
2
){
const
voName
=
this
.
$attrs
.
currNode
.
voName
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
voName
]
}
oldData
=
formatDateStr
(
oldData
,
[
'
actSecondTime
'
,
'
estTime
'
,
'
actTime
'
],
'
YYYY-MM-DD HH:mm:ss
'
)
this
.
airArrivalInfo
=
oldData
if
(
this
.
$attrs
.
shipmentObj
[
'
bookAirInfo
'
].
voyage
&&
this
.
$attrs
.
shipmentObj
[
'
bookAirInfo
'
].
voyage
==
2
)
{
this
.
dtRealHeadTimeFlag
=
true
}
if
(
!
this
.
airArrivalInfo
.
arriveType
)
this
.
$set
(
this
.
airArrivalInfo
,
'
arriveType
'
,
0
)
this
.
$set
(
this
.
airArrivalInfo
,
'
arriveOrderIdList
'
,
[])
this
.
arrivalOrderList
=
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
?
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
:
[]
shipmentOrderList
(
this
.
$attrs
.
shipmentObj
.
id
).
then
(
r
=>
{
if
(
!
this
.
airArrivalInfo
.
arriveType
)
this
.
$set
(
this
.
airArrivalInfo
,
'
arriveType
'
,
0
)
this
.
$set
(
this
.
airArrivalInfo
,
'
arriveOrderIdList
'
,
[])
this
.
arrivalOrderList
=
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
?
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
:
[]
shipmentOrderList
(
this
.
$attrs
.
shipmentObj
.
id
).
then
(
(
r
)
=>
{
this
.
orderList
=
r
.
data
this
.
orderListFilter
=
r
.
data
})
},
computed
:
{
statusOrderList
(){
statusOrderList
()
{
let
data
=
[]
this
.
orderList
Filter
.
forEach
(
item
=>
{
this
.
orderList
.
forEach
((
item
)
=>
{
let
json
=
{
orderId
:
item
.
orderId
,
orderNo
:
item
.
orderNo
,
tidanNo
:
item
.
tidanNo
,
marks
:
item
.
marks
,
}
let
index
=
this
.
arrivalOrderList
?
this
.
arrivalOrderList
.
findIndex
(
p
=>
p
.
orderId
==
item
.
orderId
):
-
1
if
(
index
!=
-
1
){
orderId
:
item
.
orderId
,
orderNo
:
item
.
orderNo
,
tidanNo
:
item
.
tidanNo
,
marks
:
item
.
marks
,
sumNum
:
item
.
sumNum
,
totalNum
:
item
.
totalNum
,
sumVolume
:
item
.
sumVolume
,
sumWeight
:
item
.
sumWeight
,
statusMsg
:
item
.
statusMsg
,
cargoControlStatus
:
item
.
cargoControlStatus
}
let
index
=
this
.
arrivalOrderList
?
this
.
arrivalOrderList
.
findIndex
((
p
)
=>
p
.
orderId
==
item
.
orderId
)
:
-
1
if
(
index
!=
-
1
)
{
json
.
arrival
=
this
.
$t
(
'
已到港
'
)
}
else
{
json
.
arrivalValue
=
1
;
}
else
{
json
.
arrival
=
this
.
$t
(
'
未到港
'
)
json
.
arrivalValue
=
0
;
}
data
.
push
(
json
)
})
if
(
this
.
searchFormFilter
.
orderKeyword
&&
this
.
searchFormFilter
.
orderKeyword
!=
''
)
{
data
=
data
.
filter
((
item
)
=>
{
return
(
item
.
orderNo
&&
item
.
orderNo
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
||
(
item
.
tidanNo
&&
item
.
tidanNo
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
||
(
item
.
marks
&&
item
.
marks
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
})
}
if
(
this
.
searchFormFilter
.
orderPortStatus
!=
null
)
{
data
=
data
.
filter
((
item
)
=>
{
return
item
.
arrivalValue
==
this
.
searchFormFilter
.
orderPortStatus
})
}
return
data
}
},
watch
:
{
// 实际二程起飞时间
"
airArrivalInfo.actSecondTime
"
(
val
)
{
this
.
compareDate
(
this
.
getHeadTravelTime
(),
val
)
;
'
airArrivalInfo.actSecondTime
'
(
val
)
{
this
.
compareDate
(
this
.
getHeadTravelTime
(),
val
)
},
"
airArrivalInfo.estTime
"
(
val
)
{
this
.
compareDate
(
this
.
airArrivalInfo
.
actTime
,
val
)
;
'
airArrivalInfo.estTime
'
(
val
)
{
this
.
compareDate
(
this
.
airArrivalInfo
.
actTime
,
val
)
},
"
airArrivalInfo.actTime
"
(
val
)
{
this
.
compareDate
(
this
.
airArrivalInfo
.
estTime
,
val
)
;
'
airArrivalInfo.actTime
'
(
val
)
{
this
.
compareDate
(
this
.
airArrivalInfo
.
estTime
,
val
)
},
"
airArrivalInfo.arriveType
"
(
val
)
{
if
(
val
==
1
)
{
'
airArrivalInfo.arriveType
'
(
val
)
{
if
(
val
==
1
)
{
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
null
)
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
null
)
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
null
)
}
else
{
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
this
.
$attrs
.
currNode
.
voName
]
};
oldData
=
formatDateStr
(
oldData
,
[
"
actSecondTime
"
,
"
estTime
"
,
"
actTime
"
],
"
YYYY-MM-DD HH:mm:ss
"
);
}
else
{
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
this
.
$attrs
.
currNode
.
voName
]
}
oldData
=
formatDateStr
(
oldData
,
[
'
actSecondTime
'
,
'
estTime
'
,
'
actTime
'
],
'
YYYY-MM-DD HH:mm:ss
'
)
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
oldData
.
actSecondTime
)
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
oldData
.
estTime
)
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
oldData
.
actTime
)
...
...
@@ -190,18 +232,39 @@ export default {
}
},
methods
:
{
filterOrder
(
val
){
if
(
val
!=
''
){
this
.
orderListFilter
=
this
.
orderList
.
filter
(
item
=>
{
return
item
.
orderNo
&&
item
.
orderNo
.
indexOf
(
val
)
>
-
1
||
item
.
tidanNo
&&
item
.
tidanNo
.
indexOf
(
val
)
>
-
1
||
item
.
marks
&&
item
.
marks
.
indexOf
(
val
)
>
-
1
})
}
else
{
this
.
orderListFilter
=
this
.
orderList
searchOrderList
()
{
this
.
searchFormFilter
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
searchForm
))
},
reloafSearch
()
{
this
.
searchForm
=
{}
this
.
searchOrderList
()
},
selectOrder
(
val
)
{
this
.
selectOrders
=
[]
this
.
selectOrders
.
push
(
val
)
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
val
.
orderId
)
if
(
arr
)
{
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
formatDate
(
arr
.
actSecondTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
formatDate
(
arr
.
estTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
formatDate
(
arr
.
actTime
))
}
this
.
orderdialogVisible
=
false
this
.
airArrivalInfo
.
arriveOrderIdList
.
push
(
val
.
orderId
)
},
handleSelectionChange
(
val
)
{
this
.
multipleSelectOrder
=
val
},
selectOrderId
(
val
)
{
if
(
val
.
length
==
1
)
{
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
val
[
0
])
// 批量选择
multipleSelect
()
{
if
(
this
.
multipleSelectOrder
.
length
==
0
)
{
this
.
$message
.
error
(
this
.
$t
(
'
请先选择订单
'
))
return
}
this
.
selectOrders
=
[]
this
.
selectOrders
=
this
.
multipleSelectOrder
if
(
this
.
multipleSelectOrder
.
length
==
1
)
{
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
this
.
multipleSelectOrder
[
0
].
orderId
)
if
(
arr
)
{
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
formatDate
(
arr
.
actSecondTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
formatDate
(
arr
.
estTime
))
...
...
@@ -212,73 +275,71 @@ export default {
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
null
)
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
null
)
}
this
.
orderdialogVisible
=
false
this
.
airArrivalInfo
.
arriveOrderIdList
=
this
.
multipleSelectOrder
.
map
((
item
)
=>
item
.
orderId
)
},
regCloseDialog
(
type
)
{
this
.
dialogVisible
=
false
;
if
(
type
===
"
error
"
)
{
this
.
$emit
(
"
getBoxInfo
"
);
this
.
dialogVisible
=
false
if
(
type
===
'
error
'
)
{
this
.
$emit
(
'
getBoxInfo
'
)
}
},
// 获取实际二程起飞时间
getHeadTravelTime
()
{
const
{
shippingInfo
}
=
this
.
$attrs
.
shipmentObj
;
const
{
shippingInfo
}
=
this
.
$attrs
.
shipmentObj
if
(
shippingInfo
)
{
return
dayjs
(
shippingInfo
.
realHeadTravelTime
).
format
(
"
YYYY-MM-DD HH:mm:ss
"
);
return
dayjs
(
shippingInfo
.
realHeadTravelTime
).
format
(
'
YYYY-MM-DD HH:mm:ss
'
)
}
return
null
;
return
null
},
// 获取预计到港时间
getExpectedTime
()
{
const
{
shippingInfo
}
=
this
.
$attrs
.
shipmentObj
;
const
{
shippingInfo
}
=
this
.
$attrs
.
shipmentObj
if
(
shippingInfo
)
{
return
dayjs
(
shippingInfo
.
dtEstArrivalTime
).
format
(
"
YYYY-MM-DD HH:mm:ss
"
);
return
dayjs
(
shippingInfo
.
dtEstArrivalTime
).
format
(
'
YYYY-MM-DD HH:mm:ss
'
)
}
return
null
;
return
null
},
// 时间比较
compareDate
(
expectedTime
,
apConfirmTime
)
{
this
.
showMsg
=
false
;
this
.
showMsg
=
false
let
date1
=
null
,
date2
=
null
;
if
(
expectedTime
)
date1
=
dayjs
(
expectedTime
)
;
if
(
apConfirmTime
)
date2
=
dayjs
(
apConfirmTime
)
;
date2
=
null
if
(
expectedTime
)
date1
=
dayjs
(
expectedTime
)
if
(
apConfirmTime
)
date2
=
dayjs
(
apConfirmTime
)
if
(
date1
&&
date2
)
{
const
days
=
date2
.
diff
(
date1
,
"
day
"
);
const
days
=
date2
.
diff
(
date1
,
'
day
'
)
if
(
days
>
this
.
inspectionTimeArrival
)
{
this
.
showMsg
=
true
;
this
.
showMsg
=
true
}
}
},
// 异常登记
exceptionReg
()
{
this
.
dialogVisible
=
true
;
this
.
dialogVisible
=
true
},
/** 提交 */
onSubmit
(
operateType
)
{
this
.
$refs
[
"
arrivalForm
"
].
validate
((
valid
)
=>
{
this
.
$refs
[
'
arrivalForm
'
].
validate
((
valid
)
=>
{
if
(
valid
)
{
arrivalCreate
({
...
this
.
airArrivalInfo
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
operateType
,
operateType
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
(
"
submit
"
);
})
;
})
;
this
.
cancel
(
'
submit
'
)
})
})
}
})
;
})
},
/** 取消 */
cancel
(
type
)
{
this
.
$emit
(
"
closeDialog
"
,
type
);
}
,
}
,
}
;
this
.
$emit
(
'
closeDialog
'
,
type
)
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/ecw/box/shippingAir/nodePage/cusClearance.vue
View file @
ccced454
<
template
>
<div>
<el-form
ref=
"cusClearanceForm"
:rules=
"rules"
:model=
"cusClearanceObj"
label-width=
"160px"
>
<el-form
ref=
"cusClearanceForm"
:rules=
"rules"
:model=
"cusClearanceObj"
label-width=
"160px"
>
<el-form-item
:label=
"$t('清关情况')"
prop=
"arriveType"
>
<el-radio-group
v-model=
"cusClearanceObj.clearanceType"
>
<el-radio
:label=
"0"
>
{{
$t
(
"
一次清关
"
)
}}
</el-radio>
<el-radio
:label=
"1"
>
{{
$t
(
"
多次清关
"
)
}}
</el-radio>
<el-radio
:label=
"0"
>
{{
$t
(
'
一次清关
'
)
}}
</el-radio>
<el-radio
:label=
"1"
>
{{
$t
(
'
多次清关
'
)
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
:label=
"$t('选择订单')"
prop=
"clearanceOrderIdList"
v-show=
"cusClearanceObj.clearanceType == 1"
>
<span
v-for=
"order in selectOrders"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
<el-button
type=
"primary"
@
click=
"orderdialogVisible = true"
>
{{
$t
(
"
订单列表
"
)
}}
</el-button>
<el-form-item
:label=
"$t('选择订单')"
prop=
"clearanceOrderIdList"
v-show=
"cusClearanceObj.clearanceType == 1"
>
<span
v-for=
"order in selectOrders"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
<el-button
type=
"primary"
@
click=
"orderdialogVisible = true"
>
{{
$t
(
'
订单列表
'
)
}}
</el-button>
</el-form-item>
<el-form-item
:label=
"$t('已清关订单')"
v-show=
"cusClearanceObj.clearanceType == 1"
>
<span
v-for=
"order in cusClearanceObj.clearanceOrderList"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
<el-form-item
:label=
"$t('已清关订单')"
v-show=
"cusClearanceObj.clearanceType == 1"
>
<span
v-for=
"order in cusClearanceObj.clearanceOrderList"
:key=
"order.id"
>
{{
order
.
orderNo
}}
</span>
</el-form-item>
<div>
<el-form
ref=
"airArrivalForm"
:rules=
"airArrivalrules"
:model=
"airArrivalInfo"
label-width=
"160px"
>
<el-form
ref=
"airArrivalForm"
:rules=
"airArrivalrules"
:model=
"airArrivalInfo"
label-width=
"160px"
>
<el-form-item
:label=
"$t('实际二程起飞时间')"
prop=
"actSecondTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actSecondTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actSecondTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
<el-form-item
:label=
"$t('预计到港时间')"
prop=
"estTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.estTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.estTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
<el-form-item
:label=
"$t('实际到港时间')"
prop=
"actTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"airArrivalInfo.actTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-form>
</div>
<el-form-item
:label=
"$t('预计清关时间')"
prop=
"clEstTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"cusClearanceObj.clEstTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"cusClearanceObj.clEstTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
</el-form-item>
<el-form-item
:label=
"$t('清关时间')"
prop=
"clClearTime"
>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"cusClearanceObj.clClearTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<el-date-picker
type=
"datetime"
:placeholder=
"$t('请选择日期')"
v-model=
"cusClearanceObj.clClearTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
></el-date-picker>
<p
class=
"message-area"
v-show=
"showMsg"
>
{{
$t
(
"
清关时间与预计时间不符,如有异常请登记
"
)
}}
{{
$t
(
'
清关时间与预计时间不符,如有异常请登记
'
)
}}
</p>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"onSubmit(1)"
>
{{
$t
(
"
保存
"
)
}}
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit(2)"
>
{{
$t
(
"
提交
"
)
}}
</el-button>
<el-button
@
click=
"cancel"
>
{{
$t
(
"
关闭
"
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"exceptionReg"
:disabled=
"!showMsg"
>
{{
$t
(
"
异常登记
"
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"onSubmit(1)"
>
{{
$t
(
'
保存
'
)
}}
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit(2)"
>
{{
$t
(
'
提交
'
)
}}
</el-button>
<el-button
@
click=
"cancel"
>
{{
$t
(
'
关闭
'
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"exceptionReg"
:disabled=
"!showMsg"
>
{{
$t
(
'
异常登记
'
)
}}
</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog"
:title=
"$t('票异常')"
:visible.sync=
"dialogVisible"
width=
"700px"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<el-dialog
custom-class=
"shipping-dialog"
:title=
"$t('票异常')"
:visible.sync=
"dialogVisible"
width=
"700px"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<regError
@
closeDialog=
"dialogVisible = false"
v-bind=
"$attrs"
/>
</el-dialog>
<!-- 订单列表 -->
<el-dialog
:fullscreen=
"true"
:title=
"$t('选择订单')"
:visible.sync=
"orderdialogVisible"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<el-dialog
width=
"70%"
:title=
"$t('选择订单')"
:visible.sync=
"orderdialogVisible"
:modal-append-to-body=
"false"
append-to-body
destroy-on-close
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"7"
>
{{
$t
(
"
关键字:
"
)
}}
<el-input
style=
"width: 300px"
v-model=
"orderKeyword"
:placeholder=
"$t('请输入订单号、提单号、唛头')"
/>
{{
$t
(
'
关键字:
'
)
}}
<el-input
style=
"width: 300px"
v-model=
"searchForm.orderKeyword"
:placeholder=
"$t('请输入订单号、提单号、唛头')"
/>
</el-col>
<el-col
:span=
"
7
"
>
{{
$t
(
"
到港状态
"
)
}}
<el-select
v-model=
"orderPortStatus"
>
<el-col
:span=
"
5
"
>
{{
$t
(
'
到港状态
'
)
}}
<el-select
v-model=
"
searchForm.
orderPortStatus"
>
<el-option
:value=
"0"
:label=
"$t('未到港')"
/>
<el-option
:value=
"1"
:label=
"$t('已到港')"
/>
</el-select>
</el-col>
<el-col
:span=
"
7
"
>
{{
$t
(
"
清关状态
"
)
}}
<el-select
v-model=
"orderCustomsClearanceStatus"
>
<el-col
:span=
"
5
"
>
{{
$t
(
'
清关状态
'
)
}}
<el-select
v-model=
"
searchForm.
orderCustomsClearanceStatus"
>
<el-option
:value=
"0"
:label=
"$t('未清关')"
/>
<el-option
:value=
"1"
:label=
"$t('已清关')"
/>
</el-select>
</el-col>
<el-col
:span=
"3"
>
<el-button
type=
"primary"
@
click=
"searchOrderList"
>
{{
$t
(
"
查询
"
)
}}
</el-button
>
<el-col
:span=
"4"
>
<el-button
type=
"primary"
@
click=
"searchOrderList"
>
{{
$t
(
'
查询
'
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"reloafSearch"
>
{{
$t
(
'
重置
'
)
}}
</el-button>
</el-col>
</el-row>
<div
style=
"margin-top: 10px"
>
<el-button
type=
"primary"
@
click=
"multipleSelect"
>
{{
$t
(
"
批量选择
"
)
}}
{{
$t
(
'
批量选择
'
)
}}
</el-button>
</div>
<el-table
style=
"margin-top: 10px"
:data=
"statusOrderList"
@
selection-change=
"handleSelectionChange"
>
<el-table
style=
"margin-top: 10px"
:data=
"statusOrderList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
:label=
"$t('序号')"
type=
"index"
width=
"50"
>
</el-table-column>
<el-table-column
:label=
"$t('序号')"
type=
"index"
width=
"50"
>
</el-table-column>
<el-table-column
:label=
"$t('订单号')"
prop=
"orderNo"
/>
<el-table-column
:label=
"$t('唛头')"
prop=
"marks"
/>
<el-table-column
:label=
"$t('提单号')"
prop=
"tidanNo"
/>
<el-table-column
width=
"150"
:label=
"$t('总箱数/入仓箱数')"
prop=
""
/>
<el-table-column
:label=
"$t('体积/重量')"
prop=
""
/>
<el-table-column
:label=
"$t('清关状态')"
prop=
"clear"
/>
<el-table-column
width=
"150"
:label=
"$t('总箱数/入仓箱数')"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalNum
}}
/
{{
scope
.
row
.
sumNum
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('体积/重量')"
prop=
""
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
sumVolume
}}
/
{{
scope
.
row
.
sumWeight
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('到港状态')"
prop=
"arrival"
/>
<el-table-column
:label=
"$t('控货')"
prop=
""
/>
<el-table-column
:label=
"$t('订单状态')"
prop=
""
/>
<el-table-column
:label=
"$t('到港状态')"
prop=
"clear"
/>
<el-table-column
:label=
"$t('控货')"
>
<
template
slot-scope=
"scope"
>
{{
cargoControlStatus
[
scope
.
row
.
cargoControlStatus
]
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('订单状态')"
prop=
"statusMsg"
/>
<el-table-column
:label=
"$t('操作')"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"primary"
@
click=
"selectOrder(scope.row)"
>
{{
$t
(
"
选择
"
)
}}
</el-button
>
<el-button
size=
"mini"
type=
"primary"
@
click=
"selectOrder(scope.row)"
>
{{
$t
(
'
选择
'
)
}}
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -191,22 +113,21 @@
</template>
<
script
>
import
regError
from
"
../../regError
"
;
import
dayjs
from
"
dayjs
"
;
import
{
clearanceCreate
}
from
"
@/api/ecw/boxSea
"
;
import
{
shipmentOrderList
}
from
"
@/api/ecw/boxAir
"
;
import
{
formatDateStr
,
serviceMsg
,
formatDate
}
from
"
../utils
"
;
import
{
updateOrderArrival
}
from
"
@/api/ecw/boxAir
"
;
import
search
from
"
bpmn-js/lib/features/search
"
;
import
regError
from
'
../../regError
'
import
dayjs
from
'
dayjs
'
import
{
clearanceCreate
}
from
'
@/api/ecw/boxSea
'
import
{
shipmentOrderList
}
from
'
@/api/ecw/boxAir
'
import
{
formatDateStr
,
serviceMsg
,
formatDate
}
from
'
../utils
'
import
{
updateOrderArrival
}
from
'
@/api/ecw/boxAir
'
/**
* 清关
*/
export
default
{
name
:
"
cusClearance
"
,
name
:
'
cusClearance
'
,
inheritAttrs
:
false
,
components
:
{
regError
,
regError
},
data
()
{
return
{
...
...
@@ -214,20 +135,12 @@ export default {
cusClearanceObj
:
{},
// 校验
rules
:
{
clEstTime
:
[
{
required
:
true
,
message
:
this
.
$t
(
"
必填
"
),
trigger
:
"
change
"
},
],
clClearTime
:
[
{
required
:
true
,
message
:
this
.
$t
(
"
必填
"
),
trigger
:
"
change
"
},
],
clEstTime
:
[{
required
:
true
,
message
:
this
.
$t
(
'
必填
'
),
trigger
:
'
change
'
}],
clClearTime
:
[{
required
:
true
,
message
:
this
.
$t
(
'
必填
'
),
trigger
:
'
change
'
}]
},
airArrivalrules
:
{
actSecondTime
:
[
{
required
:
true
,
message
:
this
.
$t
(
"
必填
"
),
trigger
:
"
change
"
},
],
actTime
:
[
{
required
:
true
,
message
:
this
.
$t
(
"
必填
"
),
trigger
:
"
change
"
},
],
actSecondTime
:
[{
required
:
true
,
message
:
this
.
$t
(
'
必填
'
),
trigger
:
'
change
'
}],
actTime
:
[{
required
:
true
,
message
:
this
.
$t
(
'
必填
'
),
trigger
:
'
change
'
}]
},
// 弹窗配置
dialogVisible
:
false
,
...
...
@@ -240,320 +153,229 @@ export default {
orderdialogVisible
:
false
,
selectOrders
:
[],
multipleSelectOrder
:
[],
orderKeyword
:
null
,
orderPortStatus
:
null
,
orderCustomsClearanceStatus
:
null
,
};
cargoControlStatus
:
[
this
.
$t
(
'
控货中
'
),
this
.
$t
(
'
已放完货
'
),
this
.
$t
(
'
部分控货
'
)],
searchForm
:
{
orderKeyword
:
null
,
orderPortStatus
:
null
,
orderCustomsClearanceStatus
:
null
},
searchFormFilter
:
{}
}
},
created
()
{
const
voName
=
this
.
$attrs
.
currNode
.
voName
;
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
voName
]
};
oldData
=
formatDateStr
(
oldData
,
[
"
clEstTime
"
]);
oldData
=
formatDateStr
(
oldData
,
[
"
clClearTime
"
],
"
YYYY-MM-DD HH:mm:ss
"
);
this
.
cusClearanceObj
=
oldData
;
if
(
!
this
.
cusClearanceObj
.
clearanceType
)
this
.
$set
(
this
.
cusClearanceObj
,
"
clearanceType
"
,
0
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clearanceOrderIdList
"
,
[]);
if
(
typeof
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
?.
arrivalOrderList
!=
"
undefined
"
&&
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
)
this
.
arrivalOrderList
=
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
;
if
(
typeof
this
.
$attrs
.
shipmentObj
.
clearanceInfo
?.
clearanceOrderList
!=
"
undefined
"
&&
this
.
$attrs
.
shipmentObj
.
clearanceInfo
.
clearanceOrderList
)
this
.
clearanceOrderList
=
this
.
$attrs
.
shipmentObj
.
clearanceInfo
.
clearanceOrderList
;
const
voName
=
this
.
$attrs
.
currNode
.
voName
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
voName
]
}
oldData
=
formatDateStr
(
oldData
,
[
'
clEstTime
'
])
oldData
=
formatDateStr
(
oldData
,
[
'
clClearTime
'
],
'
YYYY-MM-DD HH:mm:ss
'
)
this
.
cusClearanceObj
=
oldData
if
(
!
this
.
cusClearanceObj
.
clearanceType
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clearanceType
'
,
0
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clearanceOrderIdList
'
,
[])
if
(
typeof
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
?.
arrivalOrderList
!=
'
undefined
'
&&
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
)
this
.
arrivalOrderList
=
this
.
$attrs
.
shipmentObj
.
airArrivalInfo
.
arrivalOrderList
if
(
typeof
this
.
$attrs
.
shipmentObj
.
clearanceInfo
?.
clearanceOrderList
!=
'
undefined
'
&&
this
.
$attrs
.
shipmentObj
.
clearanceInfo
.
clearanceOrderList
)
this
.
clearanceOrderList
=
this
.
$attrs
.
shipmentObj
.
clearanceInfo
.
clearanceOrderList
shipmentOrderList
(
this
.
$attrs
.
shipmentObj
.
id
).
then
((
r
)
=>
{
this
.
orderList
=
r
.
data
;
})
;
this
.
orderList
=
r
.
data
})
},
watch
:
{
// 预计清关时间
"
cusClearanceObj.clEstTime
"
(
val
)
{
this
.
compareDate
(
val
,
this
.
cusClearanceObj
.
clClearTime
)
;
'
cusClearanceObj.clEstTime
'
(
val
)
{
this
.
compareDate
(
val
,
this
.
cusClearanceObj
.
clClearTime
)
},
// 清关时间
"
cusClearanceObj.clClearTime
"
(
val
)
{
this
.
compareDate
(
this
.
cusClearanceObj
.
clEstTime
,
val
)
;
'
cusClearanceObj.clClearTime
'
(
val
)
{
this
.
compareDate
(
this
.
cusClearanceObj
.
clEstTime
,
val
)
},
"
cusClearanceObj.clearanceType
"
(
val
)
{
'
cusClearanceObj.clearanceType
'
(
val
)
{
if
(
val
==
1
)
{
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
'
clEstTime
'
,
null
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clClearTime
'
,
null
)
}
else
{
let
oldData
=
{
...
this
.
$attrs
.
shipmentObj
[
this
.
$attrs
.
currNode
.
voName
],
};
oldData
=
formatDateStr
(
oldData
,
[
"
clEstTime
"
,
"
clClearTime
"
],
"
YYYY-MM-DD HH:mm:ss
"
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
oldData
.
clClearTime
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
oldData
.
clEstTime
);
...
this
.
$attrs
.
shipmentObj
[
this
.
$attrs
.
currNode
.
voName
]
}
oldData
=
formatDateStr
(
oldData
,
[
'
clEstTime
'
,
'
clClearTime
'
],
'
YYYY-MM-DD HH:mm:ss
'
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clClearTime
'
,
oldData
.
clClearTime
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clEstTime
'
,
oldData
.
clEstTime
)
}
}
,
}
},
computed
:
{
statusOrderList
()
{
let
data
=
[]
;
let
data
=
[]
this
.
orderList
.
forEach
((
item
)
=>
{
let
json
=
{
orderId
:
item
.
orderId
,
orderNo
:
item
.
orderNo
,
tidanNo
:
item
.
tidanNo
,
marks
:
item
.
marks
,
};
let
clearindex
=
this
.
cusClearanceObj
.
clearanceOrderList
?
this
.
cusClearanceObj
.
clearanceOrderList
.
findIndex
(
(
p
)
=>
p
.
orderId
==
item
.
orderId
)
:
-
1
;
sumNum
:
item
.
sumNum
,
totalNum
:
item
.
totalNum
,
sumVolume
:
item
.
sumVolume
,
sumWeight
:
item
.
sumWeight
,
statusMsg
:
item
.
statusMsg
,
cargoControlStatus
:
item
.
cargoControlStatus
}
let
clearindex
=
this
.
cusClearanceObj
.
clearanceOrderList
?
this
.
cusClearanceObj
.
clearanceOrderList
.
findIndex
((
p
)
=>
p
.
orderId
==
item
.
orderId
)
:
-
1
if
(
clearindex
!=
-
1
)
{
json
.
clear
=
this
.
$t
(
"
已清关
"
);
json
.
clearValue
=
1
;
json
.
clear
=
this
.
$t
(
'
已清关
'
)
json
.
clearValue
=
1
}
else
{
json
.
clear
=
this
.
$t
(
"
未清关
"
);
json
.
clearValue
=
0
;
json
.
clear
=
this
.
$t
(
'
未清关
'
)
json
.
clearValue
=
0
}
let
arrivalindex
=
this
.
arrivalOrderList
?
this
.
arrivalOrderList
.
findIndex
((
p
)
=>
p
.
orderId
==
item
.
orderId
)
:
-
1
;
let
arrivalindex
=
this
.
arrivalOrderList
?
this
.
arrivalOrderList
.
findIndex
((
p
)
=>
p
.
orderId
==
item
.
orderId
)
:
-
1
if
(
arrivalindex
!=
-
1
)
{
json
.
arrival
=
this
.
$t
(
"
已到港
"
);
json
.
arrivalValue
=
1
;
json
.
arrival
=
this
.
$t
(
'
已到港
'
)
json
.
arrivalValue
=
1
}
else
{
json
.
arrival
=
this
.
$t
(
"
未到港
"
);
json
.
arrivalValue
=
0
;
json
.
arrival
=
this
.
$t
(
'
未到港
'
)
json
.
arrivalValue
=
0
}
data
.
push
(
json
);
});
return
data
;
},
data
.
push
(
json
)
})
if
(
this
.
searchFormFilter
.
orderKeyword
&&
this
.
searchFormFilter
.
orderKeyword
!=
''
)
{
data
=
data
.
filter
((
item
)
=>
{
return
(
item
.
orderNo
&&
item
.
orderNo
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
||
(
item
.
tidanNo
&&
item
.
tidanNo
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
||
(
item
.
marks
&&
item
.
marks
.
indexOf
(
this
.
searchFormFilter
.
orderKeyword
)
>
-
1
)
})
}
if
(
this
.
searchFormFilter
.
orderPortStatus
!=
null
)
{
data
=
data
.
filter
((
item
)
=>
{
return
item
.
arrivalValue
==
this
.
searchFormFilter
.
orderPortStatus
})
}
if
(
this
.
searchFormFilter
.
orderCustomsClearanceStatus
!=
null
)
{
data
=
data
.
filter
((
item
)
=>
{
return
item
.
clearValue
==
this
.
searchFormFilter
.
orderCustomsClearanceStatus
})
}
return
data
}
},
methods
:
{
formatDate
,
searchOrderList
()
{
if
(
this
.
orderKeyword
&&
this
.
orderKeyword
!=
""
)
{
this
.
statusOrderList
=
this
.
statusOrderList
.
filter
((
item
)
=>
{
return
(
(
item
.
orderNo
&&
item
.
orderNo
.
indexOf
(
this
.
orderKeyword
)
>
-
1
)
||
(
item
.
tidanNo
&&
item
.
tidanNo
.
indexOf
(
this
.
orderKeyword
)
>
-
1
)
||
(
item
.
marks
&&
item
.
marks
.
indexOf
(
this
.
orderKeyword
)
>
-
1
)
);
});
}
if
(
this
.
orderPortStatus
!=
null
)
{
this
.
statusOrderList
=
this
.
statusOrderList
.
filter
((
item
)
=>
{
return
item
.
arrivalValue
==
this
.
orderPortStatus
;
});
}
if
(
this
.
orderCustomsClearanceStatus
!=
null
)
{
console
.
log
(
this
.
statusOrderList
,
"
333
"
,
this
.
orderCustomsClearanceStatus
);
this
.
statusOrderList
=
this
.
statusOrderList
.
filter
((
item
)
=>
{
return
item
.
clearValue
==
this
.
orderCustomsClearanceStatus
;
});
}
console
.
log
(
this
.
statusOrderList
,
"
222
"
);
this
.
searchFormFilter
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
searchForm
))
},
selectOrderId
(
val
)
{
if
(
val
.
length
==
1
)
{
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
val
[
0
]);
if
(
arr
)
{
this
.
$set
(
this
.
airArrivalInfo
,
"
actSecondTime
"
,
formatDate
(
arr
.
actSecondTime
)
);
this
.
$set
(
this
.
airArrivalInfo
,
"
estTime
"
,
formatDate
(
arr
.
estTime
));
this
.
$set
(
this
.
airArrivalInfo
,
"
actTime
"
,
formatDate
(
arr
.
actTime
));
}
let
clear
=
this
.
clearanceOrderList
.
find
(
(
item
)
=>
item
.
orderId
==
val
[
0
]
);
if
(
clear
)
{
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
formatDate
(
clear
.
clEstTime
)
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
formatDate
(
clear
.
clClearTime
)
);
}
}
else
{
this
.
$set
(
this
.
airArrivalInfo
,
"
actSecondTime
"
,
null
);
this
.
$set
(
this
.
airArrivalInfo
,
"
estTime
"
,
null
);
this
.
$set
(
this
.
airArrivalInfo
,
"
actTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
null
);
}
reloafSearch
()
{
this
.
searchForm
=
{}
this
.
searchOrderList
()
},
selectOrder
(
val
)
{
this
.
selectOrders
=
[];
this
.
selectOrders
.
push
(
val
);
let
arr
=
this
.
arrivalOrderList
.
find
(
(
item
)
=>
item
.
orderId
==
val
.
orderId
);
this
.
selectOrders
=
[]
this
.
selectOrders
.
push
(
val
)
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
val
.
orderId
)
if
(
arr
)
{
this
.
$set
(
this
.
airArrivalInfo
,
"
actSecondTime
"
,
formatDate
(
arr
.
actSecondTime
)
);
this
.
$set
(
this
.
airArrivalInfo
,
"
estTime
"
,
formatDate
(
arr
.
estTime
));
this
.
$set
(
this
.
airArrivalInfo
,
"
actTime
"
,
formatDate
(
arr
.
actTime
));
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
formatDate
(
arr
.
actSecondTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
formatDate
(
arr
.
estTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
formatDate
(
arr
.
actTime
))
}
let
clear
=
this
.
clearanceOrderList
.
find
(
(
item
)
=>
item
.
orderId
==
val
.
orderId
);
console
.
log
(
clear
,
111
);
let
clear
=
this
.
clearanceOrderList
.
find
((
item
)
=>
item
.
orderId
==
val
.
orderId
)
if
(
clear
)
{
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
formatDate
(
clear
.
clEstTime
)
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
formatDate
(
clear
.
clClearTime
)
);
this
.
$set
(
this
.
cusClearanceObj
,
'
clEstTime
'
,
formatDate
(
clear
.
clEstTime
))
this
.
$set
(
this
.
cusClearanceObj
,
'
clClearTime
'
,
formatDate
(
clear
.
clClearTime
))
}
this
.
orderdialogVisible
=
false
;
this
.
orderdialogVisible
=
false
},
handleSelectionChange
(
val
)
{
this
.
multipleSelectOrder
=
val
;
this
.
multipleSelectOrder
=
val
},
multipleSelect
()
{
if
(
this
.
multipleSelectOrder
.
length
==
0
)
{
this
.
$message
.
error
(
this
.
$t
(
"
请先选择订单
"
));
return
;
this
.
$message
.
error
(
this
.
$t
(
'
请先选择订单
'
))
return
}
this
.
selectOrders
=
[]
;
this
.
selectOrders
=
this
.
multipleSelectOrder
;
this
.
selectOrders
=
[]
this
.
selectOrders
=
this
.
multipleSelectOrder
if
(
this
.
multipleSelectOrder
.
length
==
1
)
{
let
arr
=
this
.
arrivalOrderList
.
find
(
(
item
)
=>
item
.
orderId
==
this
.
multipleSelectOrder
[
0
].
orderId
);
let
arr
=
this
.
arrivalOrderList
.
find
((
item
)
=>
item
.
orderId
==
this
.
multipleSelectOrder
[
0
].
orderId
)
if
(
arr
)
{
this
.
$set
(
this
.
airArrivalInfo
,
"
actSecondTime
"
,
formatDate
(
arr
.
actSecondTime
)
);
this
.
$set
(
this
.
airArrivalInfo
,
"
estTime
"
,
formatDate
(
arr
.
estTime
));
this
.
$set
(
this
.
airArrivalInfo
,
"
actTime
"
,
formatDate
(
arr
.
actTime
));
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
formatDate
(
arr
.
actSecondTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
formatDate
(
arr
.
estTime
))
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
formatDate
(
arr
.
actTime
))
}
let
clear
=
this
.
clearanceOrderList
.
find
(
(
item
)
=>
item
.
orderId
==
this
.
multipleSelectOrder
[
0
].
orderId
);
let
clear
=
this
.
clearanceOrderList
.
find
((
item
)
=>
item
.
orderId
==
this
.
multipleSelectOrder
[
0
].
orderId
)
if
(
clear
)
{
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
formatDate
(
clear
.
clEstTime
)
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
formatDate
(
clear
.
clClearTime
)
);
this
.
$set
(
this
.
cusClearanceObj
,
'
clEstTime
'
,
formatDate
(
clear
.
clEstTime
))
this
.
$set
(
this
.
cusClearanceObj
,
'
clClearTime
'
,
formatDate
(
clear
.
clClearTime
))
}
}
else
{
this
.
$set
(
this
.
airArrivalInfo
,
"
actSecondTime
"
,
null
);
this
.
$set
(
this
.
airArrivalInfo
,
"
estTime
"
,
null
);
this
.
$set
(
this
.
airArrivalInfo
,
"
actTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clEstTime
"
,
null
);
this
.
$set
(
this
.
cusClearanceObj
,
"
clClearTime
"
,
null
);
this
.
$set
(
this
.
airArrivalInfo
,
'
actSecondTime
'
,
null
)
this
.
$set
(
this
.
airArrivalInfo
,
'
estTime
'
,
null
)
this
.
$set
(
this
.
airArrivalInfo
,
'
actTime
'
,
null
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clEstTime
'
,
null
)
this
.
$set
(
this
.
cusClearanceObj
,
'
clClearTime
'
,
null
)
}
this
.
orderdialogVisible
=
false
;
this
.
orderdialogVisible
=
false
},
getClAgent
(
type
)
{
const
agentId
=
this
.
$attrs
.
shipmentObj
.
agentInfo
.
agentId
;
if
(
type
===
"
label
"
)
{
const
selected
=
this
.
$attrs
.
allSupplier
.
find
(
(
item
)
=>
item
.
id
===
agentId
);
return
this
.
$l
(
selected
,
"
company
"
)
??
agentId
;
const
agentId
=
this
.
$attrs
.
shipmentObj
.
agentInfo
.
agentId
if
(
type
===
'
label
'
)
{
const
selected
=
this
.
$attrs
.
allSupplier
.
find
((
item
)
=>
item
.
id
===
agentId
)
return
this
.
$l
(
selected
,
'
company
'
)
??
agentId
}
return
agentId
;
return
agentId
},
// 时间比较
compareDate
(
clEstTime
,
clClearTime
)
{
this
.
showMsg
=
false
;
this
.
showMsg
=
false
let
date1
=
null
,
date2
=
null
;
if
(
clEstTime
)
date1
=
dayjs
(
clEstTime
)
;
if
(
clClearTime
)
date2
=
dayjs
(
clClearTime
)
;
date2
=
null
if
(
clEstTime
)
date1
=
dayjs
(
clEstTime
)
if
(
clClearTime
)
date2
=
dayjs
(
clClearTime
)
if
(
date1
&&
date2
&&
!
date2
.
isSame
(
date1
))
{
this
.
showMsg
=
true
;
this
.
showMsg
=
true
}
},
// 异常登记
exceptionReg
()
{
this
.
dialogVisible
=
true
;
this
.
dialogVisible
=
true
},
/** 提交 */
onSubmit
(
operateType
)
{
this
.
$refs
[
"
cusClearanceForm
"
].
validate
((
valid
)
=>
{
this
.
$refs
[
'
cusClearanceForm
'
].
validate
((
valid
)
=>
{
if
(
valid
)
{
if
(
this
.
cusClearanceObj
.
clearanceType
==
1
&&
this
.
cusClearanceObj
.
clearanceOrderIdList
.
length
>
0
)
{
this
.
$refs
[
"
airArrivalForm
"
].
validate
((
arrvalid
)
=>
{
if
(
this
.
cusClearanceObj
.
clearanceType
==
1
&&
this
.
cusClearanceObj
.
clearanceOrderIdList
.
length
>
0
)
{
this
.
$refs
[
'
airArrivalForm
'
].
validate
((
arrvalid
)
=>
{
if
(
arrvalid
)
{
updateOrderArrival
({
...
this
.
airArrivalInfo
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
orderIdList
:
this
.
cusClearanceObj
.
clearanceOrderIdList
,
orderIdList
:
this
.
cusClearanceObj
.
clearanceOrderIdList
}).
then
(()
=>
{
clearanceCreate
({
...
this
.
cusClearanceObj
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
clAgentId
:
this
.
getClAgent
(),
operateType
,
operateType
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
(
"
submit
"
);
})
;
})
;
})
;
this
.
cancel
(
'
submit
'
)
})
})
})
}
})
;
})
}
else
{
clearanceCreate
({
...
this
.
cusClearanceObj
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
clAgentId
:
this
.
getClAgent
(),
operateType
,
operateType
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
(
"
submit
"
);
})
;
})
;
this
.
cancel
(
'
submit
'
)
})
})
}
}
})
;
})
},
/** 取消 */
cancel
(
type
)
{
this
.
$emit
(
"
closeDialog
"
,
type
);
}
,
}
,
}
;
this
.
$emit
(
'
closeDialog
'
,
type
)
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/ecw/box/shippingAir/nodePage/mergePkg/supplementOrder.vue
View file @
ccced454
...
...
@@ -287,6 +287,7 @@ export default {
remove
(
params
).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
getSecGoods
();
this
.
getPreLoad
();
});
}).
catch
((
res
)
=>
{
if
(
res
.
code
===
666
)
{
...
...
@@ -300,6 +301,7 @@ export default {
remove
({
...
params
,
deleteType
:
2
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
getSecGoods
();
this
.
getPreLoad
();
});
});
})
...
...
@@ -308,6 +310,7 @@ export default {
remove
({
...
params
,
deleteType
:
1
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
getSecGoods
();
this
.
getPreLoad
();
});
});
}
...
...
src/views/ecw/box/shippingAir/nodePage/preinstall.vue
View file @
ccced454
...
...
@@ -46,6 +46,18 @@
<el-input
v-model=
"queryParams.weightRatioMin"
:placeholder=
"$t('请输入 小')"
clearable
/>
</el-form-item>
<el-form-item
:label=
"$t('出货渠道')"
prop=
"shippingChannelId"
>
<el-select
v-model=
"queryParams.shippingChannelId"
:placeholder=
"$t('请选择出货渠道')"
@
change=
"selectChannel"
>
<el-option
v-for=
"item in channelList"
:label=
"$l(item, 'name')"
:value=
"item.channelId"
:key=
"item.channelId"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('特性')"
prop=
"attrId"
>
<el-select
v-model=
"queryParams.attrId"
:placeholder=
"$t('特性')"
>
<el-option
v-for=
"item in attrIdList"
:label=
"item"
:value=
"item*1"
:key=
"item"
></el-option>
</el-select>
</el-form-item>
<el-form-item
prop=
"airShipment"
>
<el-checkbox
v-model=
"queryParams.airShipment"
:true-label=
"4"
@
change=
"changeAirShipment"
>
{{
$t
(
'
已完成备货
'
)
}}
</el-checkbox>
<!--
<el-radio
v-model=
"queryParams.airShipment"
:label=
"4"
>
{{
$t
(
'
已完成备货
'
)
}}
</el-radio>
-->
...
...
@@ -157,7 +169,11 @@
{{
$l
(
row
,
'
prodTitle
'
)
}}
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('箱数')
"
align
=
"
center
"
prop
=
"
warehouseInInfoVO.cartonsNum
"
/>
<
el
-
table
-
column
:
label
=
"
$t('箱数')
"
align
=
"
center
"
prop
=
"
warehouseInInfoVO.cartonsNum
"
>
<
template
slot
-
scope
=
"
scope
"
>
{{
scope
.
row
.
warehouseInInfoVO
.
cartonsNum
}}
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('体积') + '/' + $t('重量') + '/' + $t('重货比')
"
align
=
"
center
"
width
=
"
140
"
prop
=
"
volumeWeight
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
p
v
-
if
=
"
scope.row.warehouseInInfoVO.volume
"
>
{{
getTotlContent
(
scope
.
row
.
warehouseInInfoVO
,[
'
volume
'
])
}}
<
/p
>
...
...
@@ -270,7 +286,14 @@
<
dict
-
tag
:
type
=
"
DICT_TYPE.BRAND_CUSTOMER_CHARGING_MODEL
"
:
value
=
"
row.feeType
"
/>
{{
$t
(
'
)
'
)
}}
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('箱数')
"
align
=
"
center
"
prop
=
"
warehouseInInfoVO.cartonsNum
"
/>
<
el
-
table
-
column
:
label
=
"
$t('箱数')
"
align
=
"
center
"
prop
=
"
warehouseInInfoVO.cartonsNum
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
style
=
"
color: bule
"
v
-
if
=
"
scope.row.mixStatus == 1
"
>
{{
scope
.
row
.
warehouseInInfoVO
.
cartonsNum
}}
{{
$t
(
'
(混箱)
'
)
}}
<
/span
>
<
template
v
-
else
>
{{
scope
.
row
.
warehouseInInfoVO
.
cartonsNum
}}
<
/template
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
:
label
=
"
$t('体积') +'/' + $t('重量')
"
align
=
"
center
"
prop
=
"
volumeWeight
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
p
v
-
if
=
"
scope.row.warehouseInInfoVO && scope.row.warehouseInInfoVO.volume
"
>
{{
getTotlContent
(
scope
.
row
.
warehouseInInfoVO
,[
'
volume
'
])
}}
<
/p
>
...
...
@@ -485,6 +508,17 @@ export default {
}
}
;
}
,
/** 特性 */
attrIdList
()
{
let
data
=
[]
if
(
this
.
queryParams
.
shippingChannelId
){
let
attrs
=
this
.
channelList
.
find
(
item
=>
this
.
queryParams
.
shippingChannelId
==
item
.
channelId
)
if
(
attrs
){
data
=
attrs
.
attrId
.
split
(
'
,
'
)
}
}
return
data
}
}
,
created
()
{
// 查询待分拣
...
...
@@ -497,6 +531,9 @@ export default {
methods
:
{
formatDate
,
getTotlContent
,
selectChannel
(){
this
.
$set
(
this
.
queryParams
,
'
attrId
'
,
null
)
}
,
/* 获取城市 */
importCityName
(
id
)
{
var
arr
=
this
.
$attrs
.
warehouseList
.
filter
((
item
)
=>
item
.
id
==
id
);
...
...
src/views/ecw/box/shippingAir/nodePage/unloading/startUnloading.vue
View file @
ccced454
...
...
@@ -82,7 +82,7 @@
<el-table-column
:label=
"$t('重量')"
align=
"center"
prop=
"weight"
/>
<el-table-column
:label=
"$t('订单状态')"
align=
"center"
prop=
""
>
<
template
slot-scope=
"scope"
>
{{
getOrderError
(
scope
.
row
,
'
orderStatus
'
)
}}
{{
scope
.
rowstatusMsg
}}
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('异常状态')"
align=
"center"
prop=
""
>
...
...
@@ -313,7 +313,7 @@ export default {
copyUserId
:
this
.
selectedUsers
,
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
();
this
.
cancel
(
"
submit
"
);
});
});
}
else
{
...
...
src/views/ecw/order/penddingList.vue
View file @
ccced454
...
...
@@ -363,6 +363,7 @@ export default {
},
activated
(){
this
.
getList
()
this
.
$store
.
dispatch
(
'
getBadgeData
'
)
},
created
()
{
this
.
getList
();
...
...
@@ -371,6 +372,8 @@ export default {
getCurrencyPage
(
this
.
params
).
then
(
res
=>
this
.
currencyList
=
res
.
data
.
list
)
getChannelList
().
then
(
res
=>
this
.
channelList
=
res
.
data
)
this
.
$store
.
dispatch
(
'
getBadgeData
'
)
},
methods
:
{
/** 查询列表 */
...
...
src/views/ecw/order/warehousing/components/WarehouseRecordDetail.vue
View file @
ccced454
...
...
@@ -122,6 +122,7 @@ export default {
},
handleSave
()
{
this
.
$emit
(
'
input
'
,
this
.
dataList
)
this
.
dialogVisible
=
false
}
},
...
...
src/views/ecw/order/warehousing/components/WarehouseRecordDetailItem.vue
View file @
ccced454
...
...
@@ -40,6 +40,12 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('用途')"
>
<dict-selector
v-model=
"value.usageIds"
:type=
"DICT_TYPE.WAREHOUSING_RECORD_DETAIL_USAGE"
multiple
form-type=
"checkbox"
></dict-selector>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -70,6 +76,23 @@
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"10"
>
<el-col
:span=
"4"
>
<el-form-item
:label=
"$t('快递单号')"
>
<el-input
v-model=
"value.expressNo"
/>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
:label=
"$t('包装类型')"
>
<dict-selector
:type=
"DICT_TYPE.ECW_PACKAGING_TYPE"
v-model=
"value.unit"
></dict-selector>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
:label=
"$t('数量')"
>
<el-input
v-model=
"value.quantityAll"
/>
</el-form-item>
</el-col>
</el-row>
</el-card>
</
template
>
...
...
src/views/ecw/productPrice/edit.vue
View file @
ccced454
...
...
@@ -576,7 +576,7 @@ export default {
let
res
=
await
getProductPrice
(
this
.
$route
.
query
.
id
)
this
.
$set
(
this
,
'
form
'
,
res
.
data
)
// 显示渠道
if
(
this
.
readonly
&&
this
.
form
.
shippingChannelId
){
if
(
this
.
form
.
shippingChannelId
){
getChannel
(
this
.
form
.
shippingChannelId
).
then
(
res
=>
{
this
.
channel
=
res
.
data
}
)
...
...
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