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
87593839
Commit
87593839
authored
Dec 16, 2025
by
zhuzhequan
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
e624075d
de3dccbb
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
113 additions
and
23 deletions
+113
-23
src/types/api/podCnOrder.ts
+1
-0
src/types/api/podMakeOrder.ts
+1
-0
src/types/api/podUsOrder.ts
+1
-0
src/views/order/podCN/PodMakeOrder.vue
+35
-10
src/views/order/podCN/index.vue
+55
-2
src/views/order/podUs/PodMakeOrder.vue
+20
-11
src/views/order/podUs/index.vue
+0
-0
No files found.
src/types/api/podCnOrder.ts
View file @
87593839
...
...
@@ -139,6 +139,7 @@ export interface ProductList {
tagIds
?:
string
isProduction
?:
boolean
createTime
?:
string
startStockingTime
?:
string
|
null
updateTime
?:
string
remark
?:
string
|
null
version
?:
number
...
...
src/types/api/podMakeOrder.ts
View file @
87593839
...
...
@@ -54,6 +54,7 @@ export interface ProductList {
variantImage
?:
string
podJomallUsNo
?:
string
podJomallCnNo
?:
string
thirdSkuCode
?:
string
previewImgs
?:
{
sort
?:
string
|
number
;
title
?:
string
;
url
:
string
}[]
}
...
...
src/types/api/podUsOrder.ts
View file @
87593839
...
...
@@ -138,6 +138,7 @@ export interface ProductList {
tagIds
?:
string
isProduction
?:
boolean
createTime
?:
string
startStockingTime
?:
string
|
null
updateTime
?:
string
remark
?:
string
|
null
version
?:
number
...
...
src/views/order/podCN/PodMakeOrder.vue
View file @
87593839
...
...
@@ -463,7 +463,18 @@ watch(
(
val
)
=>
{
if
(
val
&&
val
.
productList
?.
length
)
val
.
productList
.
forEach
((
el
)
=>
{
if
(
!
el
.
previewImgs
)
el
.
previewImgs
=
JSON
.
parse
(
el
.
imageAry
||
'[]'
)
if
(
!
el
.
previewImgs
)
{
if
(
el
.
productMark
===
'custom_normal'
||
el
.
productMark
===
'normal'
)
{
el
.
previewImgs
=
[{
url
:
el
.
variantImage
||
''
}]
}
else
{
el
.
previewImgs
=
el
.
imageAry
?
JSON
.
parse
(
el
.
imageAry
)
:
[{
url
:
el
.
variantImage
}]
}
}
})
},
{
deep
:
true
},
...
...
@@ -492,7 +503,13 @@ const renderItemBox = (bool: boolean) => {
if
(
!
boxItem
)
boxItem
=
{
data
:
{
productList
:
[]
}
}
const
{
data
}
=
boxItem
data
?.
productList
?.
forEach
((
el
)
=>
{
if
(
!
el
.
previewImgs
)
el
.
previewImgs
=
JSON
.
parse
(
el
.
imageAry
||
'[]'
)
if
(
!
el
.
previewImgs
||
!
el
.
previewImgs
.
length
)
{
if
(
el
.
productMark
===
'custom_normal'
||
el
.
productMark
===
'normal'
)
{
el
.
previewImgs
=
[{
url
:
el
.
variantImage
||
''
}]
}
else
{
el
.
previewImgs
=
JSON
.
parse
(
el
.
imageAry
||
'[]'
)
}
}
})
if
(
!
data
)
{
renderLock
=
false
...
...
@@ -513,15 +530,23 @@ const renderItemBox = (bool: boolean) => {
}
}
if
(
currentCode
)
{
const
parts
=
currentCode
.
split
(
'_'
)
currentCode
=
parts
.
length
>
3
&&
parts
[
3
].
startsWith
(
'CNPSC'
)
?
parts
[
3
]
:
parts
.
length
>
1
?
parts
[
1
]
:
parts
[
0
]
if
(
!
currentCode
.
startsWith
(
'JM'
))
{
const
parts
=
currentCode
.
split
(
'_'
)
currentCode
=
parts
.
length
>
3
&&
parts
[
3
].
startsWith
(
'CNPSC'
)
?
parts
[
3
]
:
parts
.
length
>
1
?
parts
[
1
]
:
parts
[
0
]
}
console
.
log
(
540
,
currentCode
)
for
(
const
product
of
productList
)
{
if
(
product
.
podJomallCnNo
===
currentCode
)
{
if
(
product
.
podJomallCnNo
===
currentCode
||
product
.
thirdSkuCode
===
currentCode
)
{
coverImage
.
value
=
product
.
previewImgs
?.[
0
]?.
url
||
''
nextTick
(()
=>
{
tableRef
.
value
?.
setCurrentRow
(
product
)
...
...
src/views/order/podCN/index.vue
View file @
87593839
...
...
@@ -1604,6 +1604,15 @@
{{
row
.
lanshouAddress
}}
<
/span
>
<
/div
>
<
div
v
-
if
=
"['TO_BE_CONFIRMED', 'STOCK_OUT'].includes(status)"
class
=
"order-detail-item"
>
<
span
class
=
"order-detail-item-label"
>
订单延期时间
:
<
/span
>
<
span
class
=
"order-detail-item-value red-time"
>
{{
calculateDelayTime
(
row
)
}}
<
/span
>
<
/div
>
<
/div
>
<
/template
>
<
template
#
price
=
"{ row
}
"
>
...
...
@@ -5463,7 +5472,10 @@ watch(
}
,
{
deep
:
true
,
immediate
:
true
}
,
// 添加immediate确保初始化时执行
)
// 当前时间响应式变量(每60秒更新一次)
const
currentTime
=
ref
(
new
Date
())
// 定时器实例
let
timer
:
number
|
null
=
null
onMounted
(()
=>
{
loadTabData
()
getUserMark
()
...
...
@@ -5471,8 +5483,45 @@ onMounted(() => {
getCustomTagList
()
loadCraftList
()
getlogisticsCompanyAllCodelist
()
// 每60秒更新一次当前时间
timer
=
window
.
setInterval
(()
=>
{
currentTime
.
value
=
new
Date
()
}
,
60000
)
}
)
// 计算时间差(小时数)并向上取整
const
calculateHoursDifference
=
(
startDateString
?:
string
):
string
=>
{
if
(
!
startDateString
)
return
'--'
try
{
const
startTime
=
new
Date
(
startDateString
)
const
diffInMs
=
currentTime
.
value
.
getTime
()
-
startTime
.
getTime
()
// 转换为小时并取整:ceil向上或者round:四舍五入
const
hours
=
Math
.
round
(
diffInMs
/
(
1000
*
60
*
60
))
return
`${hours
}
小时`
}
catch
(
error
)
{
console
.
error
(
'日期解析错误:'
,
error
)
return
'--'
}
}
// 根据订单状态计算延期时间
const
calculateDelayTime
=
computed
(()
=>
(
row
:
ProductList
)
=>
{
switch
(
status
.
value
)
{
case
'TO_BE_CONFIRMED'
:
return
row
.
createTime
?
calculateHoursDifference
(
row
.
createTime
)
:
'--'
case
'STOCK_OUT'
:
return
row
.
startStockingTime
?
calculateHoursDifference
(
row
.
startStockingTime
)
:
'--'
default
:
return
'--'
}
}
)
onBeforeUnmount
(()
=>
{
// 组件卸载时清除定时器
if
(
timer
)
{
clearInterval
(
timer
)
timer
=
null
}
}
)
const
handleShipmentAreaCommand
=
(
command
:
number
)
=>
{
shipmentArea
.
value
=
command
search
()
...
...
@@ -5843,6 +5892,10 @@ useEnterKeyTrigger({
text
-
overflow
:
ellipsis
;
white
-
space
:
nowrap
;
}
.
red
-
time
{
color
:
red
;
font
-
weight
:
bold
;
}
}
.
card
-
list
{
...
...
src/views/order/podUs/PodMakeOrder.vue
View file @
87593839
...
...
@@ -435,7 +435,10 @@ watch(
if
(
val
&&
val
.
productList
?.
length
)
val
.
productList
.
forEach
((
el
)
=>
{
if
(
!
el
.
previewImgs
)
{
if
(
el
.
productMark
===
'custom_normal'
)
{
if
(
el
.
productMark
===
'custom_normal'
||
el
.
productMark
===
'normal'
)
{
el
.
previewImgs
=
[{
url
:
el
.
variantImage
||
''
}]
}
else
{
el
.
previewImgs
=
el
.
imageAry
...
...
@@ -468,11 +471,11 @@ const renderItemBox = (bool: boolean) => {
if
(
!
boxItem
)
boxItem
=
{
data
:
{
productList
:
[]
}
}
const
{
data
}
=
boxItem
data
?.
productList
?.
forEach
((
el
)
=>
{
if
(
!
el
.
previewImgs
)
{
if
(
!
el
.
previewImgs
||
!
el
.
previewImgs
.
length
)
{
if
(
el
.
productMark
===
'custom_normal'
||
el
.
productMark
===
'normal'
)
{
el
.
previewImgs
=
[{
url
:
el
.
variantImage
||
''
}]
}
else
{
el
.
previewImgs
=
JSON
.
parse
(
el
.
imageAry
)
el
.
previewImgs
=
JSON
.
parse
(
el
.
imageAry
||
'[]'
)
}
}
})
...
...
@@ -495,15 +498,21 @@ const renderItemBox = (bool: boolean) => {
}
}
if
(
currentCode
)
{
const
parts
=
currentCode
.
split
(
'_'
)
currentCode
=
parts
.
length
>
3
&&
parts
[
3
].
startsWith
(
'USPSC'
)
?
parts
[
3
]
:
parts
.
length
>
1
?
parts
[
1
]
:
parts
[
0
]
if
(
!
currentCode
.
startsWith
(
'JM'
))
{
const
parts
=
currentCode
.
split
(
'_'
)
currentCode
=
parts
.
length
>
3
&&
parts
[
3
].
startsWith
(
'USPSC'
)
?
parts
[
3
]
:
parts
.
length
>
1
?
parts
[
1
]
:
parts
[
0
]
}
console
.
log
(
540
,
currentCode
)
for
(
const
product
of
productList
)
{
if
(
product
.
podJomallUsNo
===
currentCode
)
{
if
(
product
.
podJomallUsNo
===
currentCode
||
product
.
thirdSkuCode
===
currentCode
)
{
coverImage
.
value
=
product
.
previewImgs
?.[
0
]?.
url
||
''
console
.
log
(
441
,
coverImage
.
value
)
...
...
src/views/order/podUs/index.vue
View file @
87593839
This diff is collapsed.
Click to expand it.
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