Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
肖康
/
cloudSystem
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
8d40427b
authored
Feb 08, 2025
by
LJM
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
寄售召回
parent
318e6d82
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
214 additions
and
24 deletions
src/router/index.js
src/views/consignmentManagement/consignmentRecall.vue
src/views/consignmentManagement/consignmentRecallDetail.vue
src/views/consignmentManagement/createConsignmentRecallOrder.vue
src/router/index.js
View file @
8d40427b
...
...
@@ -37,6 +37,7 @@ const ConsignmentApplicationDetail = resolve => require(['@/views/consignmentMan
const
ConsignmentReplenishment
=
resolve
=>
require
([
'@/views/consignmentManagement/consignmentReplenishment.vue'
],
resolve
);
const
ConsignmentRecall
=
resolve
=>
require
([
'@/views/consignmentManagement/consignmentRecall.vue'
],
resolve
);
const
ConsignmentRecallDetail
=
resolve
=>
require
([
'@/views/consignmentManagement/consignmentRecallDetail.vue'
],
resolve
);
const
CreateConsignmentRecallOrder
=
resolve
=>
require
([
'@/views/consignmentManagement/createConsignmentRecallOrder.vue'
],
resolve
);
const
BatchRecall
=
resolve
=>
require
([
'@/views/consignmentManagement/batchRecall.vue'
],
resolve
);
const
ConsignmentContract
=
resolve
=>
require
([
'@/views/consignmentManagement/consignmentContract.vue'
],
resolve
);
const
InOutStockLog
=
resolve
=>
require
([
'@/views/consignmentManagement/inOutStockLog.vue'
],
resolve
);
...
...
@@ -79,6 +80,7 @@ const routes = [
{
path
:
'/consignmentReplenishment'
,
name
:
'consignmentReplenishment'
,
meta
:
{
title
:
'寄售补货'
},
component
:
ConsignmentReplenishment
},
{
path
:
'/consignmentRecall'
,
name
:
'consignmentRecall'
,
meta
:
{
title
:
'寄售召回'
},
component
:
ConsignmentRecall
},
{
path
:
'/consignmentRecallDetail'
,
name
:
'consignmentRecallDetail'
,
meta
:
{
title
:
'寄售召回单详情'
},
component
:
ConsignmentRecallDetail
},
{
path
:
'/createConsignmentRecallOrder'
,
name
:
'createConsignmentRecallOrder'
,
meta
:
{
title
:
'生成寄售召回单'
},
component
:
CreateConsignmentRecallOrder
},
{
path
:
'/batchRecall'
,
name
:
'batchRecall'
,
meta
:
{
title
:
'批量召回'
},
component
:
BatchRecall
},
{
path
:
'/consignmentContract'
,
name
:
'consignmentContract'
,
meta
:
{
title
:
'寄售合同'
},
component
:
ConsignmentContract
},
{
path
:
'/inOutStockLog'
,
name
:
'inOutStockLog'
,
meta
:
{
title
:
'进出库日志'
},
component
:
InOutStockLog
},
...
...
src/views/consignmentManagement/consignmentRecall.vue
View file @
8d40427b
...
...
@@ -12,11 +12,8 @@
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"formParam.recall_status"
placeholder=
"全部"
clearable
>
<el-option
label=
"全部"
value=
""
></el-option>
<el-option
label=
"待提审"
value=
"0"
></el-option>
<el-option
label=
"待审核"
value=
"1"
></el-option>
<el-option
label=
"待退货出库"
value=
"2"
></el-option>
<el-option
label=
"完成"
value=
"3"
></el-option>
<el-option
label=
"作废"
value=
"4"
></el-option>
<el-option
label=
"进行中"
value=
"1"
></el-option>
<el-option
label=
"出库完成"
value=
"2"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
...
...
@@ -27,28 +24,29 @@
<!--操作区-->
<div
class=
"operation-area row verCenter bothSide"
>
<div
class=
"operation-button row verCenter"
>
<el-button
type=
"primary"
@
click=
"$router.push('/batchRecall')"
>
批量召回
</el-button>
<el-button
type=
"primary"
@
click=
"$router.push('/createConsignmentRecallOrder')"
>
生成寄售找回单
</el-button>
<!--
<el-button
type=
"primary"
@
click=
"popupEvent(1)"
>
提交审核
</el-button>
<el-button
type=
"primary"
@
click=
"popupEvent(2)"
>
作废
</el-button>
<el-button
type=
"danger"
@
click=
"popupEvent(3)"
>
收货信息
</el-button>
-->
</div>
</div>
<!--列表区-->
<div
class=
"data-box"
>
<el-table
:data=
"list"
border
max-height=
"600"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"40"
align=
"center"
fixed
></el-table-column>
<el-table-column
prop=
"msg_sn"
label=
"寄售召回单号"
:show-overflow-tooltip=
"true"
align=
"center"
>
<el-table-column
prop=
"msg_sn"
label=
"寄售召回单号"
min-width=
"150"
:show-overflow-tooltip=
"true"
align=
"center"
>
<template
slot-scope=
"scope"
>
<el-link
type=
"primary"
:underline=
"false"
@
click=
"$router.push(
{path: '/consignmentRecallDetail', query: {recall_id: scope.row.recall_id}})" style="font-size: 12px;">
{{
scope
.
row
.
recall_sn
}}
</el-link>
</
template
>
</el-table-column>
<el-table-column
prop=
"recall_status_val"
label=
"订单状态"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"order_uname"
label=
"订单人员"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"verify_name"
label=
"审核人"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"verify_time"
label=
"审核时间"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"verify_remark"
label=
"审核说明"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"create_uname"
label=
"创建人"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"create_time"
label=
"创建时间"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"recall_status_val"
label=
"状态"
min-width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"order_uname"
label=
"对接人"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"stock_out_sn"
label=
"出库单号"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"stock_out_express_sn"
label=
"出库物流"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"create_uname"
label=
"创建人"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"create_time"
label=
"创建时间"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
</el-table>
<el-pagination
layout=
"total, sizes, prev, pager, next, jumper"
:page-sizes=
"[10, 20, 50, 100, 200]"
:total=
"total"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"page"
></el-pagination>
</div>
...
...
src/views/consignmentManagement/consignmentRecallDetail.vue
View file @
8d40427b
...
...
@@ -2,27 +2,29 @@
<div
class=
"pagex"
>
<div
class=
"section-page"
>
<!-- 详情信息区 -->
<el-descriptions
:column=
"
4
"
border
style=
"margin-bottom: 15px; width: 1200px;"
>
<el-descriptions
:column=
"
5
"
border
style=
"margin-bottom: 15px; width: 1200px;"
>
<el-descriptions-item
label=
"寄售召回单号"
>
<span
style=
"font-weight: bold"
>
{{
detailData
.
recall_sn
}}
(
{{
detailData
.
recall_status_val
}}
)
</span>
<span
style=
"font-weight: bold"
>
{{
detailData
.
recall_sn
}}{{
detailData
.
recall_status_val
?
`(${detailData.recall_status_val
}
)`
:
''
}}
<
/span
>
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"供应商名称:"
>
{{
detailData
.
supplier_name
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"备注:"
>
<
div
class
=
"remark-content"
>
{{
detailData
.
delivery_remark
||
'-'
}}
<
/div
>
<
/el-descriptions-item
>
<el-descriptions-item
label=
"订单人员:"
>
{{
detailData
.
order_uname
}}
</el-descriptions-item>
<
el
-
descriptions
-
item
label
=
"收货人:"
>
{{
(
detailData
.
supplier_address
&&
detailData
.
supplier_address
.
contact
)
||
'-'
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"收货人电话:"
>
{{
(
detailData
.
supplier_address
&&
detailData
.
supplier_address
.
mobile
)
||
'-'
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"收货地址:"
:
span
=
"2"
>
{{
(
detailData
.
supplier_address
&&
detailData
.
supplier_address
.
info
)
||
'-'
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"创建时间:"
>
{{
detailData
.
create_time
}}
<
/el-descriptions-item
>
<
/el-descriptions
>
<!--
列表区
-->
<
div
class
=
"data-box"
>
<
el
-
table
:
data
=
"list"
border
max
-
height
=
"600"
@
selection
-
change
=
"handleSelectionChange"
>
<
el
-
table
-
column
type
=
"index"
label
=
"序号"
width
=
"50"
align
=
"center"
fixed
><
/el-table-column
>
<el-table-column
prop=
"recall_item_id"
label=
"明细ID"
width=
"100"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"sku_id"
label=
"SKUID"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<
el
-
table
-
column
prop
=
"sku_id"
label
=
"SKUID"
width
=
"250"
:
show
-
overflow
-
tooltip
=
"true"
align
=
"center"
><
/el-table-column
>
<
el
-
table
-
column
prop
=
"goods_name"
label
=
"型号"
:
show
-
overflow
-
tooltip
=
"true"
align
=
"center"
><
/el-table-column
>
<
el
-
table
-
column
prop
=
"brand_name"
label
=
"品牌"
:
show
-
overflow
-
tooltip
=
"true"
align
=
"center"
><
/el-table-column
>
<el-table-column
prop=
"recall_num"
label=
"申请召回数量"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"stock_out_num"
label=
"退货出库总数"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
"date_code"
label=
"批次"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<
el
-
table
-
column
prop
=
"recall_num"
label
=
"召回数量"
:
show
-
overflow
-
tooltip
=
"true"
align
=
"center"
><
/el-table-column
>
<
/el-table
>
<
el
-
pagination
layout
=
"total, sizes, prev, pager, next, jumper"
:
page
-
sizes
=
"[10, 20, 50, 100, 200]"
:
total
=
"total"
@
size
-
change
=
"handleSizeChange"
@
current
-
change
=
"handleCurrentChange"
:
current
-
page
=
"page"
><
/el-pagination
>
<
/div
>
...
...
@@ -140,5 +142,8 @@ export default {
}
;
<
/script
>
<
style
scoped
>
.
remark
-
content
{
min
-
width
:
200
px
;
word
-
break
:
break
-
all
;
/* 防止文字溢出 */
}
<
/style>
\ No newline at end of file
src/views/consignmentManagement/createConsignmentRecallOrder.vue
0 → 100644
View file @
8d40427b
<
template
>
<div
class=
"pagex"
>
<div
class=
"section-page"
>
<div
style=
"margin-bottom: 10px;"
>
<el-button
type=
"primary"
@
click=
"generateConsignmentRecall"
>
提交
</el-button>
<el-button>
取消
</el-button>
</div>
<div
class=
"xktitle"
style=
"margin-bottom: 10px;"
>
收货信息
</div>
<div
class=
"xktitle"
style=
"margin-bottom: 10px;"
>
召回库存明细
</div>
<el-button
type=
"primary"
@
click=
"add"
>
添加
</el-button>
<div
style=
"margin-top: 10px;"
>
<el-table
:data=
"recall_json"
border
max-height=
"600"
>
<el-table-column
type=
"index"
label=
"序号"
width=
"50"
align=
"center"
fixed
></el-table-column>
<el-table-column
prop=
""
label=
"SKUID"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"型号"
min-width=
"180"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"标准品牌"
min-width=
"180"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"可用库存数量"
width=
"150"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"召回数量"
width=
"100"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"D/C"
width=
"100"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"产地"
width=
"80"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"入库时间"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"80"
align=
"center"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"danger"
size=
"mini"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
<Menu></Menu>
<!--添加-->
<el-dialog
title=
"添加"
:close-on-click-modal=
"false"
:visible
.
sync=
"dialogVisible_1"
width=
"1100px"
>
<el-form
:inline=
"true"
:model=
"wmsStockListParams"
label-width=
"80px"
size=
"mini"
>
<el-form-item
label=
"型号"
prop=
"contact"
>
<el-input
v-model=
"wmsStockListParams.goods_name"
placeholder=
"请输入型号"
></el-input>
</el-form-item>
<el-form-item
label=
"标准品牌"
prop=
"contact"
>
<el-input
v-model=
"wmsStockListParams.brand_name"
placeholder=
"请输入标准品牌"
></el-input>
</el-form-item>
<el-form-item
size=
"mini"
style=
"text-align: right"
>
<el-button
type=
"primary"
@
click=
"updateConsignmentRecallReceiptInfo('updateConsignmentRecallReceiptInfoParams')"
>
搜索
</el-button>
<el-button
@
click=
"dialogVisible_3 = false"
>
重置
</el-button>
</el-form-item>
</el-form>
<!--操作区-->
<div
class=
"operation-area row verCenter bothSide"
>
<div
class=
"operation-button row verCenter"
>
<el-button>
取消
</el-button>
<el-button
type=
"primary"
>
添加
</el-button>
<el-button
type=
"primary"
>
一键添加全部库存
</el-button>
</div>
<div
class=
"text-tip row verCenter"
>
<i
class=
"el-icon-warning"
></i>
<span>
选择要召回的商品,将召回该商品的全部可用库存数量
</span>
</div>
</div>
<el-table
:data=
"wmsStockList"
border
max-height=
"600"
>
<el-table-column
type=
"selection"
width=
"40"
align=
"center"
fixed
></el-table-column>
<el-table-column
prop=
""
label=
"SKUID"
width=
"200"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"型号"
min-width=
"180"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"标准品牌"
min-width=
"180"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"可用库存数量"
width=
"150"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"召回数量"
width=
"100"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"D/C"
width=
"100"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"产地"
width=
"80"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
prop=
""
label=
"入库时间"
width=
"160"
:show-overflow-tooltip=
"true"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"80"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"danger"
size=
"mini"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-pagination
layout=
"total, sizes, prev, pager, next, jumper"
:page-sizes=
"[10, 20, 50, 100, 200]"
:total=
"total"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"page"
></el-pagination>
</el-dialog>
</div>
</template>
<
script
>
import
Vue
from
'vue'
;
import
Menu
from
"@/components/menu.vue"
;
import
{
Autocomplete
,
Button
,
Cascader
,
DatePicker
,
Descriptions
,
DescriptionsItem
,
Dialog
,
Divider
,
Dropdown
,
DropdownItem
,
DropdownMenu
,
Form
,
FormItem
,
Input
,
Link
,
Message
,
MessageBox
,
Option
,
Pagination
,
Popover
,
Select
,
Table
,
TableColumn
,
Tag
,
Tooltip
}
from
'element-ui'
Vue
.
prototype
.
$message
=
Message
Vue
.
prototype
.
$confirm
=
MessageBox
.
confirm
;
Vue
.
use
(
Button
).
use
(
Link
).
use
(
Cascader
).
use
(
Form
).
use
(
Select
).
use
(
Option
).
use
(
Input
).
use
(
FormItem
).
use
(
Dialog
).
use
(
Tooltip
).
use
(
Autocomplete
).
use
(
Popover
).
use
(
Tag
).
use
(
Divider
);
Vue
.
use
(
DatePicker
).
use
(
Dropdown
).
use
(
DropdownMenu
).
use
(
DropdownItem
).
use
(
TableColumn
).
use
(
Table
).
use
(
Pagination
).
use
(
Descriptions
).
use
(
DescriptionsItem
);
export
default
{
name
:
"createConsignmentRecallOrder"
,
data
()
{
return
{
total
:
0
,
page
:
1
,
limit
:
10
,
recall_json
:
[],
//召回库存明细列表
dialogVisible_1
:
false
,
wmsStockList
:
[],
wmsStockListParams
:
{
goods_name
:
''
,
brand_name
:
''
},
};
},
created
()
{
this
.
getData
()
},
methods
:
{
getData
()
{
var
params
=
Object
.
assign
({},
this
.
formParam
,
{
page
:
this
.
page
,
limit
:
this
.
limit
});
this
.
$http
(
'GET'
,
"/api/consignmentRecall/getConsignmentRecallList"
,
params
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
this
.
list
=
res
.
data
.
list
||
[];
this
.
total
=
Number
(
res
.
data
.
total
)
||
0
;
}
else
{
this
.
$message
.
error
(
res
.
msg
);
}
})
},
/**
* 生成寄售召回单-提交
*/
generateConsignmentRecall
()
{
},
/**
* 添加
*/
add
()
{
this
.
dialogVisible_1
=
true
;
this
.
getWmsStockList
();
},
/**
* 获取wms库存列表
*/
getWmsStockList
()
{
var
params
=
Object
.
assign
({},
this
.
wmsStockListParams
,
{
page
:
this
.
page
,
limit
:
this
.
limit
});
this
.
$http
(
'GET'
,
"/api/consignmentRecall/getWmsStockList"
,
params
).
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
this
.
wmsStockList
=
res
.
data
.
list
||
[];
this
.
total
=
Number
(
res
.
data
.
total
)
||
0
;
}
else
{
this
.
$message
.
error
(
res
.
msg
);
}
})
},
/**
* 列表分页条数筛选监听
* @param val
*/
handleSizeChange
(
val
)
{
this
.
limit
=
val
;
this
.
getData
();
},
/**
* 列表分页输入页码监听
* @param val
*/
handleCurrentChange
(
val
)
{
this
.
page
=
val
;
this
.
getData
();
},
/**
* chebox 选择监听
* @param val
*/
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
},
},
components
:
{
Menu
}
};
</
script
>
<
style
scoped
>
.xktitle
{
border-left
:
5px
solid
#1969F9
;
height
:
38px
;
line-height
:
38px
;
background
:
#f3f3f3
;
padding-left
:
20px
;
font-weight
:
bold
;
color
:
#333
;
}
</
style
>
\ No newline at end of file
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