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
94b18ef2
Commit
94b18ef2
authored
Oct 30, 2025
by
wuqian
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'release' into dev
parents
df8a5d97
ade84e89
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
130 additions
and
47 deletions
+130
-47
src/types/api/podCnOrder.ts
+2
-1
src/types/api/podUsOrder.ts
+7
-1
src/views/logistics/components/LogisticsWaySelect.tsx
+27
-4
src/views/order/podCN/index.vue
+45
-18
src/views/order/podUs/index.vue
+49
-23
No files found.
src/types/api/podCnOrder.ts
View file @
94b18ef2
...
@@ -38,7 +38,7 @@ export interface SearchForm {
...
@@ -38,7 +38,7 @@ export interface SearchForm {
thirdSkuCode
?:
string
thirdSkuCode
?:
string
supplierProductNo
?:
string
supplierProductNo
?:
string
batchArrangeNumber
?:
string
batchArrangeNumber
?:
string
craftCode
?:
string
craftCode
?:
string
[]
|
string
thirdStockSku
?:
string
thirdStockSku
?:
string
exceptionHandling
?:
number
|
undefined
exceptionHandling
?:
number
|
undefined
interceptStatus
?:
number
|
string
interceptStatus
?:
number
|
string
...
@@ -221,6 +221,7 @@ export interface LogisticsFormData {
...
@@ -221,6 +221,7 @@ export interface LogisticsFormData {
export
interface
CraftListData
{
export
interface
CraftListData
{
craftName
:
string
craftName
:
string
craftCode
:
string
craftCode
:
string
craftType
:
string
}
}
export
interface
PackingData
{
export
interface
PackingData
{
podProductionNo
?:
string
// 生产单号(PSCD 开头)
podProductionNo
?:
string
// 生产单号(PSCD 开头)
...
...
src/types/api/podUsOrder.ts
View file @
94b18ef2
...
@@ -34,7 +34,7 @@ export interface SearchForm {
...
@@ -34,7 +34,7 @@ export interface SearchForm {
thirdSkuCode
?:
string
thirdSkuCode
?:
string
supplierProductNo
?:
string
supplierProductNo
?:
string
batchArrangeNumber
?:
string
batchArrangeNumber
?:
string
craftCode
?:
string
craftCode
?:
string
|
string
[]
craftCodeArr
?:
string
[]
craftCodeArr
?:
string
[]
thirdStockSku
?:
string
thirdStockSku
?:
string
interceptStatus
?:
number
|
string
interceptStatus
?:
number
|
string
...
@@ -216,6 +216,7 @@ export interface LogisticsFormData {
...
@@ -216,6 +216,7 @@ export interface LogisticsFormData {
export
interface
CraftListData
{
export
interface
CraftListData
{
craftName
:
string
craftName
:
string
craftCode
:
string
craftCode
:
string
craftType
:
string
}
}
export
interface
InterceptStateGroupData
{
export
interface
InterceptStateGroupData
{
...
@@ -226,3 +227,8 @@ export interface InterceptStateGroupData {
...
@@ -226,3 +227,8 @@ export interface InterceptStateGroupData {
[
key
:
string
]:
number
[
key
:
string
]:
number
}
}
}
}
export
interface
IAllList
{
id
:
string
name
:
string
warehouseName
?:
string
}
src/views/logistics/components/LogisticsWaySelect.tsx
View file @
94b18ef2
...
@@ -43,7 +43,7 @@ interface IwayList {
...
@@ -43,7 +43,7 @@ interface IwayList {
}
}
interface
IAllList
{
interface
IAllList
{
factoryId
?:
number
factoryId
?:
number
id
:
number
id
:
number
|
string
name
:
string
name
:
string
serviceCode
?:
string
serviceCode
?:
string
siteUrl
?:
string
siteUrl
?:
string
...
@@ -83,6 +83,14 @@ export default defineComponent({
...
@@ -83,6 +83,14 @@ export default defineComponent({
type
:
String
,
type
:
String
,
default
:
'id'
,
default
:
'id'
,
},
},
searchPlaceholder
:
{
type
:
String
,
default
:
'请搜索承运商'
,
},
startPlaceholder
:
{
type
:
String
,
default
:
'请选择物流方式'
,
},
},
},
emits
:
[
'update:modelValue'
],
emits
:
[
'update:modelValue'
],
setup
(
props
,
{
emit
})
{
setup
(
props
,
{
emit
})
{
...
@@ -161,7 +169,20 @@ export default defineComponent({
...
@@ -161,7 +169,20 @@ export default defineComponent({
},
},
{
deep
:
true
,
immediate
:
true
},
{
deep
:
true
,
immediate
:
true
},
)
)
const
handleClearSelection
=
()
=>
{
/* 1. 清空显示文本 */
waysName
.
value
=
''
/* 2. 清空双向绑定结果 */
if
(
props
.
isRadio
)
{
selectedRadioList
.
value
=
''
// 单选
emit
(
'update:modelValue'
,
''
)
}
else
{
selectedList
.
value
=
[]
// 多选
emit
(
'update:modelValue'
,
[])
}
/* 3. 可选:把搜索框也重置 */
searchName
.
value
=
''
}
function
setCheckAll
(
company
:
ICompanyList
,
event
:
boolean
)
{
function
setCheckAll
(
company
:
ICompanyList
,
event
:
boolean
)
{
if
(
event
)
{
if
(
event
)
{
selectedList
.
value
=
[
selectedList
.
value
=
[
...
@@ -253,7 +274,9 @@ export default defineComponent({
...
@@ -253,7 +274,9 @@ export default defineComponent({
<
ElInput
<
ElInput
modelValue=
{
waysName
.
value
}
modelValue=
{
waysName
.
value
}
style=
{
{
width
:
'100%'
}
}
style=
{
{
width
:
'100%'
}
}
placeholder=
"请选择物流方式"
placeholder=
{
props
.
startPlaceholder
}
clearable
onClear=
{
handleClearSelection
}
/>
/>
),
),
}
}
}
}
...
@@ -271,7 +294,7 @@ export default defineComponent({
...
@@ -271,7 +294,7 @@ export default defineComponent({
}
}
}
}
clearable
clearable
style=
{
{
width
:
'200px'
,
padding
:
'10px'
}
}
style=
{
{
width
:
'200px'
,
padding
:
'10px'
}
}
placeholder=
"请搜索承运商"
placeholder=
{
props
.
searchPlaceholder
}
/>
/>
<
ElScrollbar
<
ElScrollbar
class=
"scroll-container"
class=
"scroll-container"
...
...
src/views/order/podCN/index.vue
View file @
94b18ef2
...
@@ -52,20 +52,12 @@
...
@@ -52,20 +52,12 @@
</ElFormItem>
</ElFormItem>
<ElFormItem
label=
"工艺"
>
<ElFormItem
label=
"工艺"
>
<
El
Select
<
LogisticsWay
Select
v-model=
"searchForm.craftCode"
v-model=
"searchForm.craftCode"
clearable
:company-list=
"craftList"
filterable
search-placeholder=
"搜索工艺名称"
placeholder=
"请选择工艺"
start-placeholder=
"请选择工艺名称"
style=
"width: 150px"
></LogisticsWaySelect>
>
<el-option
v-for=
"item in craftList"
:key=
"item.craftCode"
:label=
"item.craftName"
:value=
"item.craftCode"
></el-option>
</ElSelect>
</ElFormItem>
</ElFormItem>
<ElFormItem
label=
"库存SKU"
>
<ElFormItem
label=
"库存SKU"
>
<ElInput
<ElInput
...
@@ -2476,6 +2468,7 @@
...
@@ -2476,6 +2468,7 @@
<
/template
>
<
/template
>
<
script
setup
lang
=
"ts"
>
<
script
setup
lang
=
"ts"
>
import
{
getUserMarkList
}
from
'@/api/common'
import
{
getUserMarkList
}
from
'@/api/common'
import
LogisticsWaySelect
from
'../../logistics/components/LogisticsWaySelect.tsx'
// import
{
AnyObject
}
from
'@/types/api/warehouse'
// import
{
AnyObject
}
from
'@/types/api/warehouse'
import
{
import
{
InfoFilled
,
InfoFilled
,
...
@@ -2544,7 +2537,7 @@ import { BaseRespData } from '@/types/api'
...
@@ -2544,7 +2537,7 @@ import { BaseRespData } from '@/types/api'
import
UpdateAddress
from
'./components/updateAddress.vue'
import
UpdateAddress
from
'./components/updateAddress.vue'
import
{
getAllCountryApi
}
from
'@/api/logistics.ts'
import
{
getAllCountryApi
}
from
'@/api/logistics.ts'
import
{
InterceptStateGroupData
}
from
'@/types/api/podUsOrder'
import
{
InterceptStateGroupData
,
IAllList
}
from
'@/types/api/podUsOrder'
import
TableView
from
'@/components/TableView.vue'
import
TableView
from
'@/components/TableView.vue'
import
{
import
{
LogListData
,
LogListData
,
...
@@ -2776,7 +2769,7 @@ const [searchForm, resetSearchForm] = useValue<SearchForm>({
...
@@ -2776,7 +2769,7 @@ const [searchForm, resetSearchForm] = useValue<SearchForm>({
thirdSkuCode
:
''
,
thirdSkuCode
:
''
,
supplierProductNo
:
''
,
supplierProductNo
:
''
,
batchArrangeNumber
:
''
,
batchArrangeNumber
:
''
,
craftCode
:
''
,
craftCode
:
[]
,
thirdStockSku
:
''
,
thirdStockSku
:
''
,
}
)
}
)
const
shipmentArea
=
ref
(
0
)
const
shipmentArea
=
ref
(
0
)
...
@@ -4982,14 +4975,48 @@ const loadWarehouseList = async () => {
...
@@ -4982,14 +4975,48 @@ const loadWarehouseList = async () => {
console
.
error
(
e
)
console
.
error
(
e
)
}
}
}
}
const
processType
=
ref
([
{
label
:
'烫画'
,
value
:
'TH'
,
}
,
{
label
:
'直喷'
,
value
:
'ZP'
,
}
,
{
label
:
'刺绣'
,
value
:
'CX'
,
}
,
{
label
:
'雕刻'
,
value
:
'DK'
,
}
,
{
label
:
'白胚'
,
value
:
'BP'
,
}
,
{
label
:
'其他'
,
value
:
'QT'
,
}
,
])
// 获取工艺列表
// 获取工艺列表
const
craftList
=
ref
<
CraftListData
[]
>
([])
const
craftList
=
ref
<
IAllList
[]
>
([])
const
processTypeMap
=
processType
.
value
.
reduce
((
acc
,
cur
)
=>
{
acc
[
cur
.
value
]
=
cur
.
label
return
acc
}
,
{
}
as
Record
<
string
,
string
>
)
const
loadCraftList
=
async
()
=>
{
const
loadCraftList
=
async
()
=>
{
try
{
try
{
const
res
=
await
getListCraftApi
()
const
res
=
await
getListCraftApi
()
if
(
res
.
code
!==
200
)
return
if
(
res
.
code
!==
200
)
return
craftList
.
value
=
res
.
data
const
data
:
CraftListData
[]
=
res
.
data
craftList
.
value
=
data
.
map
((
item
)
=>
({
id
:
item
.
craftCode
,
name
:
item
.
craftName
,
warehouseName
:
processTypeMap
[
item
.
craftType
]
??
'其他'
,
// craftType 对应中文
}
))
as
IAllList
[]
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
error
(
e
)
console
.
error
(
e
)
}
}
...
...
src/views/order/podUs/index.vue
View file @
94b18ef2
...
@@ -53,23 +53,12 @@
...
@@ -53,23 +53,12 @@
</ElFormItem>
</ElFormItem>
<ElFormItem
label=
"工艺"
>
<ElFormItem
label=
"工艺"
>
<ElSelect
<LogisticsWaySelect
v-model=
"searchForm.craftCodeArr"
v-model=
"searchForm.craftCode"
clearable
:company-list=
"craftList"
filterable
search-placeholder=
"搜索工艺名称"
multiple
start-placeholder=
"请选择工艺名称"
collapse-tags
></LogisticsWaySelect>
collapse-tags-tooltip
placeholder=
"请输入工艺"
style=
"width: 150px"
>
<el-option
v-for=
"item in craftList"
:key=
"item.craftCode"
:label=
"item.craftName"
:value=
"item.craftCode"
></el-option>
</ElSelect>
</ElFormItem>
</ElFormItem>
<ElFormItem
label=
"库存SKU"
>
<ElFormItem
label=
"库存SKU"
>
<ElInput
<ElInput
...
@@ -2874,6 +2863,7 @@
...
@@ -2874,6 +2863,7 @@
<
/ElDialog
>
<
/ElDialog
>
<
/template
>
<
/template
>
<
script
setup
lang
=
"ts"
>
<
script
setup
lang
=
"ts"
>
import
LogisticsWaySelect
from
'../../logistics/components/LogisticsWaySelect.tsx'
import
{
getUserMarkList
}
from
'@/api/common'
import
{
getUserMarkList
}
from
'@/api/common'
// import
{
AnyObject
}
from
'@/types/api/warehouse'
// import
{
AnyObject
}
from
'@/types/api/warehouse'
import
{
convertToChinaTime
}
from
'@/utils/index'
import
{
convertToChinaTime
}
from
'@/utils/index'
...
@@ -2971,6 +2961,7 @@ import {
...
@@ -2971,6 +2961,7 @@ import {
CraftListData
,
CraftListData
,
ExportParams
,
ExportParams
,
InterceptStateGroupData
,
InterceptStateGroupData
,
IAllList
}
from
'@/types/api/podUsOrder'
}
from
'@/types/api/podUsOrder'
import
usePageList
from
'@/utils/hooks/usePageList'
import
usePageList
from
'@/utils/hooks/usePageList'
import
{
useValue
}
from
'@/utils/hooks/useValue'
import
{
useValue
}
from
'@/utils/hooks/useValue'
...
@@ -3206,8 +3197,8 @@ const [searchForm, resetSearchForm] = useValue<SearchForm>({
...
@@ -3206,8 +3197,8 @@ const [searchForm, resetSearchForm] = useValue<SearchForm>({
thirdSkuCode
:
''
,
thirdSkuCode
:
''
,
supplierProductNo
:
''
,
supplierProductNo
:
''
,
batchArrangeNumber
:
''
,
batchArrangeNumber
:
''
,
craftCode
:
''
,
craftCode
:
[]
,
craftCodeArr
:
[],
//
craftCodeArr: [],
thirdStockSku
:
''
,
thirdStockSku
:
''
,
}
)
}
)
const
exceptionStatus
=
ref
(
1
)
const
exceptionStatus
=
ref
(
1
)
...
@@ -3845,10 +3836,10 @@ const {
...
@@ -3845,10 +3836,10 @@ const {
factorySubOrderNumber
,
factorySubOrderNumber
,
startTime
:
timeRange
.
value
?.[
0
]
||
null
,
startTime
:
timeRange
.
value
?.[
0
]
||
null
,
endTime
:
timeRange
.
value
?.[
1
]
||
null
,
endTime
:
timeRange
.
value
?.[
1
]
||
null
,
craftCode
:
searchForm
.
value
?.
craftCodeArr
?.
join
(
','
)
||
''
,
//
craftCode: searchForm.value?.craftCodeArr?.join(',') || '',
tagsId
:
searchForm
.
value
?.
tagsIdArr
?.
join
(
','
)
||
''
,
tagsId
:
searchForm
.
value
?.
tagsIdArr
?.
join
(
','
)
||
''
,
}
}
baseparams
.
craftCodeArr
&&
delete
baseparams
.
craftCodeArr
//
baseparams.craftCodeArr && delete baseparams.craftCodeArr
baseparams
.
tagsIdArr
&&
delete
baseparams
.
tagsIdArr
baseparams
.
tagsIdArr
&&
delete
baseparams
.
tagsIdArr
// 批量下载
// 批量下载
if
(
status
.
value
===
'BATCH_DOWNLOAD'
)
{
if
(
status
.
value
===
'BATCH_DOWNLOAD'
)
{
...
@@ -5721,14 +5712,49 @@ const loadWarehouseList = async () => {
...
@@ -5721,14 +5712,49 @@ const loadWarehouseList = async () => {
console
.
error
(
e
)
console
.
error
(
e
)
}
}
}
}
const
processType
=
ref
([
{
label
:
'烫画'
,
value
:
'TH'
,
}
,
{
label
:
'直喷'
,
value
:
'ZP'
,
}
,
{
label
:
'刺绣'
,
value
:
'CX'
,
}
,
{
label
:
'雕刻'
,
value
:
'DK'
,
}
,
{
label
:
'白胚'
,
value
:
'BP'
,
}
,
{
label
:
'其他'
,
value
:
'QT'
,
}
,
])
// 获取工艺列表
// 获取工艺列表
const
craftList
=
ref
<
CraftListData
[]
>
([])
const
craftList
=
ref
<
IAllList
[]
>
([])
const
processTypeMap
=
processType
.
value
.
reduce
((
acc
,
cur
)
=>
{
acc
[
cur
.
value
]
=
cur
.
label
return
acc
}
,
{
}
as
Record
<
string
,
string
>
)
const
loadCraftList
=
async
()
=>
{
const
loadCraftList
=
async
()
=>
{
try
{
try
{
const
res
=
await
getListCraftApi
()
const
res
=
await
getListCraftApi
()
if
(
res
.
code
!==
200
)
return
if
(
res
.
code
!==
200
)
return
craftList
.
value
=
res
.
data
const
data
:
CraftListData
[]
=
res
.
data
craftList
.
value
=
data
.
map
((
item
)
=>
({
id
:
item
.
craftCode
,
name
:
item
.
craftName
,
warehouseName
:
processTypeMap
[
item
.
craftType
]
??
'其他'
,
// craftType 对应中文
}
))
as
IAllList
[]
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
error
(
e
)
console
.
error
(
e
)
}
}
...
...
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