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
4bd6846c
Commit
4bd6846c
authored
Jun 24, 2024
by
lanbaoming
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev'
parents
6cd3037c
fad5e683
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
626 additions
and
295 deletions
+626
-295
user.js
src/api/system/user.js
+8
-0
pkgPage.vue
src/views/ecw/box/shippingAir/nodePage/mergePkg/pkgPage.vue
+549
-268
edit.vue
src/views/ecw/order/edit.vue
+2
-1
penddingList.vue
src/views/ecw/order/penddingList.vue
+8
-6
pending.vue
src/views/ecw/order/pending.vue
+0
-1
prepayDeal.vue
src/views/ecw/order/prepayDeal.vue
+8
-3
ChooseOrderProducts.vue
...ews/ecw/order/stocking/components/ChooseOrderProducts.vue
+2
-0
Package.vue
src/views/ecw/order/stocking/components/Package.vue
+1
-0
index.vue
src/views/ecw/order/stocking/index.vue
+20
-4
index.vue
src/views/report/customer_analysis/index.vue
+28
-12
No files found.
src/api/system/user.js
View file @
4bd6846c
...
@@ -34,6 +34,14 @@ export function listServiceUser() {
...
@@ -34,6 +34,14 @@ export function listServiceUser() {
method
:
'
get
'
method
:
'
get
'
})
})
}
}
export
function
listServiceUser2
()
{
return
request
({
url
:
'
/system/user/list-service-user
'
,
method
:
'
get
'
})
}
// 获取用户精简信息列表
// 获取用户精简信息列表
export
function
listAllSimpl
(){
export
function
listAllSimpl
(){
return
request
({
return
request
({
...
...
src/views/ecw/box/shippingAir/nodePage/mergePkg/pkgPage.vue
View file @
4bd6846c
...
@@ -3,259 +3,524 @@
...
@@ -3,259 +3,524 @@
<el-row
style=
"margin-top: 25px"
>
<el-row
style=
"margin-top: 25px"
>
<el-row
v-if=
"flag == 'edit'"
class=
"table-title"
>
<el-row
v-if=
"flag == 'edit'"
class=
"table-title"
>
<div>
<div>
<el-button
size=
"small"
type=
"primary"
@
click=
"removeBatch"
>
{{
$t
(
'
批量移出合包
'
)
}}
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"removeBatch"
>
{{
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBox"
>
{{
$t
(
'
封箱
'
)
}}
</el-button>
$t
(
"
批量移出合包
"
)
}}
</el-button>
<!--lanbm 2024-06-20 处理封箱确认对话框带出的体积异常问题-->
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBox"
>
{{
$t
(
"
封箱
"
)
}}
</el-button>
</div>
</div>
<div>
<div>
<template>
<template>
<el-input
v-model=
"qrCode"
:placeholder=
"$t('请输入二维码/条码编号')"
clearable
></el-input>
<el-input
<el-button
type=
"primary"
@
click=
"handlerBatchCreate()"
>
{{
$t
(
'
确定
'
)
}}
</el-button>
v-model=
"qrCode"
<el-button
type=
"primary"
@
click=
"handlerClick('batchInput',$t('批量输入'))"
>
{{
$t
(
'
批量输入
'
)
}}
</el-button>
:placeholder=
"$t('请输入二维码/条码编号')"
<el-button
type=
"primary"
@
click=
"handlerClick('correction',$t('装箱纠错'))"
>
{{
$t
(
'
装箱纠错
'
)
}}
</el-button>
clearable
<el-button
type=
"primary"
@
click=
"handlerClick('correctionOrder',$t('批量装箱纠错'))"
>
{{
$t
(
'
批量装箱纠错
'
)
}}
</el-button>
></el-input>
<el-button
type=
"primary"
@
click=
"handlerBatchCreate()"
>
{{
$t
(
"
确定
"
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"handlerClick('batchInput', $t('批量输入'))"
>
{{
$t
(
"
批量输入
"
)
}}
</el-button
>
<el-button
type=
"primary"
@
click=
"handlerClick('correction', $t('装箱纠错'))"
>
{{
$t
(
"
装箱纠错
"
)
}}
</el-button
>
<el-button
type=
"primary"
@
click=
"handlerClick('correctionOrder', $t('批量装箱纠错'))"
>
{{
$t
(
"
批量装箱纠错
"
)
}}
</el-button
>
</
template
>
</
template
>
</div>
</div>
</el-row>
</el-row>
<el-row
style=
"margin-top: 5px"
>
<el-row
style=
"margin-top: 5px"
>
<el-table
border
:data=
"pagList"
max-height=
"600px"
@
select=
"checkboxSelect"
@
select-all=
"checkboxSelect"
>
<el-table
<el-table-column
type=
"selection"
align=
"center"
width=
"55"
fixed=
"left"
/>
border
<el-table-column
align=
"center"
:label=
"$t('序号')"
width=
"50"
type=
"index"
/>
:data=
"pagList"
max-height=
"600px"
@
select=
"checkboxSelect"
@
select-all=
"checkboxSelect"
>
<el-table-column
type=
"selection"
align=
"center"
width=
"55"
fixed=
"left"
/>
<el-table-column
align=
"center"
:label=
"$t('序号')"
width=
"50"
type=
"index"
/>
<el-table-column
:label=
"$t('订单号')"
align=
"center"
prop=
"orderNo"
>
<el-table-column
:label=
"$t('订单号')"
align=
"center"
prop=
"orderNo"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<router-link
:to=
"
{path: '/order/detail',query: {orderId: scope.row.orderId}}" class="link-type">
<router-link
<span>
{{
scope
.
row
.
orderNo
}}
</span>
:to=
"
{
</router-link>
path: '/order/detail',
query: { orderId: scope.row.orderId },
}"
class="link-type"
>
<span>
{{
scope
.
row
.
orderNo
}}
</span>
</router-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('商品信息')"
width=
"250px"
align=
"center"
>
<el-table-column
:label=
"$t('商品信息')"
width=
"250px"
align=
"center"
>
<
template
slot-scope=
"{ row }"
>
<
template
slot-scope=
"{ row }"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
{{
$l
(
item
,
'
prodTitle
'
)
}}
{{
$l
(
item
,
"
prodTitle
"
)
}}
</div>
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('备案')"
align=
"center"
>
<el-table-column
:label=
"$t('备案')"
align=
"center"
>
<
template
slot-scope=
"{ row }"
>
<
template
slot-scope=
"{ row }"
>
<dict-tag
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value=
"row.productRecord"
/>
<dict-tag
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:value=
"row.productRecord"
/>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('计划/已装')"
align=
"center"
prop=
"sumNum"
>
<el-table-column
:label=
"$t('计划/已装')"
align=
"center"
prop=
"sumNum"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-link
type=
"primary"
@
click.native=
"orderClick(scope.row)"
>
<el-link
type=
"primary"
@
click.native=
"orderClick(scope.row)"
>
{{
scope
.
row
.
sumNum
}}
/
{{
scope
.
row
.
installNum
}}
{{
scope
.
row
.
sumNum
}}
/
{{
scope
.
row
.
installNum
}}
</el-link>
</el-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('纸箱尺寸')"
align=
"center"
>
<el-table-column
:label=
"$t('纸箱尺寸')"
align=
"center"
>
<
template
slot-scope=
"{ row }"
>
<
template
slot-scope=
"{ row }"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
{{
item
.
warehouseInInfoVO
?
item
.
warehouseInInfoVO
.
boxGauge
:
''
}}
{{
item
.
warehouseInInfoVO
?
item
.
warehouseInInfoVO
.
boxGauge
:
""
}}
</div>
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('体积')"
align=
"center"
prop=
"sumVolume"
/>
<el-table-column
<el-table-column
:label=
"$t('重量')"
align=
"center"
prop=
"sumWeight"
/>
:label=
"$t('体积')"
<el-table-column
:label=
"$t('数量(个)')"
align=
"center"
prop=
"sumQuantity"
/>
align=
"center"
<el-table-column
:label=
"$t('储位')"
align=
"center"
prop=
"positionNo"
width=
"250px"
>
prop=
"sumVolume"
/>
<el-table-column
:label=
"$t('重量')"
align=
"center"
prop=
"sumWeight"
/>
<el-table-column
:label=
"$t('数量(个)')"
align=
"center"
prop=
"sumQuantity"
/>
<el-table-column
:label=
"$t('储位')"
align=
"center"
prop=
"positionNo"
width=
"250px"
>
<
template
slot-scope=
"{ row }"
>
<
template
slot-scope=
"{ row }"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
<div
v-for=
"item in row.orderItemDOS"
:key=
"item.orderItemId"
>
{{
(
item
.
warehouseInInfoVO
&&
item
.
warehouseInInfoVO
.
orderLocationMergeVOSet
)?
notset
(
getpositionNo
(
item
.
warehouseInInfoVO
.
orderLocationMergeVOSet
)):
''
}}
{{
item
.
warehouseInInfoVO
&&
item
.
warehouseInInfoVO
.
orderLocationMergeVOSet
?
notset
(
getpositionNo
(
item
.
warehouseInInfoVO
.
orderLocationMergeVOSet
)
)
:
""
}}
</div>
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('理货时间')"
align=
"center"
>
<el-table-column
:label=
"$t('理货时间')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
{{
formatDate
(
scope
.
row
.
tallyTime
,
'
YYYY-MM-DD HH:mm:ss
'
)
}}
{{
formatDate
(
scope
.
row
.
tallyTime
,
"
YYYY-MM-DD HH:mm:ss
"
)
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('操作')"
align=
"center"
width=
"160"
class-name=
"small-padding fixed-width"
>
<el-table-column
:label=
"$t('操作')"
align=
"center"
width=
"160"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"removePkg(scope.row)"
>
{{
$t
(
'
移出
'
)
}}
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"removePkg(scope.row)"
>
{{
$t
(
"
移出
"
)
}}
</el-button
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<!-- 分页组件 -->
<!-- 分页组件 -->
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.rows"
@
pagination=
"getList"
/>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.page"
:limit.sync=
"queryParams.rows"
@
pagination=
"getList"
/>
</el-row>
</el-row>
<!-- 封箱 -->
<!-- 封箱 -->
<el-dialog
:title=
"$t('封箱确认')"
:visible.sync=
"sealBoxdialogVisible"
width=
"800px"
:modal-append-to-body=
"false"
append-to-body
>
<el-dialog
<el-form
ref=
"sealBoxForm"
:model=
"sealBoxForm"
label-width=
"100px"
>
:title=
"$t('封箱确认')"
<el-form-item
:label=
"$t('箱号')"
prop=
"pkgNum"
>
:visible.sync=
"sealBoxdialogVisible"
{{ pkgData.pkgNum }}
width=
"800px"
:modal-append-to-body=
"false"
append-to-body
>
<el-form
ref=
"sealBoxForm"
:model=
"sealBoxForm"
label-width=
"100px"
>
<el-form-item
:label=
"$t('箱号')"
prop=
"pkgNum"
>
{{ pkgData.pkgNum }}
</el-form-item>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('长')"
prop=
"pkgLength"
:rules=
"[
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('长度保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.pkgLength"
style=
"width: 150px"
@
change=
"culSumVolume"
>
<
template
slot=
"append"
>
{{
$t
(
"
cm
"
)
}}
</
template
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('宽')"
prop=
"pkgWidth"
:rules=
"[
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('宽度保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.pkgWidth"
style=
"width: 150px"
@
change=
"culSumVolume"
>
<
template
slot=
"append"
>
{{
$t
(
"
cm
"
)
}}
</
template
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
:label=
"$t('高')"
prop=
"pkgHight"
:rules=
"[
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('高度保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.pkgHight"
style=
"width: 150px"
@
change=
"culSumVolume"
>
<
template
slot=
"append"
>
{{
$t
(
"
cm
"
)
}}
</
template
>
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-form-item
:label=
"$t('体积')"
prop=
"sumVolume"
:rules=
"[
{ required: true, message: $t('请填写体积') },
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('体积保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.sumVolume"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
"
m³
"
)
}}
</
template
>
</el-input>
</el-form-item>
<el-form-item
:label=
"$t('重量')"
prop=
"sumWeight"
:rules=
"[
{ required: true, message: $t('请填写重量') },
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('重量保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.sumWeight"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
"
kg
"
)
}}
</
template
>
</el-input>
</el-form-item>
<el-form-item
:label=
"$t('箱数')"
prop=
"sumNum"
:rules=
"[
{ required: true, message: $t('请填写数量') },
{
pattern:
/^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/,
message: $t('数量保留两位小数'),
},
]"
>
<el-input
v-model=
"sealBoxForm.sumNum"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
"
箱
"
)
}}
</
template
>
</el-input>
</el-form-item>
</el-form>
<div
style=
"text-align: center"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBoxSubmit"
>
{{
$t("确定")
}}
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBoxdialogVisible = false"
>
{{ $t("取消") }}
</el-button
>
</div>
</el-dialog>
<!-- 打印标签 -->
<el-dialog
:title=
"$t('封箱标签')"
:visible.sync=
"printdialogVisible"
width=
"350px"
:modal-append-to-body=
"false"
append-to-body
>
<print-tag
v-if=
"printdialogVisible"
:tagData=
"tagData"
/>
</el-dialog>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog"
:title=
"checkDialogConfig.title"
:visible.sync=
"checkDialogConfig.dialogVisible"
:fullscreen=
"checkDialogConfig.fullscreen"
:width=
"checkDialogConfig.width"
:modal-append-to-body=
"false"
append-to-body
>
<!-- 已装未装订单 -->
<
template
v-if=
"checkDialogConfig.type === 'orderTable'"
>
<el-table
:data=
"orderList"
height=
"500px"
border
>
<el-table-column
:label=
"$t('已装')"
align=
"center"
prop=
"loadTag"
/>
<el-table-column
:label=
"$t('未装')"
align=
"center"
prop=
"unloadTag"
/>
</el-table>
</
template
>
<!-- 装柜纠错 -->
<
template
v-if=
"
checkDialogConfig.type === 'correction' &&
checkDialogConfig.dialogVisible
"
>
<el-form
ref=
"correctionForm"
:rules=
"rules"
:model=
"correctionObj"
label-position=
"top"
>
<el-form-item
:label=
"$t('装柜纠错(二维码/条形码编号)')"
prop=
"qrCode"
>
<el-input
v-model=
"correctionObj.qrCode"
:placeholder=
"$t('请输入二维码/条形码编号')"
clearable
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"delCheck()"
>
{{
$t
(
"
提交
"
)
}}
</el-button>
<el-button
@
click=
"closeDialog2"
>
{{
$t
(
"
取消
"
)
}}
</el-button>
</el-row>
</
template
>
<!-- 批量装柜纠错(订单号) -->
<
template
v-if=
"
checkDialogConfig.type === 'correctionOrder' &&
checkDialogConfig.dialogVisible
"
>
<el-form
ref=
"orderForm"
:rules=
"rules"
:model=
"orderObj"
label-position=
"top"
>
<el-form-item
:label=
"$t('装柜纠错') + '(' + $t('订单号') + ')'"
prop=
"orderNo"
>
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"orderObj.orderNo"
:placeholder=
"$t('请输入,多个以逗号分隔')"
clearable
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"batchDelCheck()"
>
{{
$t
(
"
提交
"
)
}}
</el-button>
<el-button
@
click=
"closeDialog2"
>
{{
$t
(
"
取消
"
)
}}
</el-button>
</el-row>
</
template
>
<!-- 装柜批量输入 -->
<
template
v-if=
"
checkDialogConfig.type === 'batchInput' &&
checkDialogConfig.dialogVisible
"
>
<el-form
ref=
"batchForm"
:rules=
"rules"
:model=
"batchObj"
>
<el-form-item
label=
""
prop=
"qrCode"
class=
"two-element"
>
<el-input
v-model=
"batchObj.qrCode"
:placeholder=
"$t('请输入订单号')"
clearable
/>
<el-button
style=
"marginleft: 10px"
type=
"primary"
@
click=
"queryOrderInfo"
>
{{
$t
(
"
确定
"
)
}}
</el-button
>
</el-form-item>
</el-form-item>
<el-row>
<el-row>
<el-col
:span=
"8"
>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('长')"
prop=
"pkgLength"
:rules=
"[
<el-form-item
:label=
"$t('订单号')"
>
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('长度保留两位小数')}
{{
boxOrderInfo
.
orderNo
}}
]"
>
</el-form-item>
<el-input
v-model=
"sealBoxForm.pkgLength"
style=
"width: 150px"
@
change=
"culSumVolume"
>
</el-col>
<
template
slot=
"append"
>
<el-col
:span=
"12"
>
{{
$t
(
'
cm
'
)
}}
<el-form-item
:label=
"$t('箱数')"
>
</
template
>
<el-input-number
</el-input>
v-if=
"boxOrderInfo.isExternalWarehouse === 1"
v-model=
"batchObj.boxNum"
:min=
"0"
:max=
"boxOrderInfo.num"
/>
<template
v-else
>
{{
boxOrderInfo
.
num
}}
</
template
>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"8"
>
</el-row>
<el-form-item
:label=
"$t('宽')"
prop=
"pkgWidth"
:rules=
"[
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('宽度保留两位小数')}
<el-row>
]"
>
<el-col
:span=
"12"
>
<el-input
v-model=
"sealBoxForm.pkgWidth"
style=
"width: 150px"
@
change=
"culSumVolume"
>
<el-form-item
:label=
"$t('方数')"
>
<
template
slot=
"append"
>
{{ getTotlContent(boxOrderInfo, ["volume"]) }}
{{
$t
(
'
cm
'
)
}}
</
template
>
</el-input>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('高')"
prop=
"pkgHight"
:rules=
"[
<el-form-item
:label=
"$t('重量')"
>
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('高度保留两位小数')}
{{ getTotlContent(boxOrderInfo, ["weight"]) }}
]"
>
<el-input
v-model=
"sealBoxForm.pkgHight"
style=
"width: 150px"
@
change=
"culSumVolume"
>
<
template
slot=
"append"
>
{{
$t
(
'
cm
'
)
}}
</
template
>
</el-input>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
</el-row>
<el-form-item
:label=
"$t('体积')"
prop=
"sumVolume"
:rules=
"[
{ required: true, message: $t('请填写体积')},
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('体积保留两位小数')}
]"
>
<el-input
v-model=
"sealBoxForm.sumVolume"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
'
m³
'
)
}}
</
template
>
</el-input>
</el-form-item>
<el-form-item
:label=
"$t('重量')"
prop=
"sumWeight"
:rules=
"[
{ required: true, message: $t('请填写重量')},
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('重量保留两位小数')}
]"
>
<el-input
v-model=
"sealBoxForm.sumWeight"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
'
kg
'
)
}}
</
template
>
</el-input>
</el-form-item>
<el-form-item
:label=
"$t('箱数')"
prop=
"sumNum"
:rules=
"[
{ required: true, message: $t('请填写数量')},
{ pattern: /^((0{1}\.\d{1,2})|([1-9]\d*\.{1}\d{1,2})|([1-9]+\d*))$/, message: $t('数量保留两位小数')}
]"
>
<el-input
v-model=
"sealBoxForm.sumNum"
style=
"width: 180px"
>
<
template
slot=
"append"
>
{{
$t
(
'
箱
'
)
}}
</
template
>
</el-input>
</el-form-item>
</el-form>
</el-form>
<div
style=
"text-align: center"
>
<el-row
class=
"operate-button"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBoxSubmit"
>
{{ $t('确定') }}
</el-button>
<el-button
<el-button
size=
"small"
type=
"primary"
@
click=
"sealBoxdialogVisible = false"
>
{{ $t('取消') }}
</el-button>
type=
"primary"
</div>
:disabled=
"boxOrderInfo.orderId ? false : true"
</el-dialog>
@
click=
"batchLoad"
<!-- 打印标签 -->
>
{{ $t("提交") }}
</el-button
<el-dialog
:title=
"$t('封箱标签')"
:visible.sync=
"printdialogVisible"
width=
"350px"
:modal-append-to-body=
"false"
append-to-body
>
>
<print-tag
v-if=
"printdialogVisible"
:tagData=
"tagData"
/>
<el-button
@
click=
"closeDialog2"
>
{{ $t("取消") }}
</el-button>
</el-dialog>
<!-- 对话框 -->
<el-dialog
custom-class=
"shipping-dialog"
:title=
"checkDialogConfig.title"
:visible.sync=
"checkDialogConfig.dialogVisible"
:fullscreen=
"checkDialogConfig.fullscreen"
:width=
"checkDialogConfig.width"
:modal-append-to-body=
false
append-to-body
>
<!-- 已装未装订单 -->
<
template
v-if=
"checkDialogConfig.type === 'orderTable'"
>
<el-table
:data=
"orderList"
height=
"500px"
border
>
<el-table-column
:label=
"$t('已装')"
align=
"center"
prop=
"loadTag"
/>
<el-table-column
:label=
"$t('未装')"
align=
"center"
prop=
"unloadTag"
/>
</el-table>
</
template
>
<!-- 装柜纠错 -->
<
template
v-if=
"checkDialogConfig.type === 'correction' && checkDialogConfig.dialogVisible"
>
<el-form
ref=
"correctionForm"
:rules=
"rules"
:model=
"correctionObj"
label-position=
"top"
>
<el-form-item
:label=
"$t('装柜纠错(二维码/条形码编号)')"
prop=
"qrCode"
>
<el-input
v-model=
"correctionObj.qrCode"
:placeholder=
"$t('请输入二维码/条形码编号')"
clearable
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"delCheck()"
>
{{
$t
(
'
提交
'
)
}}
</el-button>
<el-button
@
click=
"closeDialog2"
>
{{
$t
(
'
取消
'
)
}}
</el-button>
</el-row>
</
template
>
<!-- 批量装柜纠错(订单号) -->
<
template
v-if=
"checkDialogConfig.type === 'correctionOrder' && checkDialogConfig.dialogVisible"
>
<el-form
ref=
"orderForm"
:rules=
"rules"
:model=
"orderObj"
label-position=
"top"
>
<el-form-item
:label=
"$t('装柜纠错') +'(' + $t('订单号') + ')'"
prop=
"orderNo"
>
<el-input
type=
"textarea"
:rows=
"3"
v-model=
"orderObj.orderNo"
:placeholder=
"$t('请输入,多个以逗号分隔')"
clearable
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
@
click=
"batchDelCheck()"
>
{{
$t
(
'
提交
'
)
}}
</el-button>
<el-button
@
click=
"closeDialog2"
>
{{
$t
(
'
取消
'
)
}}
</el-button>
</el-row>
</
template
>
<!-- 装柜批量输入 -->
<
template
v-if=
"checkDialogConfig.type === 'batchInput' && checkDialogConfig.dialogVisible"
>
<el-form
ref=
"batchForm"
:rules=
"rules"
:model=
"batchObj"
>
<el-form-item
label=
""
prop=
"qrCode"
class=
"two-element"
>
<el-input
v-model=
"batchObj.qrCode"
:placeholder=
"$t('请输入订单号')"
clearable
/>
<el-button
style=
"marginLeft:10px;"
type=
"primary"
@
click=
"queryOrderInfo"
>
{{
$t
(
'
确定
'
)
}}
</el-button>
</el-form-item>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('订单号')"
>
{{
boxOrderInfo
.
orderNo
}}
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('箱数')"
>
<el-input-number
v-if=
"boxOrderInfo.isExternalWarehouse === 1"
v-model=
"batchObj.boxNum"
:min=
"0"
:max=
"boxOrderInfo.num"
/>
<template
v-else
>
{{
boxOrderInfo
.
num
}}
</
template
>
</el-form-item>
</el-col>
</el-row>
</el-row>
</template>
<el-row>
</el-dialog>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('方数')"
>
{{getTotlContent(boxOrderInfo, ['volume'])}}
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
:label=
"$t('重量')"
>
{{getTotlContent(boxOrderInfo, ['weight'])}}
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-row
class=
"operate-button"
>
<el-button
type=
"primary"
:disabled=
"boxOrderInfo.orderId ? false : true"
@
click=
"batchLoad"
>
{{$t('提交')}}
</el-button>
<el-button
@
click=
"closeDialog2"
>
{{$t('取消')}}
</el-button>
</el-row>
</template>
</el-dialog>
</el-row>
</el-row>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
getPkgPageByPkgId
,
deleteRelate
,
deleteBatchRelate
,
getMergePkgInfoById
,
updateMergePkg
,
getMergeTagById
,
checkInfoSingleCreate
,
checkInfoBatchCreate
,
getOrderTagList
,
checkInfoSingleDelete
,
checkInfoBatchDelete
}
from
'
@/api/ecw/boxAir
'
import
{
import
{
formatDate
,
serviceMsg
,
getTotlContent
}
from
'
../../utils
'
getPkgPageByPkgId
,
deleteRelate
,
deleteBatchRelate
,
getMergePkgInfoById
,
updateMergePkg
,
getMergeTagById
,
checkInfoSingleCreate
,
checkInfoBatchCreate
,
getOrderTagList
,
checkInfoSingleDelete
,
checkInfoBatchDelete
,
}
from
"
@/api/ecw/boxAir
"
;
import
{
formatDate
,
serviceMsg
,
getTotlContent
}
from
"
../../utils
"
;
import
{
getOrderDetailByBoxNo
}
from
"
@/api/ecw/boxSea
"
;
import
{
getOrderDetailByBoxNo
}
from
"
@/api/ecw/boxSea
"
;
import
printTag
from
'
./printTag.vue
'
import
printTag
from
"
./printTag.vue
"
;
export
default
{
export
default
{
props
:
{
props
:
{
pkgData
:
Object
,
pkgData
:
Object
,
shipmentObj
:
Object
,
shipmentObj
:
Object
,
flag
:
{
flag
:
{
type
:
String
,
type
:
String
,
default
:
'
edit
'
default
:
"
edit
"
,
}
}
,
},
},
components
:
{
components
:
{
printTag
printTag
,
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -263,7 +528,7 @@ export default {
...
@@ -263,7 +528,7 @@ export default {
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
page
:
1
,
page
:
1
,
rows
:
10
rows
:
10
,
},
},
total
:
0
,
total
:
0
,
// 勾选行
// 勾选行
...
@@ -302,105 +567,115 @@ export default {
...
@@ -302,105 +567,115 @@ export default {
},
},
// 已理/未理
// 已理/未理
orderList
:
[],
orderList
:
[],
}
}
;
},
},
created
()
{
created
()
{
this
.
getList
()
this
.
getList
()
;
},
},
methods
:
{
methods
:
{
getList
()
{
getList
()
{
let
queryParams
=
{
let
queryParams
=
{
id
:
this
.
pkgData
.
id
,
id
:
this
.
pkgData
.
id
,
shipmentId
:
this
.
shipmentObj
.
id
,
shipmentId
:
this
.
shipmentObj
.
id
,
...
this
.
queryParams
...
this
.
queryParams
,
}
}
;
getPkgPageByPkgId
(
queryParams
).
then
((
res
)
=>
{
getPkgPageByPkgId
(
queryParams
).
then
((
res
)
=>
{
this
.
pagList
=
res
.
data
.
list
this
.
pagList
=
res
.
data
.
list
;
this
.
total
=
res
.
data
.
total
this
.
total
=
res
.
data
.
total
;
console
.
log
(
this
.
pagList
,
'
222
'
);
console
.
log
(
this
.
pagList
,
"
222
"
);
})
})
;
},
},
// 格式化日期
// 格式化日期
formatDate
,
formatDate
,
getTotlContent
,
getTotlContent
,
//去重
//去重
notset
(
string
)
{
notset
(
string
)
{
if
(
!
string
)
return
string
if
(
!
string
)
return
string
;
let
arr
=
string
.
split
(
'
,
'
)
let
arr
=
string
.
split
(
"
,
"
);
arr
=
arr
.
filter
((
item
,
index
)
=>
{
arr
=
arr
.
filter
((
item
,
index
)
=>
{
return
arr
.
indexOf
(
item
)
==
index
return
arr
.
indexOf
(
item
)
==
index
;
})
})
;
return
arr
.
toString
()
return
arr
.
toString
()
;
},
},
//计算封箱体积
//计算封箱体积
culSumVolume
()
{
culSumVolume
()
{
let
temp
=
this
.
sealBoxForm
.
pkgLength
*
this
.
sealBoxForm
.
pkgWidth
*
0.01
*
0.01
let
temp
=
let
sumVolume
=
this
.
accMul
(
temp
,
this
.
sealBoxForm
.
pkgHight
*
0.01
)
this
.
sealBoxForm
.
pkgLength
*
this
.
sealBoxForm
.
pkgWidth
*
0.01
*
0.01
;
if
(
sumVolume
<=
0
){
let
sumVolume
=
this
.
accMul
(
temp
,
this
.
sealBoxForm
.
pkgHight
*
0.01
);
sumVolume
=
0.01
if
(
sumVolume
<=
0
)
{
sumVolume
=
0.01
;
}
}
this
.
$set
(
this
.
sealBoxForm
,
'
sumVolume
'
,
sumVolume
)
this
.
$set
(
this
.
sealBoxForm
,
"
sumVolume
"
,
sumVolume
);
},
},
accMul
(
arg1
,
arg2
)
accMul
(
arg1
,
arg2
)
{
{
var
m
=
0
,
var
m
=
0
,
s1
=
arg1
.
toString
(),
s2
=
arg2
.
toString
();
s1
=
arg1
.
toString
(),
try
{
m
+=
s1
.
split
(
"
.
"
)[
1
].
length
}
catch
(
e
){}
s2
=
arg2
.
toString
();
try
{
m
+=
s2
.
split
(
"
.
"
)[
1
].
length
}
catch
(
e
){}
try
{
let
num
=
Number
(
s1
.
replace
(
"
.
"
,
""
))
*
Number
(
s2
.
replace
(
"
.
"
,
""
))
/
Math
.
pow
(
10
,
m
)
m
+=
s1
.
split
(
"
.
"
)[
1
].
length
;
return
num
.
toFixed
(
2
)
}
catch
(
e
)
{}
try
{
m
+=
s2
.
split
(
"
.
"
)[
1
].
length
;
}
catch
(
e
)
{}
let
num
=
(
Number
(
s1
.
replace
(
"
.
"
,
""
))
*
Number
(
s2
.
replace
(
"
.
"
,
""
)))
/
Math
.
pow
(
10
,
m
);
return
num
.
toFixed
(
2
);
},
},
getpositionNo
(
arr
){
getpositionNo
(
arr
)
{
if
(
!
arr
)
return
arr
if
(
!
arr
)
return
arr
;
let
data
=
[]
let
data
=
[]
;
arr
.
forEach
(
item
=>
{
arr
.
forEach
(
(
item
)
=>
{
data
.
push
(
item
.
areaName
+
item
.
locationName
)
data
.
push
(
item
.
areaName
+
item
.
locationName
);
})
})
;
return
data
.
toString
()
return
data
.
toString
()
;
},
},
removePkg
(
row
)
{
removePkg
(
row
)
{
deleteRelate
(
this
.
pkgData
.
id
,
row
.
orderId
).
then
(()
=>
{
deleteRelate
(
this
.
pkgData
.
id
,
row
.
orderId
).
then
(()
=>
{
this
.
$message
.
success
(
this
.
$t
(
'
移出成功
'
))
this
.
$message
.
success
(
this
.
$t
(
"
移出成功
"
));
this
.
getList
()
this
.
getList
()
;
this
.
$emit
(
'
reload
'
)
this
.
$emit
(
"
reload
"
);
})
})
;
},
},
// 选中
// 选中
checkboxSelect
(
selection
)
{
checkboxSelect
(
selection
)
{
this
.
selectedRows
=
selection
this
.
selectedRows
=
selection
;
},
},
removeBatch
()
{
removeBatch
()
{
if
(
this
.
selectedRows
.
length
===
0
)
{
if
(
this
.
selectedRows
.
length
===
0
)
{
this
.
$message
.
error
(
this
.
$t
(
'
请选择需要移出的订单
'
))
this
.
$message
.
error
(
this
.
$t
(
"
请选择需要移出的订单
"
));
return
return
;
}
}
let
data
=
[]
let
data
=
[]
;
this
.
selectedRows
.
forEach
((
item
)
=>
{
this
.
selectedRows
.
forEach
((
item
)
=>
{
let
json
=
{
let
json
=
{
pkgId
:
this
.
pkgData
.
id
,
pkgId
:
this
.
pkgData
.
id
,
orderId
:
item
.
orderId
orderId
:
item
.
orderId
,
}
}
;
data
.
push
(
json
)
data
.
push
(
json
)
;
})
})
;
deleteBatchRelate
(
data
).
then
(()
=>
{
deleteBatchRelate
(
data
).
then
(()
=>
{
this
.
$message
.
success
(
this
.
$t
(
'
移出成功
'
))
this
.
$message
.
success
(
this
.
$t
(
"
移出成功
"
));
this
.
getList
()
this
.
getList
()
;
})
})
;
},
},
//封箱
//封箱
sealBox
()
{
sealBox
()
{
let
flag
=
false
let
flag
=
false
;
let
orderNo
=
''
let
orderNo
=
""
;
this
.
pagList
.
forEach
(
item
=>
{
this
.
pagList
.
forEach
(
(
item
)
=>
{
if
(
item
.
installNum
!=
item
.
sumNum
)
{
if
(
item
.
installNum
!=
item
.
sumNum
)
{
flag
=
true
flag
=
true
;
orderNo
=
orderNo
+
'
《
'
+
item
.
orderNo
+
'
》
'
orderNo
=
orderNo
+
"
《
"
+
item
.
orderNo
+
"
》
"
;
}
}
})
});
if
(
flag
){
if
(
flag
)
{
this
.
$message
.
error
(
this
.
$t
(
`订单号
${
orderNo
}
未完成装箱,请完成全部订单装箱后重试`
));
this
.
$message
.
error
(
this
.
$t
(
`订单号
${
orderNo
}
未完成装箱,请完成全部订单装箱后重试`
)
);
return
;
return
;
}
}
getMergePkgInfoById
(
this
.
pkgData
.
id
).
then
(
res
=>
{
getMergePkgInfoById
(
this
.
pkgData
.
id
).
then
(
(
res
)
=>
{
this
.
sealBoxForm
=
{
this
.
sealBoxForm
=
{
pkgHight
:
res
.
data
.
pkgHight
,
pkgHight
:
res
.
data
.
pkgHight
,
pkgLength
:
res
.
data
.
pkgLength
,
pkgLength
:
res
.
data
.
pkgLength
,
...
@@ -408,35 +683,41 @@ export default {
...
@@ -408,35 +683,41 @@ export default {
sumNum
:
res
.
data
.
sumNum
,
sumNum
:
res
.
data
.
sumNum
,
sumVolume
:
res
.
data
.
sumVolume
,
sumVolume
:
res
.
data
.
sumVolume
,
sumWeight
:
res
.
data
.
sumWeight
,
sumWeight
:
res
.
data
.
sumWeight
,
}
}
;
this
.
sealBoxdialogVisible
=
true
this
.
sealBoxdialogVisible
=
true
;
})
})
;
},
},
sealBoxSubmit
()
{
sealBoxSubmit
()
{
this
.
$refs
[
'
sealBoxForm
'
].
validate
((
valid
)
=>
{
this
.
$refs
[
"
sealBoxForm
"
].
validate
((
valid
)
=>
{
if
(
!
valid
)
{
if
(
!
valid
)
{
return
return
;
}
}
this
.
sealBoxForm
.
shipmentId
=
this
.
shipmentObj
.
id
this
.
sealBoxForm
.
shipmentId
=
this
.
shipmentObj
.
id
;
this
.
sealBoxForm
.
id
=
this
.
pkgData
.
id
this
.
sealBoxForm
.
id
=
this
.
pkgData
.
id
;
this
.
sealBoxForm
.
status
=
3
this
.
sealBoxForm
.
status
=
3
;
updateMergePkg
(
this
.
sealBoxForm
).
then
(()
=>
{
updateMergePkg
(
this
.
sealBoxForm
).
then
(()
=>
{
this
.
sealBoxdialogVisible
=
false
this
.
sealBoxdialogVisible
=
false
;
this
.
$confirm
(
this
.
$t
(
'
箱号:
'
)
+
this
.
pkgData
.
pkgNum
+
this
.
$t
(
'
,请问是否打印封箱标签?
'
),
this
.
$t
(
"
封箱成功
"
),
{
this
.
$confirm
(
confirmButtonText
:
this
.
$t
(
'
立刻打印
'
),
this
.
$t
(
"
箱号:
"
)
+
cancelButtonText
:
this
.
$t
(
'
稍后再试
'
),
this
.
pkgData
.
pkgNum
+
})
this
.
$t
(
"
,请问是否打印封箱标签?
"
),
.
then
((
_
)
=>
{
this
.
$t
(
"
封箱成功
"
),
getMergeTagById
(
this
.
pkgData
.
id
).
then
(
res
=>
{
{
this
.
tagData
=
res
.
data
confirmButtonText
:
this
.
$t
(
"
立刻打印
"
),
this
.
printdialogVisible
=
true
cancelButtonText
:
this
.
$t
(
"
稍后再试
"
),
})
}
})
)
.
catch
((
_
)
=>
{
.
then
((
_
)
=>
{
this
.
$emit
(
'
closeDialog
'
);
getMergeTagById
(
this
.
pkgData
.
id
).
then
((
res
)
=>
{
});
this
.
tagData
=
res
.
data
;
})
this
.
printdialogVisible
=
true
;
})
});
})
.
catch
((
_
)
=>
{
this
.
$emit
(
"
closeDialog
"
);
});
});
});
},
},
/** 表格订单号点击 */
/** 表格订单号点击 */
orderClick
(
row
)
{
orderClick
(
row
)
{
...
@@ -543,7 +824,7 @@ export default {
...
@@ -543,7 +824,7 @@ export default {
orderNo
:
this
.
boxOrderInfo
.
orderNo
,
orderNo
:
this
.
boxOrderInfo
.
orderNo
,
shipmentId
:
this
.
shipmentObj
.
id
,
shipmentId
:
this
.
shipmentObj
.
id
,
pkgId
:
this
.
pkgData
.
id
,
pkgId
:
this
.
pkgData
.
id
,
type
:
1
type
:
1
,
};
};
checkInfoBatchCreate
(
params
).
then
((
res
)
=>
{
checkInfoBatchCreate
(
params
).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
...
@@ -563,7 +844,7 @@ export default {
...
@@ -563,7 +844,7 @@ export default {
shipmentId
:
this
.
shipmentObj
.
id
,
shipmentId
:
this
.
shipmentObj
.
id
,
type
:
1
,
type
:
1
,
pkgId
:
this
.
pkgData
.
id
,
pkgId
:
this
.
pkgData
.
id
,
orderNumCode
:
this
.
correctionObj
.
qrCode
orderNumCode
:
this
.
correctionObj
.
qrCode
,
};
};
checkInfoSingleDelete
(
params
).
then
((
res
)
=>
{
checkInfoSingleDelete
(
params
).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
...
@@ -582,7 +863,7 @@ export default {
...
@@ -582,7 +863,7 @@ export default {
shipmentId
:
this
.
shipmentObj
.
id
,
shipmentId
:
this
.
shipmentObj
.
id
,
pkgId
:
this
.
pkgData
.
id
,
pkgId
:
this
.
pkgData
.
id
,
type
:
1
,
type
:
1
,
orderNo
:
this
.
orderObj
.
orderNo
orderNo
:
this
.
orderObj
.
orderNo
,
};
};
checkInfoBatchDelete
(
params
).
then
((
res
)
=>
{
checkInfoBatchDelete
(
params
).
then
((
res
)
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
serviceMsg
(
res
,
this
).
then
(()
=>
{
...
@@ -590,9 +871,9 @@ export default {
...
@@ -590,9 +871,9 @@ export default {
this
.
getList
();
this
.
getList
();
});
});
});
});
}
}
,
}
}
,
}
}
;
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/ecw/order/edit.vue
View file @
4bd6846c
...
@@ -159,7 +159,8 @@
...
@@ -159,7 +159,8 @@
</el-card>
</el-card>
<el-card
class=
"mt-10"
>
<el-card
class=
"mt-10"
>
<div
slot=
"header"
class=
"card-title"
>
<div
slot=
"header"
class=
"card-title"
>
<div
class=
"card-name"
>
{{
$t
(
'
商品信息
'
)
}}
</div>
<!--lanbm 根据需求文档改 商品信息 为 商品 -->
<div
class=
"card-name"
>
{{
$t
(
'
商品
'
)
}}
</div>
<el-button
type=
"primary"
size=
"mini"
@
click=
"addProduct(null)"
:disabled=
"!canAddProduct || !productEditable || updateChannel"
>
{{
$t
(
'
添加货物
'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"addProduct(null)"
:disabled=
"!canAddProduct || !productEditable || updateChannel"
>
{{
$t
(
'
添加货物
'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"showBatchImportDialog=true"
:disabled=
"!canAddProduct || !productEditable || updateChannel"
>
{{
$t
(
'
批量添加货物
'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"showBatchImportDialog=true"
:disabled=
"!canAddProduct || !productEditable || updateChannel"
>
{{
$t
(
'
批量添加货物
'
)
}}
</el-button>
</div>
</div>
...
...
src/views/ecw/order/penddingList.vue
View file @
4bd6846c
<!--空运待出列表-->
<!--空运待出列表-->
<
template
>
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<!-- 搜索工作栏 -->
<!-- 搜索工作栏 -->
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
>
<el-form-item
:label=
"$t('编号')"
prop=
"orderNo"
>
<el-form-item
:label=
"$t('编号')"
prop=
"orderNo"
>
...
@@ -42,21 +41,23 @@
...
@@ -42,21 +41,23 @@
<el-form-item
:label=
"$t('商品')"
prop=
"tidanNo"
>
<el-form-item
:label=
"$t('商品')"
prop=
"tidanNo"
>
<el-input
v-model=
"queryParams.prodKey"
:placeholder=
"$t('请输入商品类型、品名或品牌')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.prodKey"
:placeholder=
"$t('请输入商品类型、品名或品牌')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<!--根据需求文档 lanbm 2024-06-23 隐藏
<el-form-item
:label=
"$t('控货')"
prop=
"isCargoControl"
>
<el-form-item
:label=
"$t('控货')"
prop=
"isCargoControl"
>
<dict-selector
v-model=
"queryParams.isCargoControl"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
clearable
/>
<dict-selector
v-model=
"queryParams.isCargoControl"
:type=
"DICT_TYPE.INFRA_BOOLEAN_STRING"
fomatter=
"bool"
clearable
/>
</el-form-item>
</el-form-item>
-->
<!--根据需求文档 lanbm 2024-06-23 隐藏
<el-form-item
:label=
"$t('入仓类型')"
prop=
"warehouseType"
>
<el-form-item
:label=
"$t('入仓类型')"
prop=
"warehouseType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"queryParams.warehouseType"
clearable
/>
<dict-selector
:type=
"DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model=
"queryParams.warehouseType"
clearable
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
:label=
"$t('客户经理')"
>
<el-form-item
:label=
"$t('客户经理')"
>
<user-selector
manage
v-model=
"queryParams.salesmanId"
clearable
@
change=
"handleQuery"
<user-selector
manage
v-model=
"queryParams.salesmanId"
clearable
@
change=
"handleQuery"
:prepend=
"
{ id: 0, nickname: $t('未分配客户经理')}"/>
:prepend=
"
{ id: 0, nickname: $t('未分配客户经理')}"/>
</el-form-item>
</el-form-item>
<!--根据需求文档 lanbm 2024-06-23 隐藏
<el-form-item
:label=
"$t('订单状态')"
prop=
"status"
>
<el-form-item
:label=
"$t('订单状态')"
prop=
"status"
>
<dict-selector
:type=
"DICT_TYPE.ORDER_STATUS"
v-model=
"queryParams.status"
<dict-selector
:type=
"DICT_TYPE.ORDER_STATUS"
v-model=
"queryParams.status"
@
keyup.enter.native=
"handleQuery"
clearable
/>
@
keyup.enter.native=
"handleQuery"
clearable
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
:label=
"$t('报关方式')"
prop=
"customsType"
>
<el-form-item
:label=
"$t('报关方式')"
prop=
"customsType"
>
<dict-selector
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model=
"queryParams.customsType"
clearable
@
change=
"handleQuery"
/>
<dict-selector
:type=
"DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model=
"queryParams.customsType"
clearable
@
change=
"handleQuery"
/>
</el-form-item>
</el-form-item>
...
@@ -68,9 +69,10 @@
...
@@ -68,9 +69,10 @@
<el-form-item
:label=
"$t('备案属性')"
prop=
"productRecord"
>
<el-form-item
:label=
"$t('备案属性')"
prop=
"productRecord"
>
<dict-selector
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
v-model=
"queryParams.productRecord"
clearable
@
change=
"handleQuery"
/>
<dict-selector
:type=
"DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
v-model=
"queryParams.productRecord"
clearable
@
change=
"handleQuery"
/>
</el-form-item>
</el-form-item>
<!--lanbm 2024-06-23 根据需求文档隐藏
<el-form-item
:label=
"$t('快递单号')"
prop=
"number"
>
<el-form-item
:label=
"$t('快递单号')"
prop=
"number"
>
<el-input
v-model=
"queryParams.number"
:placeholder=
"$t('快递单号')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.number"
:placeholder=
"$t('快递单号')"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
:label=
"$t('外部仓')"
prop=
"number"
>
<el-form-item
:label=
"$t('外部仓')"
prop=
"number"
>
<el-select
v-model=
"queryParams.isExternalWarehouse"
:placeholder=
"$t('请选择')"
clearable
@
change=
"handleQuery"
>
<el-select
v-model=
"queryParams.isExternalWarehouse"
:placeholder=
"$t('请选择')"
clearable
@
change=
"handleQuery"
>
<el-option
:label=
"$t('外部仓')"
:value=
"1"
></el-option>
<el-option
:label=
"$t('外部仓')"
:value=
"1"
></el-option>
...
...
src/views/ecw/order/pending.vue
View file @
4bd6846c
...
@@ -83,7 +83,6 @@
...
@@ -83,7 +83,6 @@
{{
currencyMap
[
row
.
orderExceptionAmountCurrencyId
]
}}
{{
currencyMap
[
row
.
orderExceptionAmountCurrencyId
]
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('状态')"
align=
"center"
>
<el-table-column
:label=
"$t('状态')"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.ORDER_EXCEPTION_STATUS"
:value=
"scope.row.orderExceptionStatus"
/>
<dict-tag
:type=
"DICT_TYPE.ORDER_EXCEPTION_STATUS"
:value=
"scope.row.orderExceptionStatus"
/>
...
...
src/views/ecw/order/prepayDeal.vue
View file @
4bd6846c
...
@@ -1970,8 +1970,6 @@
...
@@ -1970,8 +1970,6 @@
>
{{
currencyMap
[
scope
.
row
.
clearanceFreightCurrency
]
}}
/
>
{{
currencyMap
[
scope
.
row
.
clearanceFreightCurrency
]
}}
/
{{
unitMap
[
scope
.
row
.
clearanceFreightVolume
]
}}
<
/spa
n
{{
unitMap
[
scope
.
row
.
clearanceFreightVolume
]
}}
<
/spa
n
>
>
<!--
<
selector
v
-
model
=
"
scope.row.clearanceFreightCurrency
"
:
options
=
"
currencyList
"
:
label
-
field
=
"
$l('title')
"
value
-
field
=
"
id
"
defaultable2
class
=
"
w100
"
/>
/ <selector v-model="scope.row.clearanceFreightVolume" :options="unitList" :label-field="$l
(
'title'
)
" value-field="id" defaultable2 class="w100" /
>
-->
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
v
-
else
>
<
div
v
-
else
>
...
@@ -2557,6 +2555,7 @@ export default {
...
@@ -2557,6 +2555,7 @@ export default {
this
.
orderExceptionData
.
orderExceptionType
==
this
.
orderExceptionData
.
orderExceptionType
==
"
not_shipping_channel_exception
"
"
not_shipping_channel_exception
"
)
{
)
{
//not_shipping_channel_exception 不可出渠道异常
this
.
selectLine
=
this
.
routerList
.
find
(
this
.
selectLine
=
this
.
routerList
.
find
(
(
item
)
=>
item
.
id
==
this
.
handlerParams
.
lineId
(
item
)
=>
item
.
id
==
this
.
handlerParams
.
lineId
);
);
...
@@ -2568,6 +2567,7 @@ export default {
...
@@ -2568,6 +2567,7 @@ export default {
}
,
}
,
//订单详情
//订单详情
getOrderData
()
{
getOrderData
()
{
//not_shipping_channel_exception 不可出渠道异常
getOrder
(
this
.
orderId
).
then
((
response
)
=>
{
getOrder
(
this
.
orderId
).
then
((
response
)
=>
{
this
.
orderData
=
response
.
data
;
this
.
orderData
=
response
.
data
;
if
(
this
.
orderData
.
channelId
!=
0
)
{
if
(
this
.
orderData
.
channelId
!=
0
)
{
...
@@ -3071,11 +3071,12 @@ export default {
...
@@ -3071,11 +3071,12 @@ export default {
if
(
!
item
.
prodId
)
{
if
(
!
item
.
prodId
)
{
calcable
=
false
;
calcable
=
false
;
}
}
//alert(item.oneClearanceFreight);
}
);
}
);
console
.
log
(
"
calculationPrice
"
,
this
.
handlerParams
.
channelId
);
console
.
log
(
"
calculationPrice
"
,
this
.
handlerParams
.
channelId
);
if
(
this
.
calculating
||
!
calcable
)
return
false
;
if
(
this
.
calculating
||
!
calcable
)
return
false
;
this
.
calculating
=
true
;
this
.
calculating
=
true
;
console
.
log
(
"
calculating --->
"
);
//
console.log("calculating ---> ");
const
params
=
{
const
params
=
{
lineId
:
this
.
handlerParams
.
lineId
,
lineId
:
this
.
handlerParams
.
lineId
,
transportId
:
this
.
orderData
.
transportId
,
transportId
:
this
.
orderData
.
transportId
,
...
@@ -3093,8 +3094,10 @@ export default {
...
@@ -3093,8 +3094,10 @@ export default {
calculationPrice
(
params
)
calculationPrice
(
params
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
this
.
orderData
.
orderItemVOList
.
map
((
item
,
index
)
=>
{
this
.
orderData
.
orderItemVOList
.
map
((
item
,
index
)
=>
{
//清关价问题关键点在这,后台获取的值的变量名称换了
item
.
oneClearanceFreight
=
item
.
oneClearanceFreight
=
res
.
data
.
prodCostDtoList
[
index
].
oneClearanceFee
;
res
.
data
.
prodCostDtoList
[
index
].
oneClearanceFee
;
//alert( item.oneClearanceFreight);
item
.
clearanceFreightCurrency
=
item
.
clearanceFreightCurrency
=
res
.
data
.
prodCostDtoList
[
index
].
clearanceFeeCurrency
;
res
.
data
.
prodCostDtoList
[
index
].
clearanceFeeCurrency
;
item
.
clearanceFreightVolume
=
item
.
clearanceFreightVolume
=
...
@@ -3120,6 +3123,8 @@ export default {
...
@@ -3120,6 +3123,8 @@ export default {
if
(
!
tmp
.
quantity
)
tmp
.
quantity
=
1
;
if
(
!
tmp
.
quantity
)
tmp
.
quantity
=
1
;
if
(
!
tmp
.
num
)
tmp
.
num
=
1
;
if
(
!
tmp
.
num
)
tmp
.
num
=
1
;
tmp
.
orderType
=
item
.
orderItemType
;
tmp
.
orderType
=
item
.
orderItemType
;
//lanbm 2024-06-22 包装类型
tmp
.
packaging
=
item
.
unit
;
arr
.
push
(
tmp
);
arr
.
push
(
tmp
);
}
);
}
);
return
arr
;
return
arr
;
...
...
src/views/ecw/order/stocking/components/ChooseOrderProducts.vue
View file @
4bd6846c
...
@@ -121,6 +121,8 @@ export default {
...
@@ -121,6 +121,8 @@ export default {
},
},
},
},
async
created
()
{
async
created
()
{
//alert(this.orderId);
//alert(this.warehouseInId);
getOrderItemCommonAttr
(
this
.
orderId
,
this
.
warehouseInId
||
0
).
then
(
getOrderItemCommonAttr
(
this
.
orderId
,
this
.
warehouseInId
||
0
).
then
(
(
res
)
=>
{
(
res
)
=>
{
this
.
orderItemDetails
=
res
.
data
;
this
.
orderItemDetails
=
res
.
data
;
...
...
src/views/ecw/order/stocking/components/Package.vue
View file @
4bd6846c
...
@@ -579,6 +579,7 @@ export default {
...
@@ -579,6 +579,7 @@ export default {
}).
then
(
r
=>
{
}).
then
(
r
=>
{
if
(
r
.
data
)
{
if
(
r
.
data
)
{
this
.
$message
.
success
(
'
打包成功
'
)
this
.
$message
.
success
(
'
打包成功
'
)
//this.getAttrList();
this
.
handleClose
()
this
.
handleClose
()
}
else
{
}
else
{
this
.
$message
.
success
(
'
打包失败
'
)
this
.
$message
.
success
(
'
打包失败
'
)
...
...
src/views/ecw/order/stocking/index.vue
View file @
4bd6846c
...
@@ -117,6 +117,7 @@
...
@@ -117,6 +117,7 @@
}}
</el-button>
}}
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<!--添加箱明细 lanbm 2024-06-21 -->
<el-table-column
prop=
"areaName"
width=
"220px"
>
<el-table-column
prop=
"areaName"
width=
"220px"
>
<
template
v-slot=
"{ row }"
>
<
template
v-slot=
"{ row }"
>
<WarehouseRecordDetail
<WarehouseRecordDetail
...
@@ -301,13 +302,24 @@
...
@@ -301,13 +302,24 @@
})
})
}}
}}
</el-form-item>
</el-form-item>
<!--lanbm 2024-06-21 处理问题
<el-form-item :label="$t('入仓统计')" class="mb-0">
<el-form-item :label="$t('入仓统计')" class="mb-0">
{{
{{
$t(`{num}箱 {weight}Kg {volume}m³ {quantity}个`, {
$t(`{num}箱 {weight}Kg {volume}m³ {quantity}个`, {
num: statistics.sumCartonsNumFinishedWarehouseIn,
num:statistics.sumCartonsNumFinishedWarehouseIn,
weight: statistics.sumWeightFinishedWarehouseIn,
weight:statistics.sumWeightFinishedWarehouseIn,
volume: statistics.sumVolumeFinishedWarehouseIn,
volume:statistics.sumVolumeFinishedWarehouseIn,
quantity: statistics.sumQuantityAllFinishedWarehouseIn,
quantity:statistics.sumQuantityAllFinishedWarehouseIn,
})
}}
</el-form-item>-->
<el-form-item
:label=
"$t('入仓统计')"
class=
"mb-0"
>
{{
$t(`{num}箱 {weight}Kg {volume}m³ {quantity}个`, {
num:form.sumNum,
weight:form.sumWeight,
volume:form.sumVolume,
quantity:form.sumQuantity,
})
})
}}
}}
</el-form-item>
</el-form-item>
...
@@ -502,6 +514,8 @@ export default {
...
@@ -502,6 +514,8 @@ export default {
manualExceptionType
:
[],
manualExceptionType
:
[],
sumVolume
:
""
,
sumVolume
:
""
,
sumWeight
:
""
,
sumWeight
:
""
,
sumNum
:
""
,
//入仓件数 lanbm 2024-06-21 add
sumQuantity
:
""
,
//入仓数量
},
},
currencyList
:
[],
currencyList
:
[],
order
:
{},
order
:
{},
...
@@ -599,6 +613,8 @@ export default {
...
@@ -599,6 +613,8 @@ export default {
this
.
order
=
r
.
data
;
this
.
order
=
r
.
data
;
this
.
form
.
sumVolume
=
this
.
order
.
sumVolume
;
this
.
form
.
sumVolume
=
this
.
order
.
sumVolume
;
this
.
form
.
sumWeight
=
this
.
order
.
sumWeight
;
this
.
form
.
sumWeight
=
this
.
order
.
sumWeight
;
this
.
form
.
sumNum
=
this
.
order
.
sumNum
;
this
.
form
.
sumQuantity
=
this
.
order
.
sumQuantity
;
})
})
.
then
(()
=>
{
.
then
(()
=>
{
// this.getLabelByOrder()
// this.getLabelByOrder()
...
...
src/views/report/customer_analysis/index.vue
View file @
4bd6846c
...
@@ -43,13 +43,20 @@
...
@@ -43,13 +43,20 @@
prop=
"salesmanid"
prop=
"salesmanid"
v-show=
"showCustomsManage"
v-show=
"showCustomsManage"
>
>
<user-selector
<el-select
manage
v-model=
"queryParams.salesmanid"
clearable
clearable
@
change=
"handleQuery"
:multiple=
"true"
:prepend=
"
{ id: 0, nickname: $t('未分配客户经理') }"
v-model=
"queryParams.salesmanid"
/>
:placeholder=
"$t('请选择客户经理')"
size=
"small"
>
<el-option
v-for=
"dict in customerServiceList"
:key=
"dict.id"
:label=
"dict.nickname"
:value=
"dict.id"
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"首次成交"
prop=
"delFlag"
>
<el-form-item
label=
"首次成交"
prop=
"delFlag"
>
...
@@ -71,6 +78,7 @@
...
@@ -71,6 +78,7 @@
<el-form-item
label=
"客户来源"
prop=
"remark"
>
<el-form-item
label=
"客户来源"
prop=
"remark"
>
<el-select
<el-select
v-model=
"queryParams.source"
v-model=
"queryParams.source"
:multiple=
"true"
:placeholder=
"$t('请选择客户来源')"
:placeholder=
"$t('请选择客户来源')"
>
>
<el-option
<el-option
...
@@ -85,6 +93,7 @@
...
@@ -85,6 +93,7 @@
<el-select
<el-select
v-model=
"queryParams.customerrole"
v-model=
"queryParams.customerrole"
clearable
clearable
:multiple=
"true"
style=
"width: 200px"
style=
"width: 200px"
>
>
<el-option
<el-option
...
@@ -98,6 +107,7 @@
...
@@ -98,6 +107,7 @@
<el-form-item
label=
"客户国家"
prop=
"country"
>
<el-form-item
label=
"客户国家"
prop=
"country"
>
<el-select
<el-select
clearable
clearable
:multiple=
"true"
v-model=
"queryParams.country"
v-model=
"queryParams.country"
:placeholder=
"$t('请选择国家')"
:placeholder=
"$t('请选择国家')"
>
>
...
@@ -376,6 +386,7 @@
...
@@ -376,6 +386,7 @@
//国家列表接口
//国家列表接口
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
{
getCountryListAll
}
from
"
@/api/ecw/country
"
;
import
UserSelector
from
"
@/components/UserSelector
"
;
import
UserSelector
from
"
@/components/UserSelector
"
;
import
{
listServiceUser2
}
from
"
@/api/system/user
"
;
import
Treeselect
from
"
@riophae/vue-treeselect
"
;
import
Treeselect
from
"
@riophae/vue-treeselect
"
;
//自定义目录数样式
//自定义目录数样式
import
"
@/assets/styles/vue-treeselect.css
"
;
import
"
@/assets/styles/vue-treeselect.css
"
;
...
@@ -528,12 +539,17 @@ export default {
...
@@ -528,12 +539,17 @@ export default {
objEcwReportPermission
:
{},
objEcwReportPermission
:
{},
DeptEx
:
{
id
:
undefined
,
name
:
undefined
,
parentId
:
undefined
},
DeptEx
:
{
id
:
undefined
,
name
:
undefined
,
parentId
:
undefined
},
ParentPar
:
{},
ParentPar
:
{},
customerServiceList
:
[],
};
};
},
},
created
()
{
created
()
{
getCountryListAll
().
then
((
r
)
=>
{
getCountryListAll
().
then
((
r
)
=>
{
this
.
countryList
=
r
.
data
;
this
.
countryList
=
r
.
data
;
});
});
listServiceUser2
().
then
((
r
)
=>
{
this
.
customerServiceList
=
r
.
data
;
});
this
.
doLoadData
();
this
.
doLoadData
();
},
},
watch
:
{
watch
:
{
...
@@ -541,7 +557,7 @@ export default {
...
@@ -541,7 +557,7 @@ export default {
//lanbm 2024-05-06 解决重新进入参数不刷新的问题
//lanbm 2024-05-06 解决重新进入参数不刷新的问题
//this.$route.name == "客户分析" 用name做逻辑判断,有时候菜单名称会变化
//this.$route.name == "客户分析" 用name做逻辑判断,有时候菜单名称会变化
//"/report/customer_analysis" lanbm 2024-05-07 调整为根据path做逻辑判断
//"/report/customer_analysis" lanbm 2024-05-07 调整为根据path做逻辑判断
if
(
this
.
$route
.
path
==
"
/report/customer_analysis
"
)
{
if
(
this
.
$route
.
path
==
"
/report/customer_analysis
"
)
{
this
.
doLoadData
();
this
.
doLoadData
();
}
}
},
},
...
@@ -769,19 +785,19 @@ export default {
...
@@ -769,19 +785,19 @@ export default {
},
},
test
()
{
test
()
{
//当前路径
//当前路径
let
sP
=
this
.
$route
.
path
;
let
sP
=
this
.
$route
.
path
;
alert
(
sP
);
alert
(
sP
);
//当前参数
//当前参数
let
sPar
=
this
.
$route
.
params
;
let
sPar
=
this
.
$route
.
params
;
alert
(
sPar
);
alert
(
sPar
);
//路由名称
//路由名称
let
sRoute
=
this
.
$route
.
name
;
let
sRoute
=
this
.
$route
.
name
;
alert
(
sRoute
);
alert
(
sRoute
);
//路由查询参数
//路由查询参数
let
sQ
=
this
.
$route
.
query
;
let
sQ
=
this
.
$route
.
query
;
alert
(
sQ
.
toString
());
alert
(
sQ
.
toString
());
//路由匹配项
//路由匹配项
let
sM
=
this
.
$route
.
matched
;
let
sM
=
this
.
$route
.
matched
;
alert
(
sM
.
toString
());
alert
(
sM
.
toString
());
return
;
return
;
...
...
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