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
6e090ec8
Commit
6e090ec8
authored
Jun 29, 2023
by
dragondean@qq.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
拆单的适配
parent
64232e37
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
78 additions
and
39 deletions
+78
-39
splitOrder.vue
...views/ecw/box/shippingSea/nodePage/cabinet/splitOrder.vue
+21
-15
PutIn.vue
src/views/ecw/order/splitApply/components/PutIn.vue
+25
-4
index.vue
src/views/ecw/order/splitApply/index.vue
+32
-20
No files found.
src/views/ecw/box/shippingSea/nodePage/cabinet/splitOrder.vue
View file @
6e090ec8
...
...
@@ -179,7 +179,7 @@
<el-button
type=
"text"
@
click=
"showWarehouse(scope.row)"
>
{{
scope
.
row
.
num
}}
</el-button>
</
template
>
</el-table-column>
<el-table-column
:label=
"
`${$t('数量')}($t('个')`
"
align=
"center"
>
<el-table-column
:label=
"
$t('数量(个)')
"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
quantity
}}
</span>
</
template
>
...
...
@@ -214,12 +214,12 @@
<el-form
ref=
"shopForm"
:model=
"shopForm"
:rules=
"shopRules"
label-width=
"150px"
inline
>
<el-form-item
:label=
"$t('中文品名')+':'"
prop=
"orderItemId"
>
<el-select
v-model=
"shopForm.orderItemId"
:placeholder=
"$t('请选择中文品名')"
>
<el-option
v-for=
"item in orderItems"
:label=
"item.prodTitleZh"
:value=
"item.orderItemId"
:key=
"item.id"
:disabled=
"itemDisabled(item)"
></el-option>
<el-option
v-for=
"item in orderItems"
:label=
"item.prodTitleZh"
:value=
"item.orderItemId"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('英文品名')+':'"
prop=
"orderItemId"
>
<el-select
v-model=
"shopForm.orderItemId"
:placeholder=
"$t('请选择英文品名')"
>
<el-option
v-for=
"item in orderItems"
:label=
"item.prodTitleEn"
:value=
"item.orderItemId"
:key=
"item.id"
:disabled=
"itemDisabled(item)"
></el-option>
<el-option
v-for=
"item in orderItems"
:label=
"item.prodTitleEn"
:value=
"item.orderItemId"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -487,6 +487,10 @@ export default {
getOrderWarehouseIn
(
this
.
queryParams
.
orderId
).
then
(
res
=>
{
this
.
warehouseInList
=
res
.
data
})
this
.
$nextTick
(()
=>
{
window
.
$vm
=
this
})
},
watch
:
{
//监听table这个对象
...
...
@@ -507,6 +511,16 @@ export default {
});
},
},
// 切换放入品名
'
shopForm.orderItemId
'
(){
// 默认取以前放入的品名
this
.
shopForm
.
specsRecordVOList
=
[]
let
specsRecordVOList
=
this
.
splitData
.
orderSplitItemBackVOList
.
find
(
item
=>
item
.
orderItemId
==
this
.
shopForm
.
orderItemId
)?.
specsRecordVOList
||
[]
specsRecordVOList
.
forEach
(
item
=>
{
const
[
boxGauge1
,
boxGauge2
,
boxGauge3
]
=
item
.
boxGauge
.
split
(
'
*
'
)
this
.
shopForm
.
specsRecordVOList
.
push
({...
item
,
boxGauge1
,
boxGauge2
,
boxGauge3
})
})
}
},
computed
:
{
isAudit
()
{
...
...
@@ -603,14 +617,6 @@ export default {
getWarehouseInspecsRecordVOList
(){
return
warehouseInId
=>
{
let
specsRecordVOList
=
[]
// 这里是拆单已放入的
this
.
splitData
.
orderSplitItemBackVOList
.
forEach
(
splitItem
=>
{
splitItem
.
specsRecordVOList
.
forEach
(
specs
=>
{
if
(
specs
.
warehouseInId
===
warehouseInId
){
specsRecordVOList
.
push
(
specs
)
}
})
})
// 这里是正在操作放入,但是还没确定提交的
this
.
shopForm
.
specsRecordVOList
.
forEach
(
item
=>
{
if
(
item
.
warehouseInId
==
warehouseInId
)
specsRecordVOList
.
push
(
item
)
...
...
@@ -652,9 +658,9 @@ export default {
// 剩余可拆箱数
leftSplitNum
(){
let
num
=
this
.
maxNum
-
this
.
putin
.
num
this
.
splitData
.
orderSplitItemBackVOList
.
forEach
(
item
=>
{
/*
this.splitData.orderSplitItemBackVOList.forEach(item =>{
num -= item.num
})
})
*/
return
num
}
},
...
...
@@ -696,13 +702,13 @@ export default {
this
.
mainOrder
=
data
.
find
(
item
=>
item
.
isMaster
)
});
},
itemDisabled
(
data
)
{
/*
itemDisabled(data) {
const { orderSplitItemBackVOList = [] } = this.splitData;
const isExist = orderSplitItemBackVOList.find(
(item) => item.orderItemId === data.orderItemId
);
return isExist ? true : false;
},
},
*/
/* 查询拆单项 */
querySplitGoods
()
{
getSplitList
({
...
...
src/views/ecw/order/splitApply/components/PutIn.vue
View file @
6e090ec8
...
...
@@ -230,7 +230,7 @@ export default {
// 数量是否必须
quantityshow
:
Boolean
,
// 最大可拆箱数,装柜拆单用
maxNum
:
Number
maxNum
:
Number
,
},
data
(){
return
{
...
...
@@ -242,7 +242,7 @@ export default {
}
},
computed
:{
// 计算总拆出数据
// 计算
当前添加的多条入仓记录
总拆出数据
splitTotal
(){
return
field
=>
{
let
total
=
new
Decimal
(
0
)
...
...
@@ -252,6 +252,18 @@ export default {
return
total
.
toNumber
()
}
},
// 计算此入仓记录全部拆出的数量,包含其他拆单订单的
totalSplitSum
(){
return
field
=>
{
let
total
=
new
Decimal
(
0
)
if
(
this
.
warehouseRecord
.
specsRecordVOList
&&
this
.
warehouseRecord
.
specsRecordVOList
.
length
){
this
.
warehouseRecord
.
specsRecordVOList
.
forEach
(
item
=>
{
total
=
total
.
plus
(
new
Decimal
(
item
[
field
]
||
0
))
})
}
return
total
.
plus
(
new
Decimal
(
this
.
splitTotal
(
'
num
'
))).
toNumber
()
}
},
// 剩余数据
leftData
(){
return
(
field
,
containNew
=
false
)
=>
{
...
...
@@ -305,8 +317,17 @@ export default {
quantity
:
0
,
orderLocationList
}
// 按照比例计算重量体积和数量
this
.
calc
(
row
)
// 如果拆完了则剩下的全部放入,否则按照比例计算
if
(
this
.
warehouseRecord
.
cartonsNum
===
this
.
totalSplitSum
(
'
num
'
)
+
row
.
num
)
{
row
.
num
=
this
.
leftData
(
'
num
'
)
row
.
volume
=
this
.
leftData
(
'
volume
'
)
row
.
weight
=
this
.
leftData
(
'
weight
'
)
row
.
quantity
=
this
.
leftData
(
'
quantity
'
)
}
else
{
// 按照比例计算重量体积和数量
this
.
calc
(
row
)
}
this
.
form
.
list
.
push
(
row
)
},
// 删除一行,可选参数index表上行号,参数不是数字则删除最后一行
...
...
src/views/ecw/order/splitApply/index.vue
View file @
6e090ec8
...
...
@@ -108,6 +108,7 @@
<span
style=
"margin-left: 10px;"
>
{{$t('箱数')}}:{{!scope.row.warehouseInInfoVO?0:scope.row.warehouseInInfoVO.cartonsNum}}
</span>
<span
style=
"margin-left: 10px;"
>
{{$t('体积')}}:{{!scope.row.warehouseInInfoVO?0:scope.row.warehouseInInfoVO.volume}}m³
</span>
<span
style=
"margin-left: 10px;"
>
{{$t('重量')}}:{{!scope.row.warehouseInInfoVO?0:scope.row.warehouseInInfoVO.weight}}kg
</span>
<span
style=
"margin-left: 10px;"
>
{{$t('数量(个)')}}:{{!scope.row.warehouseInInfoVO?0:scope.row.warehouseInInfoVO.quantityAll}}
</span>
</el-row>
<el-row
v-if=
"!scope.row.warehouseInInfoVO"
>
<span>
{{$t('暂时没有入仓信息')}}
</span>
...
...
@@ -163,10 +164,8 @@
<el-table-column
:label=
"$t('入仓体积')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.volume"
@
change=
"updateField(scope.row, 'volume')"
size=
"mini"
disabled
>
<span
slot=
"append"
>
m³
</span>
</el-input>
</
template
>
{{
scope
.
row
.
volume
}}
m³
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('收费体积')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
...
...
@@ -177,10 +176,8 @@
</el-table-column>
<el-table-column
:label=
"$t('入仓重量')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.weight"
@
change=
"updateField(scope.row, 'weight')"
size=
"mini"
disabled
>
<span
slot=
"append"
>
kg
</span>
</el-input>
</
template
>
{{
scope
.
row
.
weight
}}
kg
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('收费重量')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
...
...
@@ -196,11 +193,8 @@
</el-input>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('箱数')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
@
click=
"showWarehouse(scope.row)"
>
{{
scope
.
row
.
num
}}
</el-button>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('箱数')"
align=
"center"
prop=
"num"
></el-table-column>
<el-table-column
:label=
"$t('数量(个)')"
align=
"center"
prop=
"quantity"
></el-table-column>
<el-table-column
:label=
"$t('操作')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"removeShop(scope.row.id)"
>
{{
$t
(
'
移出
'
)
}}
</el-button>
...
...
@@ -537,7 +531,7 @@ export default {
page
:
1
,
rows
:
20
},
splitItemIndex
:
0
,
//
splitItemIndex:0,
quantitySum
:
0
,
// 当前查看的入仓记录
currentWarehouseRecord
:
null
,
...
...
@@ -597,7 +591,16 @@ export default {
},
// 切换品名需要重置已放入的记录
'
shopForm.orderItemId
'
(){
this
.
shopForm
.
specsRecordVOList
=
[]
// 默认取以前放入的品名
let
split
=
this
.
splitData
.
find
(
item
=>
item
.
id
==
this
.
splitData
[
this
.
splitIndex
].
id
)
this
.
shopForm
.
specsRecordVOList
=
[]
if
(
split
)
{
let
specsRecordVOList
=
split
.
orderSplitItemBackVOList
.
find
(
item
=>
item
.
orderItemId
==
this
.
shopForm
.
orderItemId
)?.
specsRecordVOList
||
[]
specsRecordVOList
.
forEach
(
item
=>
{
const
[
boxGauge1
,
boxGauge2
,
boxGauge3
]
=
item
.
boxGauge
.
split
(
'
*
'
)
this
.
shopForm
.
specsRecordVOList
.
push
({...
item
,
boxGauge1
,
boxGauge2
,
boxGauge3
})
})
}
}
},
computed
:{
...
...
@@ -614,8 +617,8 @@ export default {
},
// 主单数据,也就是拆分剩余的数据,可用来限制拆单放入的最大值
mainOrderItem
(){
if
(
!
this
.
orderItem
.
orderItemId
||
!
this
.
splitData
.
length
||
!
this
.
splitData
[
0
].
orderSplitItemBackVOList
)
return
{}
return
this
.
splitData
[
0
].
orderSplitItemBackVOList
.
find
(
item
=>
item
.
orderItemId
==
this
.
orderItem
.
orderItemId
)
||
{}
if
(
!
this
.
shopForm
.
orderItemId
)
return
{}
return
this
.
orderData
.
orderItemVOList
.
find
(
item
=>
item
.
orderItemId
===
this
.
shopForm
.
orderItemId
)
},
// 剩余可拆数据,父订单的入仓数据 - 全部拆单的品名数据
leftData
(){
...
...
@@ -634,6 +637,11 @@ export default {
this
.
splitData
.
forEach
(
split
=>
{
split
.
orderSplitItemBackVOList
.
forEach
(
splitItem
=>
{
// 正在拆的要排除,不然会重复计算
if
(
splitItem
.
orderItemId
==
this
.
shopForm
.
orderItemId
&&
split
.
id
==
this
.
splitData
[
this
.
splitIndex
].
id
){
return
}
// 每个品名的入仓记录挨个累减其他数据
if
(
splitItem
.
orderItemId
==
this
.
shopForm
.
orderItemId
){
// 每个品名都要累减收费数据
...
...
@@ -718,8 +726,12 @@ export default {
return
warehouseInId
=>
{
let
specsRecordVOList
=
[]
// 这里是全部已放入的
this
.
splitData
.
forEach
(
split
=>
{
this
.
splitData
.
forEach
(
(
split
,
splitIndex
)
=>
{
split
.
orderSplitItemBackVOList
.
forEach
(
splitItem
=>
{
// 当前正在拆的品名不包含,因为后面shopForm.specsRecordVOList会包含
if
(
splitIndex
==
this
.
splitIndex
&&
splitItem
.
orderItemId
==
this
.
shopForm
.
orderItemId
){
return
}
splitItem
.
specsRecordVOList
&&
splitItem
.
specsRecordVOList
.
forEach
(
specs
=>
{
if
(
specs
.
warehouseInId
===
warehouseInId
){
specsRecordVOList
.
push
(
specs
)
...
...
@@ -869,7 +881,7 @@ export default {
})
},
addShop
(
index
){
this
.
splitI
temI
ndex
=
index
this
.
splitIndex
=
index
this
.
shopOpen
=
true
// 重置表单数据
this
.
shopForm
=
{
specsRecordVOList
:[]}
...
...
@@ -972,7 +984,7 @@ export default {
var
params
=
{
num
:
this
.
putin
.
num
,
orderItemId
:
this
.
shopForm
.
orderItemId
,
orderSplitId
:
this
.
splitData
[
this
.
splitI
temI
ndex
].
id
,
orderSplitId
:
this
.
splitData
[
this
.
splitIndex
].
id
,
remark
:
this
.
shopForm
.
remark
,
volume
:
this
.
putin
.
volume
,
chargeVolume
:
this
.
shopForm
.
chargeVolume
,
...
...
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