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
d26dac3e
Commit
d26dac3e
authored
Aug 08, 2022
by
huhaiqing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
开始卸柜/卸柜异常开发
parent
c84801c0
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
235 additions
and
54 deletions
+235
-54
boxSea.js
src/api/ecw/boxSea.js
+64
-0
dict.js
src/utils/dict.js
+1
-0
index.vue
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
+1
-1
startPacking.vue
...ews/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
+4
-4
supplementOrder.vue
.../ecw/box/shippingSea/nodePage/cabinet/supplementOrder.vue
+4
-1
preinstall.vue
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
+2
-2
preinstallReview.vue
src/views/ecw/box/shippingSea/nodePage/preinstallReview.vue
+2
-2
index.vue
src/views/ecw/box/shippingSea/nodePage/unloading/index.vue
+7
-3
startUnloading.vue
...ecw/box/shippingSea/nodePage/unloading/startUnloading.vue
+122
-35
unloadingError.vue
...ecw/box/shippingSea/nodePage/unloading/unloadingError.vue
+27
-5
shippingSea.vue
src/views/ecw/box/shippingSea/shippingSea.vue
+1
-1
No files found.
src/api/ecw/boxSea.js
View file @
d26dac3e
...
...
@@ -521,6 +521,70 @@ export function boxUpdate(data) {
/***************************** 装柜 end **********************************/
/***************************** 卸柜 start **********************************/
/**
* 获取卸柜数据
*
* @export
* @param {*} data
* @return {*}
*/
export
function
loadGoodsList
(
params
)
{
return
request
({
url
:
"
/ecw/box-preload-goods/loadGoodsList
"
,
method
:
"
get
"
,
params
,
});
}
/**
* 批量卸柜
*
* @export
* @param {*} data
* @return {*}
*/
export
function
batchUnload
(
data
)
{
return
request
({
url
:
"
/ecw/box-load-info/batchUnload
"
,
method
:
"
post
"
,
data
,
});
}
/**
* 一键卸柜
*
* @export
* @param {*} data
* @return {*}
*/
export
function
allUnload
(
data
)
{
return
request
({
url
:
"
/ecw/box-load-info/allUnload
"
,
method
:
"
post
"
,
data
,
});
}
/**
* 异常
*
* @export
* @param {*} data
* @return {*}
*/
export
function
createError
(
data
)
{
return
request
({
url
:
"
/ecw/box-cabinet-unload-abnormal/create
"
,
method
:
"
post
"
,
data
,
});
}
/***************************** 卸柜 end **********************************/
/**
* 服务提示消息回调
*
...
...
src/utils/dict.js
View file @
d26dac3e
...
...
@@ -162,6 +162,7 @@ export const DICT_TYPE = {
BOX_SHIPPING_CUSTOMS_TYPE
:
'
shipping_customs_type
'
,
// 报关方式
BOX_SHIPPING_DCCUSTOMS_STATUS
:
'
shipping_dcCustoms_status
'
,
// 报关放行状态
BOX_SHIPPING_CHECK_STATUS
:
'
shipping_check_status
'
,
// 查验状态
BOX_SHIPPING_UNLOADING_ERROR
:
'
shipping_unloading_error
'
,
// 卸柜异常类型
}
/**
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/index.vue
View file @
d26dac3e
...
...
@@ -37,7 +37,7 @@
<
script
>
import
startPacking
from
"
./startPacking.vue
"
;
import
{
cabinetCreate
,
serviceMsg
,
approvalCreate
}
from
"
@/api/ecw/boxSea
"
;
import
{
cabinetCreate
,
serviceMsg
}
from
"
@/api/ecw/boxSea
"
;
import
{
formatDateStr
}
from
"
../../utils
"
;
import
ImageUpload
from
"
@/components/ImageUpload
"
;
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/startPacking.vue
View file @
d26dac3e
...
...
@@ -38,7 +38,7 @@
<!-- 表格 -->
<el-row
class=
"table-content"
>
<el-table
:data=
"tableData.sectionOrderList"
>
<el-table
:data=
"tableData.sectionOrderList"
border
>
<el-table-column
label=
"序号"
type=
"index"
align=
"center"
width=
"50"
/>
<el-table-column
label=
"订单号"
align=
"center"
prop=
"orderNo"
>
<
template
slot-scope=
"scope"
>
...
...
@@ -48,7 +48,7 @@
<el-table-column
label=
"货物信息"
align=
"center"
prop=
"goodsList"
>
<
template
slot-scope=
"scope"
>
<section
class=
"table-goodList"
>
<div
v-for=
"
item in scope.row.goodsList"
:key=
"item.orderId
"
class=
"goodList-div"
>
<div
v-for=
"
(item, index) in scope.row.goodsList"
:key=
"index
"
class=
"goodList-div"
>
<p>
品名:
{{
item
.
prodTitleZh
}}
</p>
<p>
品牌:【
<dict-tag
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value=
"item.productRecord"
/>
...
...
@@ -378,7 +378,7 @@ export default {
};
if
(
type
===
"
single
"
)
{
if
(
!
this
.
qrCode
)
{
this
.
$message
.
warning
(
"
请输入二维码/条码编号
"
);
this
.
$message
.
error
(
"
请输入二维码/条码编号
"
);
return
;
}
params
.
orderNumCode
=
this
.
qrCode
;
...
...
@@ -438,7 +438,7 @@ export default {
approvalCreate
({
shipmentId
:
this
.
shipmentObj
.
id
,
approvalStatus
:
0
,
approvalType
:
2
,
approvalType
:
2
,
// 封柜
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
);
});
...
...
src/views/ecw/box/shippingSea/nodePage/cabinet/supplementOrder.vue
View file @
d26dac3e
...
...
@@ -84,7 +84,7 @@
</el-row>
<el-collapse-transition>
<div
v-show=
"!item.fold"
>
<el-table
:data=
"item.orderItemList"
border
>
<el-table
v-loading=
"loading"
:data=
"item.orderItemList"
border
>
<el-table-column
label=
"序号"
type=
"index"
align=
"center"
width=
"50"
/>
<el-table-column
label=
"品名"
align=
"center"
prop=
"prodTitleZh"
min-width=
"500"
/>
<el-table-column
label=
"品牌"
align=
"center"
prop=
"brandType"
width=
"120"
>
...
...
@@ -173,6 +173,7 @@ export default {
// 待预装
toBePreList
:
[],
total
:
0
,
loading
:
false
,
};
},
created
()
{
...
...
@@ -204,6 +205,7 @@ export default {
},
/* 查询待预装 */
getPreLoad
()
{
this
.
loading
=
true
;
// 处理查询参数
let
params
=
{
...
this
.
queryParams
,
...
...
@@ -211,6 +213,7 @@ export default {
preloadPage
({
...
params
,
...
this
.
pageParam
}).
then
((
res
)
=>
{
this
.
toBePreList
=
res
.
data
.
list
;
this
.
total
=
res
.
data
.
total
;
this
.
loading
=
false
;
});
},
/* 删除订单 */
...
...
src/views/ecw/box/shippingSea/nodePage/preinstall.vue
View file @
d26dac3e
...
...
@@ -401,7 +401,7 @@ export default {
...
this
.
operatorData
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
approvalStatus
:
0
,
approvalType
:
1
,
approvalType
:
1
,
// 预装
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
$emit
(
"
closeDialog
"
,
"
submit
"
);
...
...
@@ -503,7 +503,7 @@ export default {
if (type === "selected") {
const rows = this.selectedRows[data.id] ?? [];
if (!rows.length) {
this.$message.
warning
("请选择订单");
this.$message.
error
("请选择订单");
return;
}
ids = rows.map((item) => item.orderItemId);
...
...
src/views/ecw/box/shippingSea/nodePage/preinstallReview.vue
View file @
d26dac3e
...
...
@@ -35,8 +35,8 @@ export default {
approvalCreate
({
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
...
this
.
reviewObj
,
approvalStatus
:
-
1
,
approvalType
:
4
,
approvalStatus
:
0
,
approvalType
:
4
,
// 预装反审
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
(
"
submit
"
);
...
...
src/views/ecw/box/shippingSea/nodePage/unloading/index.vue
View file @
d26dac3e
...
...
@@ -20,8 +20,8 @@
</el-row>
<!-- 开始卸柜 -->
<el-dialog
title=
"开始卸柜"
:visible.sync=
"dialogVisible"
fullscreen
:modal-append-to-body=
false
append-to-body
destroy-on-close
>
<startUnloading
/>
<el-dialog
title=
"开始卸柜"
:visible.sync=
"dialogVisible"
fullscreen
:modal-append-to-body=
false
append-to-body
>
<startUnloading
v-if=
"dialogVisible"
v-bind=
"$attrs"
@
closeStart=
"closeStart"
/>
</el-dialog>
</div>
</
template
>
...
...
@@ -62,7 +62,7 @@ export default {
const
{
keyName
}
=
this
.
$attrs
.
currNode
;
const
ulStatus
=
this
.
$attrs
.
shipmentObj
[
keyName
];
if
(
ulStatus
!==
145
)
{
this
.
$message
.
warning
(
"
请先通过卸柜审批
"
);
this
.
$message
.
error
(
"
请先通过卸柜审批
"
);
return
;
}
}
...
...
@@ -82,6 +82,10 @@ export default {
cancel
(
type
)
{
this
.
$emit
(
"
closeDialog
"
,
type
);
},
/* 关闭弹窗 */
closeStart
()
{
this
.
dialogVisible
=
false
;
},
// 开始卸柜
startUnloading
()
{
this
.
dialogVisible
=
true
;
...
...
src/views/ecw/box/shippingSea/nodePage/unloading/startUnloading.vue
View file @
d26dac3e
...
...
@@ -4,11 +4,11 @@
<!-- 自编号 -->
<el-row
class=
"number-area"
>
<p
class=
"label-font"
>
自编号:
</p>
<p
class=
"label-font"
>
CNG2510
</p>
<p
class=
"label-font"
>
{{
selfNo
}}
</p>
<el-input
v-model=
"labelNo"
placeholder=
"请输入标签号"
></el-input>
<div>
<el-button>
批量输入
</el-button>
<el-button>
一键卸柜
</el-button>
<el-button
type=
"primary"
@
click=
"modifyBatchUnload"
>
批量输入
</el-button>
<el-button
type=
"primary"
@
click=
"modifyAllUnload"
>
一键卸柜
</el-button>
</div>
</el-row>
...
...
@@ -25,24 +25,31 @@
</el-row>
<!-- 表格 -->
<el-row>
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
/>
<!--
<el-table-column
label=
"订单号"
align=
"center"
prop=
"selfNo"
>
<el-row
class=
"table-area"
>
<el-table
v-loading=
"loading"
:data=
"pageData.sectionOrderList"
border
>
<el-table-column
label=
"序号"
type=
"index"
align=
"center"
width=
"50"
/>
<el-table-column
label=
"订单号"
align=
"center"
prop=
"orderNo"
>
<template
slot-scope=
"scope"
>
<a
href=
"javascript:void(0);"
class=
"order-href"
>
{{
scope
.
row
.
orderNo
}}
</a>
</
template
>
</el-table-column>
<el-table-column
label=
"商品信息"
align=
"center"
prop=
"goodsList"
>
<
template
slot-scope=
"scope"
>
<a
href=
"javascript:void(0);"
class=
"order-href"
@
click=
"orderClick(scope.row)"
>
{{
scope
.
row
.
selfNo
}}
</a>
<section
class=
"table-goodList"
>
<div
v-for=
"(item, index) in scope.row.goodsList"
:key=
"index"
class=
"goodList-div"
>
<p>
{{
index
+
1
}}
:
{{
item
.
prodTitleZh
}}
</p>
</div>
</section>
</
template
>
</el-table-column>
-->
<el-table-column
label=
"订单号"
align=
"center"
prop=
"cubNo"
/>
<el-table-column
label=
"商品信息"
align=
"center"
prop=
"cubNo"
/>
<el-table-column
label=
"实装箱数"
align=
"center"
prop=
"cabinetId"
/>
<el-table-column
label=
"卸柜箱数"
align=
"center"
prop=
"transportType"
/>
<el-table-column
label=
"清关状态"
align=
"center"
prop=
"squareNumber"
/>
<el-table-column
label=
"体积"
align=
"center"
prop=
"weight"
/>
</el-table-column>
<el-table-column
label=
"实装箱数"
align=
"center"
prop=
"installNum"
/>
<el-table-column
label=
"卸柜箱数"
align=
"center"
prop=
"unloadNum"
/>
<el-table-column
label=
"清关状态"
align=
"center"
prop=
""
/>
<el-table-column
label=
"体积"
align=
"center"
prop=
"volume"
/>
<el-table-column
label=
"重量"
align=
"center"
prop=
"weight"
/>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"danger"
size=
"small"
@
click=
"openError"
>
异常
</el-button>
<el-button
type=
"danger"
size=
"small"
@
click=
"openError
(scope.row)
"
>
异常
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -50,40 +57,48 @@
<!-- 总计 -->
<el-row>
<div>
<div
class=
"label-font"
>
<p>
<span>
总计:
</span>
<span>
33箱子
</span>
<span>
10.83
m3
</span>
<span>
210
kg
</span>
<span>
{{pageData.totalStatistics ? pageData.totalStatistics.num : 0}}箱
</span>
<span>
{{pageData.totalStatistics ? pageData.totalStatistics.volume : 0}}
m3
</span>
<span>
{{pageData.totalStatistics ? pageData.totalStatistics.weight : 0}}
kg
</span>
</p>
</div>
<div>
<div
class=
"label-font"
>
<p>
<span>
已卸:
</span>
<span>
16
</span>
<span>
0
</span>
</p>
</div>
</el-row>
<el-row>
<el-button
type=
"success"
>
卸柜完成
</el-button>
<el-button
type=
"success"
@
click=
"onSubmit"
>
卸柜完成
</el-button>
</el-row>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog"
title=
"异常"
:visible.sync=
"dialogVisible"
width=
"
500px"
:modal-append-to-body=
false
append-to-body
destroy-on-close
>
<unloadingError
@
closeDialog=
"dialogVisible = false
"
/>
<el-dialog
custom-class=
"shipping-dialog"
title=
"异常"
:visible.sync=
"dialogVisible"
width=
"
600px"
:modal-append-to-body=
false
append-to-body
>
<unloadingError
v-if=
"dialogVisible"
@
closeDialog=
"closeDialog"
v-bind=
"$attrs"
:currRow=
"currRow
"
/>
</el-dialog>
</div>
</template>
<
script
>
import
unloadingError
from
"
./unloadingError.vue
"
;
import
{
loadGoodsList
,
batchUnload
,
allUnload
,
approvalCreate
,
serviceMsg
,
}
from
"
@/api/ecw/boxSea
"
;
/**
* 开始卸柜
*/
export
default
{
name
:
"
startUnloading
"
,
inheritAttrs
:
false
,
components
:
{
unloadingError
},
data
()
{
return
{
...
...
@@ -93,29 +108,87 @@ export default {
currPart
:
""
,
// loading
loading
:
false
,
//
表格
数据
list
:
[{}]
,
//
页面
数据
pageData
:
{}
,
// 弹窗配置
dialogVisible
:
false
,
// 自编号
selfNo
:
this
.
$attrs
.
shipmentObj
.
selfNo
,
// 当前行
currRow
:
{},
};
},
watch
:
{},
created
()
{
this
.
getLoadGoodsList
();
},
methods
:
{
/* 获取卸柜数据 */
getLoadGoodsList
(
params
)
{
this
.
loading
=
true
;
params
=
{
secId
:
0
,
...
params
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
};
loadGoodsList
(
params
).
then
((
res
)
=>
{
const
{
data
}
=
res
;
this
.
pageData
=
data
;
this
.
loading
=
false
;
});
},
/* 批量输入 */
modifyBatchUnload
()
{
if
(
!
this
.
labelNo
)
{
this
.
$message
.
error
(
"
请输入标签号
"
);
return
;
}
batchUnload
({
orderNo
:
this
.
labelNo
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
((
res
)
=>
{
this
.
getLoadGoodsList
();
});
});
},
/* 一键卸柜 */
modifyAllUnload
()
{
this
.
$confirm
(
"
确认卸柜?
"
,
"
提示
"
,
{
type
:
"
warning
"
,
})
.
then
((
_
)
=>
{
allUnload
({
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
((
res
)
=>
{
this
.
getLoadGoodsList
();
});
});
})
.
catch
((
_
)
=>
{});
},
/** 提交 */
onSubmit
()
{
this
.
$refs
[
"
unloadingForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
// TODO 判断是否已经卸柜
this
.
$message
.
warning
(
"
请先通过卸柜审批
"
);
}
approvalCreate
({
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
approvalStatus
:
0
,
approvalType
:
3
,
// 卸柜
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
this
.
cancel
();
});
});
},
/** 取消 */
cancel
()
{
this
.
$emit
(
"
closeDialog
"
);
this
.
$emit
(
"
closeStart
"
);
},
/* 关闭弹窗 */
closeDialog
()
{
this
.
dialogVisible
=
false
;
this
.
getLoadGoodsList
();
},
// 打开异常
openError
()
{
openError
(
row
)
{
this
.
currRow
=
row
;
this
.
dialogVisible
=
true
;
},
},
...
...
@@ -147,5 +220,19 @@ export default {
width
:
200px
;
}
}
.table-area
{
.table-goodList
{
.goodList-div
{
>
p
{
text-align
:
left
;
}
>
p
:last-child
{
>
span
{
margin-right
:
5px
;
}
}
}
}
}
}
</
style
>
src/views/ecw/box/shippingSea/nodePage/unloading/unloadingError.vue
View file @
d26dac3e
...
...
@@ -2,18 +2,20 @@
<div>
<el-form
ref=
"errorForm"
:model=
"errorObj"
label-width=
"100px"
>
<el-form-item
label=
"异常"
>
<el-radio-group
v-model=
"errorObj.errorStatus"
>
<el-radio-group
v-model=
"errorObj.exceptionType "
>
<el-radio
v-for=
"item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_UNLOADING_ERROR)"
:key=
"item.value"
:label=
"item.value"
>
{{
item
.
label
}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"品名"
>
<el-select
v-model=
"errorObj.goodName"
placeholder=
"请选择品名"
>
<el-select
v-model=
"errorObj.productId"
placeholder=
"请选择品名"
>
<el-option
v-for=
"(item, index) in goodsList"
:key=
"index"
:value=
"item.orderItemId"
:label=
"item.prodTitleZh"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"件数"
>
<el-input-number
v-model=
"errorObj.p
ieces
"
controls-position=
"right"
:min=
"1"
></el-input-number>
<el-input-number
v-model=
"errorObj.p
roductNum
"
controls-position=
"right"
:min=
"1"
></el-input-number>
</el-form-item>
<el-form-item
label=
"异常详情"
>
<el-input
v-model=
"errorObj.
details
"
type=
"textarea"
rows=
"2"
placeholder=
"请输入异常详情"
></el-input>
<el-input
v-model=
"errorObj.
exceptionDetail
"
type=
"textarea"
rows=
"2"
placeholder=
"请输入异常详情"
></el-input>
</el-form-item>
</el-form>
...
...
@@ -25,15 +27,21 @@
</
template
>
<
script
>
import
{
createError
,
serviceMsg
}
from
"
@/api/ecw/boxSea
"
;
/**
* 卸柜异常
*/
export
default
{
name
:
"
unloadingError
"
,
inheritAttrs
:
false
,
data
()
{
const
{
currRow
}
=
this
.
$attrs
;
return
{
// 异常对象
errorObj
:
{},
// 品名
goodsList
:
currRow
.
goodsList
??
[],
};
},
methods
:
{
...
...
@@ -41,7 +49,21 @@ export default {
onSubmit
()
{
this
.
$refs
[
"
errorForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
alert
(
"
submit!
"
);
const
{
productNum
=
0
}
=
this
.
errorObj
;
const
{
currRow
}
=
this
.
$attrs
;
if
(
productNum
>
currRow
.
installNum
)
{
this
.
$message
.
error
(
"
货物异常数量不能大于装柜数量
"
);
return
;
}
createError
({
...
this
.
errorObj
,
orderId
:
this
.
$attrs
.
currRow
.
orderId
,
shipmentId
:
this
.
$attrs
.
shipmentObj
.
id
,
}).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
((
res
)
=>
{
this
.
$emit
(
"
closeDialog
"
);
});
});
}
});
},
...
...
src/views/ecw/box/shippingSea/shippingSea.vue
View file @
d26dac3e
...
...
@@ -161,7 +161,7 @@ export default {
}
// 页面内元素弹窗form控件宽度设置
.el-form-item__content
{
>
div
{
>
div
:not
(
.el-input-number
)
{
width
:
100%
;
}
}
...
...
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