Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
factory_front
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qinjianhui
factory_front
Commits
dd96c2b2
Commit
dd96c2b2
authored
Jun 17, 2025
by
linjinhong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改确认生产按钮以及添加转至锐印按钮
parent
95a49edc
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
152 additions
and
48 deletions
+152
-48
src/api/podUsOrder.ts
+24
-10
src/views/logistics/logisticsPartition.vue
+1
-1
src/views/logistics/logisticsQuotation.vue
+1
-1
src/views/order/podUs/index.vue
+126
-36
No files found.
src/api/podUsOrder.ts
View file @
dd96c2b2
...
@@ -12,16 +12,16 @@ import axios from './axios'
...
@@ -12,16 +12,16 @@ import axios from './axios'
import
{
PodMakeOrderData
}
from
'@/types/api/podMakeOrder'
import
{
PodMakeOrderData
}
from
'@/types/api/podMakeOrder'
export
interface
AddressInfo
{
export
interface
AddressInfo
{
id
?:
string
id
?:
string
receiverName
:
string
,
receiverName
:
string
receiverPhone
:
string
,
receiverPhone
:
string
receiverCountry
:
string
,
receiverCountry
:
string
receiverProvince
:
string
,
receiverProvince
:
string
receiverCity
:
string
,
receiverCity
:
string
receiverDistrict
:
string
,
receiverDistrict
:
string
receiverAddress1
:
string
,
receiverAddress1
:
string
receiverAddress2
:
string
,
receiverAddress2
:
string
receiverPostCode
:
string
,
receiverPostCode
:
string
}
}
export
interface
LogisticsData
{
export
interface
LogisticsData
{
...
@@ -399,3 +399,17 @@ export function createLogisticsOrdersApi(orderIds: (string | number)[]) {
...
@@ -399,3 +399,17 @@ export function createLogisticsOrdersApi(orderIds: (string | number)[]) {
orderIds
,
orderIds
,
)
)
}
}
//确认生产
export
function
confirmProductApi
(
orderIds
:
(
string
|
number
)[])
{
return
axios
.
post
<
never
,
BaseRespData
<
never
>>
(
`factory/podJomallOrderUs/confirmProduct`
,
orderIds
,
)
}
//转至锐印
export
function
confirmProductToRiinApi
(
orderIds
:
(
string
|
number
)[])
{
return
axios
.
post
<
never
,
BaseRespData
<
never
>>
(
`factory/podJomallOrderUs/confirmProductToRiin`
,
orderIds
,
)
}
src/views/logistics/logisticsPartition.vue
View file @
dd96c2b2
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
>
>
<template
#
ontherBtn
>
<template
#
ontherBtn
>
<div
style=
"margin-left: 10px; display: flex; gap: 10px"
>
<div
style=
"margin-left: 10px; display: flex; gap: 10px"
>
<ElButton
@
click=
"downloadExcel"
type=
"
info
"
plain
<ElButton
@
click=
"downloadExcel"
type=
"
primary
"
plain
>
下载模版
</ElButton
>
下载模版
</ElButton
>
>
...
...
src/views/logistics/logisticsQuotation.vue
View file @
dd96c2b2
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
>
>
<template
#
ontherBtn
>
<template
#
ontherBtn
>
<div
style=
"margin-left: 10px; display: flex; gap: 10px"
>
<div
style=
"margin-left: 10px; display: flex; gap: 10px"
>
<ElButton
@
click=
"downloadExcel"
type=
"
info
"
plain
<ElButton
@
click=
"downloadExcel"
type=
"
primary
"
plain
>
下载模版
</ElButton
>
下载模版
</ElButton
>
>
...
...
src/views/order/podUs/index.vue
View file @
dd96c2b2
...
@@ -153,7 +153,7 @@
...
@@ -153,7 +153,7 @@
style=
"width: 130px"
style=
"width: 130px"
>
>
<ElOption
<ElOption
v-for=
"(item, index) in ['自有物流','工厂物流']"
v-for=
"(item, index) in ['自有物流',
'工厂物流']"
:key=
"index"
:key=
"index"
:value=
"index"
:value=
"index"
:label=
"item"
:label=
"item"
...
@@ -245,16 +245,27 @@
...
@@ -245,16 +245,27 @@
</div>
</div>
<div
class=
"operation-box mb-10"
>
<div
class=
"operation-box mb-10"
>
<span
v-if=
"status === 'PICKING'"
class=
"item"
>
<span
v-if=
"status === 'PICKING'"
class=
"item"
>
<ElButton
:loading=
"downloadLoading"
type=
"warning"
@
click=
"downloadTif"
>
排版
</ElButton>
<ElButton
:loading=
"downloadLoading"
type=
"warning"
@
click=
"downloadTif"
>
排版
</ElButton>
</span>
</span>
<span
v-if=
"status === 'TO_BE_CONFIRMED'"
class=
"item"
>
<span
v-if=
"status === 'TO_BE_CONFIRMED'"
class=
"item"
>
<ElButton
type=
"success"
@
click=
"confirm
Order"
>
确认
</ElButton>
<ElButton
type=
"success"
@
click=
"confirm
Product"
>
确认生产
</ElButton>
</span>
</span>
<span
v-if=
"status === 'EXCEPTION_ORDER'"
class=
"item"
>
<span
v-if=
"status === 'EXCEPTION_ORDER'"
class=
"item"
>
<ElButton
type=
"success"
@
click=
"updateOrder"
>
转至待确认
</ElButton>
<ElButton
type=
"success"
@
click=
"updateOrder"
>
转至待确认
</ElButton>
</span>
</span>
<span
v-if=
"status === 'EXCEPTION_ORDER' && exceptionStatus === 3"
class=
"item"
>
<span
<ElButton
type=
"success"
@
click=
"asyncOrderAddress"
>
同步收货地址
</ElButton>
v-if=
"status === 'EXCEPTION_ORDER' && exceptionStatus === 3"
class=
"item"
>
<ElButton
type=
"success"
@
click=
"asyncOrderAddress"
>
同步收货地址
</ElButton>
</span>
</span>
<span
<span
v-if=
"status === 'EXCEPTION_ORDER' && exceptionStatus === 1"
v-if=
"status === 'EXCEPTION_ORDER' && exceptionStatus === 1"
...
@@ -290,6 +301,11 @@
...
@@ -290,6 +301,11 @@
转为异常单
转为异常单
</ElButton>
</ElButton>
</span>
</span>
<span
v-if=
"status === 'TO_BE_CONFIRMED'"
class=
"item"
>
<ElButton
type=
"warning"
@
click=
"confirmProductToRiin"
>
转至锐印生产
</ElButton>
</span>
<span
<span
v-if=
"status === 'TO_BE_CONFIRMED' || status === 'EXCEPTION_ORDER'"
v-if=
"status === 'TO_BE_CONFIRMED' || status === 'EXCEPTION_ORDER'"
class=
"item"
class=
"item"
...
@@ -596,7 +612,7 @@
...
@@ -596,7 +612,7 @@
<div
class=
"order-detail-item"
>
<div
class=
"order-detail-item"
>
<span
class=
"order-detail-item-label"
>
物流类型:
</span>
<span
class=
"order-detail-item-label"
>
物流类型:
</span>
<span
class=
"order-detail-item-value"
>
<span
class=
"order-detail-item-value"
>
{{
[
'自有物流'
,
'工厂物流'
][
row
.
shipmentType
]
}}
{{
[
'自有物流'
,
'工厂物流'
][
row
.
shipmentType
]
}}
</span>
</span>
</div>
</div>
<div
class=
"order-detail-item"
>
<div
class=
"order-detail-item"
>
...
@@ -775,8 +791,10 @@
...
@@ -775,8 +791,10 @@
<
/template
>
<
/template
>
<
template
#
operate
=
"{ row
}
"
>
<
template
#
operate
=
"{ row
}
"
>
<
div
class
=
"operate-box"
>
<
div
class
=
"operate-box"
>
<
span
class
=
"operate-item"
style
=
"display: flex;flex-direction: column"
>
<
span
class
=
"operate-item"
style
=
"display: flex; flex-direction: column"
>
<
ElButton
<
ElButton
link
link
type
=
"primary"
type
=
"primary"
...
@@ -784,16 +802,20 @@
...
@@ -784,16 +802,20 @@
>
>
操作日志
操作日志
<
/ElButton
>
<
/ElButton
>
<
ElButton
<!--
<
ElButton
v
-
if
=
"!row.expressSheet && row.status === 'TO_BE_CONFIRMED'"
v
-
if
=
"!row.expressSheet && row.status === 'TO_BE_CONFIRMED'"
link
link
type
=
"primary"
type
=
"primary"
@
click
=
"confirm(row)"
@
click
=
"confirm(row)"
>
>
确认
确认
<
/ElButton
>
<
/ElButton> --
>
<
ElButton
<
ElButton
v
-
if
=
"row.shipmentType===1 && ['CREATE_LOGISTICS','WAIT_SHIPMENT'].includes(status)"
v
-
if
=
"
row.shipmentType === 1 &&
['CREATE_LOGISTICS', 'WAIT_SHIPMENT'].includes(status)
"
link
link
type
=
"primary"
type
=
"primary"
@
click
=
"handleUpdateAddress(row)"
@
click
=
"handleUpdateAddress(row)"
...
@@ -801,7 +823,10 @@
...
@@ -801,7 +823,10 @@
修改地址
修改地址
<
/ElButton
>
<
/ElButton
>
<
ElButton
<
ElButton
v
-
if
=
"row.shipmentType===0 && ['CREATE_LOGISTICS','WAIT_SHIPMENT'].includes(status)"
v
-
if
=
"
row.shipmentType === 0 &&
['CREATE_LOGISTICS', 'WAIT_SHIPMENT'].includes(status)
"
link
link
type
=
"primary"
type
=
"primary"
@
click
=
"handleRefreshAddress(row)"
@
click
=
"handleRefreshAddress(row)"
...
@@ -1172,7 +1197,13 @@
...
@@ -1172,7 +1197,13 @@
<
/el-button
>
<
/el-button
>
<
/template
>
<
/template
>
<
/el-dialog
>
<
/el-dialog
>
<
UpdateAddress
v
-
if
=
"updateAddVisible"
v
-
model
:
form
=
"currentRow"
v
-
model
:
visible
=
"updateAddVisible"
:
country
-
list
=
"countryList"
@
success
=
"search"
><
/UpdateAddress
>
<
UpdateAddress
v
-
if
=
"updateAddVisible"
v
-
model
:
form
=
"currentRow"
v
-
model
:
visible
=
"updateAddVisible"
:
country
-
list
=
"countryList"
@
success
=
"search"
><
/UpdateAddress
>
<
ElDialog
<
ElDialog
v
-
model
=
"exceptionDialogVisible"
v
-
model
=
"exceptionDialogVisible"
title
=
"转为异常单"
title
=
"转为异常单"
...
@@ -1233,7 +1264,6 @@
...
@@ -1233,7 +1264,6 @@
<
/ElDialog
>
<
/ElDialog
>
<
/template
>
<
/template
>
<
script
setup
lang
=
"ts"
>
<
script
setup
lang
=
"ts"
>
import
{
getUserMarkList
}
from
'@/api/common'
import
{
getUserMarkList
}
from
'@/api/common'
import
{
ArrowDown
,
WarningFilled
}
from
'@element-plus/icons-vue'
import
{
ArrowDown
,
WarningFilled
}
from
'@element-plus/icons-vue'
import
{
import
{
...
@@ -1265,7 +1295,12 @@ import {
...
@@ -1265,7 +1295,12 @@ import {
changeLogisticsApi
,
changeLogisticsApi
,
createLogisticsOrderApi
,
createLogisticsOrderApi
,
updateLogisticsToPickingApi
,
updateLogisticsToPickingApi
,
createLogisticsOrdersApi
,
syncReceiverAddress
,
refreshAddressApi
,
AddressInfo
,
createLogisticsOrdersApi
,
syncReceiverAddress
,
refreshAddressApi
,
AddressInfo
,
confirmProductApi
,
confirmProductToRiinApi
,
// handleExceptionOrderApi,
// handleExceptionOrderApi,
}
from
'@/api/podUsOrder'
}
from
'@/api/podUsOrder'
import
{
BaseRespData
}
from
'@/types/api'
import
{
BaseRespData
}
from
'@/types/api'
...
@@ -1426,7 +1461,7 @@ const getWeekRange = (weeks = 0, type: 'past' | 'future' = 'past') => {
...
@@ -1426,7 +1461,7 @@ const getWeekRange = (weeks = 0, type: 'past' | 'future' = 'past') => {
type
===
'past'
?
now
.
subtract
(
weeks
,
'week'
)
:
now
.
add
(
weeks
,
'week'
)
type
===
'past'
?
now
.
subtract
(
weeks
,
'week'
)
:
now
.
add
(
weeks
,
'week'
)
return
[
start
.
startOf
(
'week'
).
toDate
(),
start
.
endOf
(
'week'
).
toDate
()]
return
[
start
.
startOf
(
'week'
).
toDate
(),
start
.
endOf
(
'week'
).
toDate
()]
}
}
const
handleRefreshAddress
=
async
(
row
:
PodUsOrderListData
)
=>
{
const
handleRefreshAddress
=
async
(
row
:
PodUsOrderListData
)
=>
{
try
{
try
{
await
showConfirm
(
'确定刷新地址吗?'
,
{
await
showConfirm
(
'确定刷新地址吗?'
,
{
confirmButtonText
:
'确认'
,
confirmButtonText
:
'确认'
,
...
@@ -1437,14 +1472,18 @@ const handleRefreshAddress = async (row:PodUsOrderListData) => {
...
@@ -1437,14 +1472,18 @@ const handleRefreshAddress = async (row:PodUsOrderListData) => {
return
return
}
}
await
refreshAddressApi
([
row
.
id
])
await
refreshAddressApi
([
row
.
id
])
await
ElMessageBox
.
alert
(
'请修改/刷新地址后取消物流重新创建物流订单、获取跟踪号、获取打印面单。'
,
'提示'
,
{
await
ElMessageBox
.
alert
(
'请修改/刷新地址后取消物流重新创建物流订单、获取跟踪号、获取打印面单。'
,
'提示'
,
{
type
:
'warning'
,
type
:
'warning'
,
confirmButtonText
:
'确定'
,
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
cancelButtonText
:
'取消'
,
showCancelButton
:
true
,
showCancelButton
:
true
,
}
)
}
,
)
}
}
const
handleUpdateAddress
=
async
(
row
:
PodUsOrderListData
)
=>
{
const
handleUpdateAddress
=
async
(
row
:
PodUsOrderListData
)
=>
{
const
{
data
}
=
await
getAllCountryApi
()
const
{
data
}
=
await
getAllCountryApi
()
countryList
.
value
=
data
countryList
.
value
=
data
currentRow
.
value
=
JSON
.
parse
(
JSON
.
stringify
(
row
))
currentRow
.
value
=
JSON
.
parse
(
JSON
.
stringify
(
row
))
...
@@ -1482,7 +1521,8 @@ const tableColumns = computed(() => [
...
@@ -1482,7 +1521,8 @@ const tableColumns = computed(() => [
slot
:
'innerLabel'
,
slot
:
'innerLabel'
,
width
:
300
,
width
:
300
,
prop
:
'innerLabel'
,
prop
:
'innerLabel'
,
}
,{
}
,
{
label
:
'异常原因'
,
label
:
'异常原因'
,
width
:
300
,
width
:
300
,
prop
:
'exceptionReason'
,
prop
:
'exceptionReason'
,
...
@@ -1622,6 +1662,49 @@ const confirm = async (row: ProductList) => {
...
@@ -1622,6 +1662,49 @@ const confirm = async (row: ProductList) => {
confirmData
.
value
=
[]
confirmData
.
value
=
[]
confirmSelectionData
.
value
=
[]
confirmSelectionData
.
value
=
[]
}
}
//确认生产
async
function
confirmProduct
()
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
}
try
{
await
showConfirm
(
'确定生产吗?'
,
{
confirmButtonText
:
'确认'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
}
)
const
ids
=
selection
.
value
.
map
((
el
)
=>
el
.
id
)
await
confirmProductApi
([...
ids
])
ElMessage
.
success
(
'操作成功'
)
search
()
await
loadTabData
()
}
catch
{
return
}
}
//转至锐印
async
function
confirmProductToRiin
()
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
}
try
{
await
showConfirm
(
'确认转至锐印(Riin)生产吗?'
,
{
confirmButtonText
:
'确认'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
}
)
const
ids
=
selection
.
value
.
map
((
el
)
=>
el
.
id
)
await
confirmProductToRiinApi
([...
ids
])
ElMessage
.
success
(
'操作成功'
)
search
()
await
loadTabData
()
}
catch
{
return
}
}
const
handleConfirm
=
async
()
=>
{
const
handleConfirm
=
async
()
=>
{
if
(
!
productionClientValue
.
value
)
{
if
(
!
productionClientValue
.
value
)
{
return
ElMessage
.
warning
(
'请选择生产端'
)
return
ElMessage
.
warning
(
'请选择生产端'
)
...
@@ -1679,28 +1762,27 @@ const handleUpdateRemark = async (item: ProductList) => {
...
@@ -1679,28 +1762,27 @@ const handleUpdateRemark = async (item: ProductList) => {
const
productionClientValue
=
ref
(
''
)
const
productionClientValue
=
ref
(
''
)
const
productionClient
=
ref
<
ProductionClient
[]
>
()
const
productionClient
=
ref
<
ProductionClient
[]
>
()
const
productionClientVisible
=
ref
(
false
)
const
productionClientVisible
=
ref
(
false
)
const
confirmOrder
=
async
()
=>
{
//
const confirmOrder = async () =>
{
if
(
selection
.
value
.
length
===
0
)
{
//
if (selection.value.length === 0)
{
return
ElMessage
.
warning
(
'请选择数据'
)
//
return ElMessage.warning('请选择数据')
}
//
}
productionClientValue
.
value
=
''
//
productionClientValue.value = ''
productionClientVisible
.
value
=
true
//
productionClientVisible.value = true
}
//
}
const
downloadTif
=
async
()
=>
{
const
downloadTif
=
async
()
=>
{
if
(
!
selection
.
value
.
length
)
{
if
(
!
selection
.
value
.
length
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
return
ElMessage
.
warning
(
'请选择数据'
)
}
}
downloadLoading
.
value
=
true
downloadLoading
.
value
=
true
try
{
try
{
const
res
=
await
composingDesignImages
(
selection
.
value
.
map
(
el
=>
el
.
id
))
const
res
=
await
composingDesignImages
(
selection
.
value
.
map
((
el
)
=>
el
.
id
))
window
.
open
(
'http://ps.jomalls.com/tiff/'
+
res
.
message
,
'_blank'
)
window
.
open
(
'http://ps.jomalls.com/tiff/'
+
res
.
message
,
'_blank'
)
downloadLoading
.
value
=
false
downloadLoading
.
value
=
false
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
)
downloadLoading
.
value
=
false
downloadLoading
.
value
=
false
}
}
}
}
const
loadProductionClient
=
async
()
=>
{
const
loadProductionClient
=
async
()
=>
{
...
@@ -2375,6 +2457,14 @@ const logisticsToPicking = async () => {
...
@@ -2375,6 +2457,14 @@ const logisticsToPicking = async () => {
if
(
selection
.
value
.
length
===
0
)
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
return
ElMessage
.
warning
(
'请选择数据'
)
}
}
if
(
selection
.
value
.
some
(
(
el
)
=>
el
.
trackingNumber
==
null
||
String
(
el
.
trackingNumber
).
trim
()
===
''
,
)
)
{
return
ElMessage
.
warning
(
'选中数据中有未创建物流的订单,请先创建物流'
)
}
try
{
try
{
await
ElMessageBox
.
confirm
(
'确定转至待拣胚吗?'
,
'提示'
,
{
await
ElMessageBox
.
confirm
(
'确定转至待拣胚吗?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
confirmButtonText
:
'确定'
,
...
@@ -2743,8 +2833,8 @@ const handleExceptionCommand = (command: number) => {
...
@@ -2743,8 +2833,8 @@ const handleExceptionCommand = (command: number) => {
height
:
100
%
;
height
:
100
%
;
overflow
-
y
:
auto
;
overflow
-
y
:
auto
;
}
}
.
operate
-
item
{
.
operate
-
item
{
.
el
-
button
{
.
el
-
button
{
margin
-
left
:
0
!
important
;
margin
-
left
:
0
!
important
;
margin
-
top
:
20
px
!
important
;
margin
-
top
:
20
px
!
important
;
}
}
...
...
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