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
0741ccdd
Commit
0741ccdd
authored
Nov 06, 2025
by
zhuzhequan
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' into 'master'
Dev See merge request
!97
parents
db20913b
d23313db
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
769 additions
and
119 deletions
+769
-119
src/api/podUsOrder.ts
+13
-0
src/components/SearchForm.tsx
+17
-0
src/components/TableView.vue
+13
-1
src/types/api/podCnOrder.ts
+1
-0
src/utils/hooks/useEnterKeyTrigger.ts
+53
-0
src/views/AccountStatementNote.vue
+23
-3
src/views/DeliveryNotePage.vue
+42
-20
src/views/logistics/declarationRule.vue
+1
-0
src/views/logistics/logisticsCalculate.vue
+5
-3
src/views/logistics/logisticsCompany.vue
+22
-2
src/views/logistics/logisticsMethod.vue
+1
-0
src/views/logistics/logisticsPartition.vue
+1
-0
src/views/logistics/logisticsQuotation.vue
+1
-0
src/views/logistics/logisticsTracking.vue
+19
-2
src/views/logistics/sortingConfiguration.vue
+17
-2
src/views/order/index.vue
+21
-1
src/views/order/orderTracking/index.vue
+31
-1
src/views/order/orderTracking/indexcn.vue
+145
-32
src/views/order/pod/deliveryOrderList.vue
+35
-8
src/views/order/pod/index.vue
+22
-1
src/views/order/podCN/index.vue
+50
-1
src/views/order/podUs/index.vue
+93
-26
src/views/podBillOrder/index.vue
+23
-2
src/views/podUsBillOrder/index.vue
+23
-2
src/views/warehouse/issueDoc.vue
+22
-2
src/views/warehouse/position.vue
+26
-6
src/views/warehouse/receiptDoc.vue
+23
-2
src/views/warehouse/warning.vue
+26
-2
No files found.
src/api/podUsOrder.ts
View file @
0741ccdd
...
...
@@ -556,6 +556,19 @@ export function changeToFinished(ids: string) {
)
}
export
function
reissueOrderApi
(
ids
:
string
)
{
return
axios
.
get
<
never
,
BaseRespData
<
never
>>
(
`factory/podJomallOrderUs/reissueOrder`
,
{
params
:
{
ids
}
},
)
}
export
function
OrderCnReceiverAddress
(
idList
:
number
[])
{
return
axios
.
post
<
never
,
BaseRespData
<
never
>>
(
`factory/podJomallOrderCn/syncReceiverAddress`
,
idList
,
)
}
// 转至已完成
export
function
updateTrackingNumberAndRegister
(
id
:
number
,
...
...
src/components/SearchForm.tsx
View file @
0741ccdd
...
...
@@ -12,6 +12,7 @@ import {
ISeachFormConfig
,
EDataType
,
}
from
'@/types/searchType'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
// 组件 - 数据类型 映射
const
componentDataTypeMap
=
new
Map
([
...
...
@@ -91,10 +92,15 @@ export default defineComponent({
type
:
Boolean
,
default
:
true
,
},
callback
:
{
type
:
Function
as
PropType
<
()
=>
void
>
,
default
:
()
=>
{},
},
},
emits
:
[
'search'
,
'reset'
,
'fold'
,
'add'
,
'delete'
,
'update:modelValue'
],
setup
(
props
,
{
emit
,
slots
,
attrs
})
{
const
formRef
=
ref
()
const
searchBtnRef
=
ref
()
const
formWrapperRef
=
ref
()
const
searchForm
=
ref
<
ISearchForm
>
({})
const
selectResult
=
ref
<
ISeachFormConfig
[]
>
([])
...
...
@@ -151,6 +157,16 @@ export default defineComponent({
e
.
preventDefault
()
}
useEnterKeyTrigger
({
formRef
:
formRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
props
.
callback
()
},
})
return
()
=>
(
<
div
style=
{
styles
.
searchForm
}
>
<
div
style=
{
styles
.
searchFormHeader
}
class=
"pb-15"
>
...
...
@@ -215,6 +231,7 @@ export default defineComponent({
)
}
{
props
.
isSearchBtn
&&
(
<
ElButton
ref=
{
searchBtnRef
}
class=
"btn"
type=
"primary"
onClick=
{
()
=>
emit
(
'search'
,
searchForm
.
value
)
}
...
...
src/components/TableView.vue
View file @
0741ccdd
...
...
@@ -7,6 +7,7 @@
:stripe=
"stripe"
header-align=
"center"
height=
"100%"
@
row-click=
"rowClick"
v-bind=
"attrs"
:class=
"internalIsMore ? 'is-more-active' : ''"
@
header-click=
"handleTableHeaderClick"
...
...
@@ -88,6 +89,11 @@ const props = defineProps({
type
:
Array
,
required
:
true
,
},
rowClickSelect
:
{
type
:
Boolean
,
required
:
false
,
default
:
false
,
},
columns
:
{
type
:
Array
as
PropType
<
CustomColumn
<
T
>>
,
required
:
true
,
...
...
@@ -127,7 +133,13 @@ const clearSelection = () => {
const
toggleAllSelection
=
()
=>
{
tableRef
.
value
?.
toggleAllSelection
()
}
const
rowClick
=
(
row
:
NonNullable
<
unknown
>
)
=>
{
console
.
log
(
row
)
console
.
log
(
tableRef
.
value
,
props
.
rowClickSelect
)
if
(
props
.
rowClickSelect
){
tableRef
.
value
?.
toggleRowSelection
(
row
,
true
)
}
}
const
handleTableHeaderClick
=
(
column
:
{
type
?:
string
},
event
:
Event
)
=>
{
if
(
column
.
type
===
'selection'
&&
props
.
isMore
)
{
event
.
preventDefault
()
...
...
src/types/api/podCnOrder.ts
View file @
0741ccdd
...
...
@@ -45,6 +45,7 @@ export interface SearchForm {
sizeType
?:
number
|
null
tagsId
?:
string
source
?:
string
size
?:
string
tagsIdArr
?:
(
number
|
null
)[]
}
export
interface
PodCnOrderListData
{
...
...
src/utils/hooks/useEnterKeyTrigger.ts
0 → 100644
View file @
0741ccdd
// hooks/useEnterKeyTrigger.js
import
{
onMounted
,
onUnmounted
,
unref
}
from
'vue'
interface
UseEnterKeyTriggerOptions
{
formRef
:
Ref
<
HTMLElement
|
null
>
|
HTMLElement
|
VueComponent
btnRef
:
Ref
<
HTMLElement
|
null
>
|
HTMLElement
|
VueComponent
callback
?:
(
event
:
KeyboardEvent
)
=>
void
}
interface
VueComponent
{
$el
:
HTMLElement
}
export
function
useEnterKeyTrigger
(
options
:
UseEnterKeyTriggerOptions
)
{
const
{
formRef
,
btnRef
,
callback
}
=
options
if
(
!
formRef
)
{
console
.
warn
(
'useEnterKeyTrigger: formRef is required'
)
return
}
const
handleKeydown
=
(
event
:
KeyboardEvent
)
=>
{
if
(
event
.
key
!==
'Enter'
)
return
// 阻止默认行为
event
.
preventDefault
()
event
.
stopPropagation
()
// 执行回调或点击按钮
if
(
typeof
callback
===
'function'
)
{
callback
(
event
)
}
else
{
const
btnElement
=
unref
(
btnRef
)
as
VueComponent
if
(
btnElement
)
{
const
element
=
btnElement
.
$el
||
btnElement
element
.
click
()
}
}
}
onMounted
(()
=>
{
const
formElement
=
unref
(
formRef
)
as
VueComponent
if
(
formElement
)
{
const
element
=
formElement
.
$el
||
formElement
element
.
addEventListener
(
'keydown'
,
handleKeydown
,
true
)
// 使用捕获阶段
}
})
onUnmounted
(()
=>
{
const
formElement
=
unref
(
formRef
)
as
VueComponent
if
(
formElement
)
{
const
element
=
formElement
.
$el
||
formElement
element
.
removeEventListener
(
'keydown'
,
handleKeydown
,
true
)
}
})
}
src/views/AccountStatementNote.vue
View file @
0741ccdd
...
...
@@ -27,7 +27,7 @@
<
splitDiv
size
=
"50"
>
<
template
#
top
>
<
div
class
=
"header-filter-form"
>
<
ElForm
:
model
=
"searchForm"
inline
>
<
ElForm
:
model
=
"searchForm"
inline
ref
=
"searchFormRef"
>
<
ElFormItem
label
=
"账期"
>
<
el
-
date
-
picker
v
-
model
=
"dateRange"
...
...
@@ -71,7 +71,9 @@
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButton
>
<
ElButton
type
=
"primary"
@
click
=
"search"
ref
=
"searchBtnRef"
>
查询
<
/ElButto
n
>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
@
click
=
"resetSearchForm"
>
重置
<
/ElButton
>
...
...
@@ -545,7 +547,7 @@ import shipmentOrderDetailInfo from '@/components/ShipmentOrderDetail.vue'
import
ImageView
from
'@/components/ImageView.vue'
import
{
showConfirm
}
from
'@/utils/ui'
// import
{
getUserMarkList
}
from
'@/api/auth.ts'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
interface
Tree
{
remark
?:
string
count
?:
number
...
...
@@ -861,6 +863,24 @@ const exportExcel = async () => {
console
.
error
(
e
)
}
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
onMounted
(()
=>
{
getTreeNum
()
}
)
...
...
src/views/DeliveryNotePage.vue
View file @
0741ccdd
<
template
>
<div
class=
"delivery-note-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<ElForm
:model=
"searchForm"
inline
>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
inline
>
<ElFormItem
label=
"发货时间"
>
<el-date-picker
:default-time=
"[new Date(0,0,0,0,0,0),new Date(0,0,0,23,59,59)]"
:default-time=
"[
new Date(0, 0, 0, 0, 0, 0),
new Date(0, 0, 0, 23, 59, 59),
]"
v-model=
"dateRange"
type=
"datetimerange"
start-placeholder=
"开始时间"
...
...
@@ -84,16 +87,20 @@
/>
</ElFormItem>
<ElFormItem>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
ref=
"searchBtnRef"
type=
"primary"
@
click=
"search"
>
查询
</ElButton
>
</ElFormItem>
<ElFormItem>
<ElButton
@
click=
"resetSearchForm"
>
重置
</ElButton>
</ElFormItem>
<ElFormItem>
<ElButton
v-loading=
"btnLoading"
type=
"success"
@
click=
"onConfirmDateRange"
>
导出发货单
</ElButton
>
<ElButton
v-loading=
"btnLoading"
type=
"success"
@
click=
"onConfirmDateRange"
>
导出发货单
</ElButton>
</ElFormItem>
<!--
<ElFormItem>
<ElButton
type=
"primary"
@
click=
"generateStatement"
...
...
@@ -158,7 +165,7 @@
<div
v-for=
"(pi, index) in p"
:key=
"index"
:title=
"
pi.label +':'
+ val(od, pi.key || '')"
:title=
"
pi.label + ':'
+ val(od, pi.key || '')"
class=
"send-order-prop-item"
>
<span>
{{
pi
.
label
}}
:
{{
val
(
od
,
pi
.
key
||
''
)
}}
</span>
...
...
@@ -167,8 +174,7 @@
class=
"icon"
@
click=
"copy(val(od, pi.key || ''))"
>
<DocumentCopy
/>
<DocumentCopy
/>
</el-icon>
</div>
</div>
...
...
@@ -186,19 +192,18 @@
<div
v-for=
"pi in logisticsProps"
:key=
"pi.label"
:title=
"
pi.label +':'
+ val(row, pi.key)"
:title=
"
pi.label + ':'
+ val(row, pi.key)"
class=
"send-order-prop-item"
>
<span
v-if=
"val(row, pi.key)"
>
{{
pi
.
label
}}
:
{{
val
(
row
,
pi
.
key
)
}}
</span
>
{{
pi
.
label
}}
:
{{
val
(
row
,
pi
.
key
)
}}
</span
>
<el-icon
v-if=
"pi.copyable && val(row, pi.key)"
class=
"icon"
@
click=
"copy(val(row, pi.key || ''))"
>
<DocumentCopy
/>
<DocumentCopy
/>
</el-icon>
</div>
</div>
...
...
@@ -213,10 +218,7 @@
>
<
template
#
default=
"{ row }"
>
<div>
<ElButton
link
@
click=
"onViewOrder(row)"
>
查看订单
</ElButton
>
<ElButton
link
@
click=
"onViewOrder(row)"
>
查看订单
</ElButton>
</div>
</
template
>
</ElTableColumn>
...
...
@@ -259,7 +261,7 @@ import { useValue } from '@/utils/hooks/useValue'
import
{
getDeliveryNoteList
,
printDeliveryNote
,
getOrderByIdApi
getOrderByIdApi
,
}
from
'@/api/order'
import
{
getUserMarkList
}
from
'@/api/auth'
import
{
ref
,
onMounted
}
from
'vue'
...
...
@@ -268,6 +270,7 @@ import { val } from '@/utils'
import
{
filePath
}
from
'@/api/axios'
import
{
type
CellCls
,
ElMessage
}
from
'element-plus'
import
OrderDetail
from
'./order/OrderDetail.vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
const
[
searchForm
,
resetSearchForm
]
=
useValue
<
DeliveryNoteSearchForm
>
({})
const
selection
=
ref
<
DeliveryNoteData
[]
>
([])
...
...
@@ -357,7 +360,10 @@ const onConfirmDateRange = async () => {
}
btnLoading
.
value
=
true
try
{
const
res
=
await
printDeliveryNote
(
dateRange
.
value
,
searchForm
.
value
?.
userMark
)
const
res
=
await
printDeliveryNote
(
dateRange
.
value
,
searchForm
.
value
?.
userMark
,
)
window
.
open
(
filePath
+
res
.
message
)
dateRange
.
value
=
[]
dialogVisible
.
value
=
false
...
...
@@ -428,6 +434,22 @@ const copy = (text: string) => {
navigator
.
clipboard
.
writeText
(
text
)
ElMessage
.
success
(
'复制成功'
)
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/logistics/declarationRule.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"user-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<SearchForm
:callback=
"search"
:config=
"searchConfig"
@
search=
"search"
@
add=
"addDialog"
...
...
src/views/logistics/logisticsCalculate.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"user-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<SearchForm
:callback=
"search"
:config=
"searchConfig"
:isSearchBtn=
"false"
:isAddBtn=
"false"
...
...
@@ -56,7 +57,7 @@ const searchConfig = ref<ISeachFormConfig[]>([
{
prop
:
'code'
,
type
:
'input'
,
label
:
'邮编'
,
label
:
'邮编'
,
attrs
:
{
clearable
:
true
,
placeholder
:
'请输入邮编'
,
...
...
@@ -72,13 +73,14 @@ const searchConfig = ref<ISeachFormConfig[]>([
hasUnit
:
true
,
suffix
:
'g'
,
},
},{
},
{
prop
:
'orderNumber'
,
type
:
'input'
,
label
:
'订单号'
,
attrs
:
{
clearable
:
true
,
placeholder
:
'请输入订单号'
,
placeholder
:
'请输入订单号'
,
},
},
])
...
...
src/views/logistics/logisticsCompany.vue
View file @
0741ccdd
...
...
@@ -14,6 +14,7 @@ import {
logisticsCompanyUpdate
,
}
from
'@/api/logistics.ts'
import
LogDialog
from
'@/views/logistics/components/LogDialog.tsx'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
interface
LogList
{
id
?:
number
...
...
@@ -178,6 +179,23 @@ const getLogisticsList = async () => {
const
{
data
}
=
await
logisticsCompanyAllCodelist
()
logisticsList
.
value
=
data
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
getData
()
},
})
getData
()
getLogisticsList
()
</
script
>
...
...
@@ -186,7 +204,7 @@ getLogisticsList()
<split-div>
<template
#
top
>
<el-card>
<el-form
inline
:model=
"searchForm"
>
<el-form
inline
:model=
"searchForm"
ref=
"searchFormRef"
>
<el-form-item
label=
"名称"
>
<el-input
v-model=
"searchForm.name"
...
...
@@ -205,7 +223,9 @@ getLogisticsList()
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"getData"
>
查询
</el-button>
<el-button
type=
"primary"
@
click=
"getData"
ref=
"searchBtnRef"
>
查询
</el-button
>
<el-button
type=
"success"
@
click=
"createWarehouse"
>
新增
</el-button>
<el-button
type=
"danger"
@
click=
"handleBatchDelete(null)"
>
删除
</el-button
...
...
src/views/logistics/logisticsMethod.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"user-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<SearchForm
:callback=
"search"
v-model=
"searchForm"
:config=
"searchConfig"
@
search=
"search"
...
...
src/views/logistics/logisticsPartition.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"user-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<SearchForm
:callback=
"search"
:config=
"searchConfig"
@
search=
"search"
:isAddBtn=
"false"
...
...
src/views/logistics/logisticsQuotation.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"user-page flex-column card h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<SearchForm
:callback=
"search"
:config=
"searchConfig"
@
search=
"search"
@
add=
"addDialog"
...
...
src/views/logistics/logisticsTracking.vue
View file @
0741ccdd
...
...
@@ -26,7 +26,7 @@
<
split
-
div
>
<
template
#
top
>
<
el
-
card
>
<
el
-
form
inline
:
model
=
"searchForm"
>
<
el
-
form
inline
:
model
=
"searchForm"
ref
=
"searchFormRef"
>
<
el
-
form
-
item
label
=
"物流跟踪号"
>
<
el
-
input
v
-
model
=
"searchForm.trackNumber"
...
...
@@ -44,7 +44,9 @@
><
/el-input
>
<
/el-form-item
>
<
el
-
form
-
item
>
<
el
-
button
type
=
"primary"
@
click
=
"getData"
>
查询
<
/el-button
>
<
el
-
button
type
=
"primary"
@
click
=
"getData"
ref
=
"searchBtnRef"
>
查询
<
/el-butto
n
>
<
el
-
button
v
-
if
=
"nodeId === 0 || nodeId === 11"
type
=
"success"
...
...
@@ -126,6 +128,7 @@ import {
import
{
getOrderTabData
}
from
'@/api/podUsOrder'
import
{
LogisticsTrackingTree
}
from
'@/views/logistics/types/logistics'
import
{
Tab
}
from
'@/types/api/podUsOrder'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
interface
SearchForm
{
shopNumber
:
string
...
...
@@ -384,6 +387,20 @@ onMounted(() => {
getData
()
loadTabData
()
}
)
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
getData
()
}
,
}
)
<
/script
>
<
style
scoped
lang
=
"scss"
>
...
...
src/views/logistics/sortingConfiguration.vue
View file @
0741ccdd
...
...
@@ -18,6 +18,7 @@ import {
deleteSortingApi
,
}
from
'@/api/logistics'
import
{
nextTick
,
ref
}
from
'vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
usePageList
from
'@/utils/hooks/usePageList'
import
{
ElMessage
,
ElMessageBox
}
from
'element-plus'
...
...
@@ -251,6 +252,18 @@ const handleClick = () => {
loading
.
close
()
}
}
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
</
script
>
<
template
>
...
...
@@ -267,7 +280,7 @@ const handleClick = () => {
class=
"flex-column h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<el-form
inline
:model=
"searchForm"
>
<el-form
inline
:model=
"searchForm"
ref=
"searchFormRef"
>
<el-form-item
label=
"分拣设备"
>
<el-input
v-model
.
trim=
"searchForm.sortingFacility"
...
...
@@ -308,7 +321,9 @@ const handleClick = () => {
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"search"
>
查询
</el-button>
<el-button
type=
"primary"
@
click=
"search"
ref=
"searchBtnRef"
>
查询
</el-button
>
<el-button
type=
"success"
@
click=
"createWarehouse"
>
新增
</el-button
>
...
...
src/views/order/index.vue
View file @
0741ccdd
...
...
@@ -5,6 +5,7 @@
<div
class=
"header-filter"
>
<div
class=
"header-filter-form"
>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -153,7 +154,9 @@
</el-select>
</ElFormItem>
<ElFormItem>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
ref=
"searchBtnRef"
type=
"primary"
@
click=
"search"
>
查询
</ElButton
>
</ElFormItem>
<!--
<ElFormItem>
-->
<!--
<ElButton
@
click=
"resetSearchForm"
>
重置
</ElButton>
-->
...
...
@@ -1037,6 +1040,7 @@ import useShipment from './hook/useShipment'
import
useQuarantine
from
'./hook/useQuarantine'
import
Quarantine
from
'./Quarantine.vue'
import
RightClickMenu
from
'@/components/RightClickMenu.vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
const
[
searchForm
]
=
useValue
<
SearchForm
>
({
mainSku
:
''
,
...
...
@@ -1725,6 +1729,22 @@ const rightChange = (key: string) => {
const
onChangeCurrentRow
=
(
item
:
ProductList
)
=>
{
currentRow
.
value
=
item
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
<
/script
>
<
style
lang
=
"scss"
scoped
>
.
header
-
filter
-
form
{
...
...
src/views/order/orderTracking/index.vue
View file @
0741ccdd
...
...
@@ -39,6 +39,7 @@ import { isArray, isString } from '@/utils/validate'
import
ResultInfo
from
'../podUs/components/ResultInfo.vue'
import
{
filePath
}
from
'@/api/axios'
import
{
convertToChinaTime
}
from
'@/utils/index'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
useValue
}
from
'@/utils/hooks/useValue'
...
...
@@ -714,6 +715,31 @@ const handleSelectionChange = (val: PodUsOrderListData[]) => {
selection
.
value
=
val
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
const
searchFormPopoverRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
useEnterKeyTrigger
({
formRef
:
searchFormPopoverRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
watch
(
()
=>
currentRowId
.
value
,
(
newValue
,
oldValue
)
=>
{
...
...
@@ -738,6 +764,7 @@ onMounted(() => {
<template
#
top
>
<el-card>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -866,6 +893,7 @@ onMounted(() => {
<ElFormItem>
<ElPopover
placement=
"bottom"
width=
"600"
trigger=
"click"
>
<ElForm
ref=
"searchFormPopoverRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -1025,7 +1053,9 @@ onMounted(() => {
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
type=
"primary"
@
click=
"search"
ref=
"searchBtnRef"
>
查询
</ElButton
>
</span>
</ElFormItem>
<ElFormItem>
...
...
src/views/order/orderTracking/indexcn.vue
View file @
0741ccdd
<
script
setup
lang=
"ts"
>
import
{
OrderCnReceiverAddress
}
from
'@/api/podUsOrder.ts'
defineOptions
({
name
:
'OrderTracking'
,
})
...
...
@@ -37,9 +39,11 @@ import { isArray, isString } from '@/utils/validate'
import
ResultInfo
from
'../podUs/components/ResultInfo.vue'
import
{
filePath
}
from
'@/api/axios'
import
{
convertToChinaTime
}
from
'@/utils/index'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
useValue
}
from
'@/utils/hooks/useValue'
import
{
ElFormItem
}
from
'element-plus'
const
tabValue
=
ref
(
'1'
)
const
[
searchForm
,
resetSearchForm
]
=
useValue
<
SearchForm
>
({
timeType
:
1
,
shopNumber
:
''
,
...
...
@@ -93,6 +97,12 @@ const tableColumns = computed(() => {
align
:
'center'
,
},
{
label
:
'是否代发'
,
slot
:
'replaceShipment'
,
prop
:
'replaceShipment'
,
width
:
120
,
align
:
'center'
,
},{
label
:
'物流类型'
,
slot
:
'shipmentType'
,
prop
:
'shipmentType'
,
...
...
@@ -367,6 +377,10 @@ const search = () => {
goodsData
.
value
=
[]
logList
.
value
=
[]
getOrderListFn
()
if
(
tabValue
.
value
===
'2'
){
zoneType
.
value
=
'Asia/Shanghai'
operationLog
()
}
}
const
getDateRange
=
(
days
=
0
,
type
:
'past'
|
'future'
=
'past'
)
=>
{
...
...
@@ -428,10 +442,10 @@ const submitExportForm = async () => {
...
params
,
...(
resourceType
===
2
?
{
...
searchForm
.
value
,
startTime
:
timeRange
.
value
?.[
0
]
||
null
,
endTime
:
timeRange
.
value
?.[
1
]
||
null
,
}
...
searchForm
.
value
,
startTime
:
timeRange
.
value
?.[
0
]
||
null
,
endTime
:
timeRange
.
value
?.[
1
]
||
null
,
}
:
{}),
})
ElMessage
.
success
(
'请求成功,请稍后到右上角[我的下载]中查看'
)
...
...
@@ -551,6 +565,7 @@ const getOrderListFn = async () => {
}
}
const
currentRowId
=
ref
<
number
>
()
function
rowClick
(
row
:
PodCnOrderListData
)
{
currentRowId
.
value
=
row
.
id
goodsLoading
.
value
=
true
...
...
@@ -560,6 +575,7 @@ function rowClick(row: PodCnOrderListData) {
clearTimeout
(
timer
)
},
500
)
}
const
logLoading
=
ref
(
false
)
const
operationLog
=
async
()
=>
{
logLoading
.
value
=
true
...
...
@@ -614,10 +630,43 @@ const resultInfo = ref<
>
([])
const
resultRefs
=
ref
<
InstanceType
<
typeof
ResultInfo
>
|
null
>
(
null
)
const
refreshAddress
=
async
()
=>
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
}
await
ElMessageBox
.
confirm
(
'是否刷新地址?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
})
const
loading
=
ElLoading
.
service
({
fullscreen
:
true
,
text
:
'操作中...'
,
background
:
'rgba(0, 0, 0, 0.3)'
,
})
try
{
const
res
=
await
OrderCnReceiverAddress
(
selection
.
value
.
map
((
item
)
=>
item
.
id
),
)
if
(
res
.
code
!==
200
)
return
ElMessage
.
success
(
'操作成功'
)
search
()
await
loadTabData
()
if
(
tabValue
.
value
===
'2'
){
zoneType
.
value
=
'Asia/Shanghai'
await
operationLog
()
}
}
catch
(
e
)
{
console
.
error
(
e
)
}
finally
{
loading
.
close
()
}
}
/**
* @description: 获取打印面单
*/
const
getOrderByIdApi
=
async
(
type
:
string
)
=>
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
...
...
@@ -681,6 +730,7 @@ const getOrderByIdApi = async (type: string) => {
const
tempChinaLogs
=
ref
<
LogListData
[]
>
([])
const
zoneType
=
ref
<
string
>
(
'Asia/Shanghai'
)
function
changeChinaTime
(
zone
:
string
)
{
zoneType
.
value
=
zone
logList
.
value
=
tempChinaLogs
.
value
.
map
((
el
)
=>
{
...
...
@@ -701,6 +751,32 @@ const handleSelectionChange = (val: PodCnOrderListData[]) => {
selection
.
value
=
val
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchFormPopoverRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
useEnterKeyTrigger
({
formRef
:
searchFormPopoverRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
watch
(
()
=>
currentRowId
.
value
,
(
newValue
,
oldValue
)
=>
{
...
...
@@ -724,6 +800,7 @@ onMounted(() => {
<template
#
top
>
<el-card>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -780,21 +857,7 @@ onMounted(() => {
style=
"width: 150px"
/>
</ElFormItem>
<ElFormItem
label=
"物流类型"
>
<ElSelect
v-model=
"searchForm.shipmentType"
placeholder=
"物流类型"
clearable
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in ['自有物流', '工厂物流']"
:key=
"index"
:value=
"index"
:label=
"item"
></ElOption>
</ElSelect>
</ElFormItem>
<ElFormItem
label=
"物流跟踪号"
>
<ElInput
v-model
.
trim=
"searchForm.trackingNumber"
...
...
@@ -852,6 +915,7 @@ onMounted(() => {
<ElFormItem>
<ElPopover
placement=
"bottom"
width=
"600"
trigger=
"click"
>
<ElForm
ref=
"searchFormPopoverRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -962,6 +1026,37 @@ onMounted(() => {
style=
"width: 150px"
></ElInput>
</ElFormItem>
<ElFormItem
label=
"是否代发"
>
<ElSelect
v-model=
"searchForm.replaceShipment"
placeholder=
"是否代发"
clearable
:teleported=
"false"
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in ['不代发', '代发']"
:key=
"index"
:value=
"index"
:label=
"item"
></ElOption>
</ElSelect>
</ElFormItem>
<ElFormItem
v-if=
"searchForm.replaceShipment || searchForm.replaceShipment===0"
label=
"物流类型"
>
<ElSelect
v-model=
"searchForm.shipmentType"
placeholder=
"物流类型"
clearable
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in searchForm.replaceShipment === 0? ['自提', '快递']:['自有物流', '工厂物流']"
:key=
"index"
:value=
"index"
:label=
"item"
></ElOption>
</ElSelect>
</ElFormItem>
<!--
<ElFormItem
label=
"Base SKU"
>
<ElInput
v-model
.
trim=
"searchForm.baseSku"
...
...
@@ -989,19 +1084,28 @@ onMounted(() => {
<ElFormItem>
<span>
<ElButton
link
@
click=
"resetSearchForm"
style=
"font-size: 12px"
><span
title=
"重置查询条件"
>
重置
</span></ElButton
><span
title=
"重置查询条件"
>
重置
</span></ElButton
>
</span>
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
type=
"primary"
@
click=
"search"
ref=
"searchBtnRef"
>
查询
</ElButton
>
</span>
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"primary"
@
click=
"getOrderByIdApi('getPrintOrder')"
>
获取打印面单
</ElButton
>
获取打印面单
</ElButton
>
</span>
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"success"
@
click=
"refreshAddress"
>
刷新地址
</ElButton
>
</span>
</ElFormItem>
...
...
@@ -1019,6 +1123,7 @@ onMounted(() => {
<div
class=
"table-container"
>
<TableView
ref=
"tableRef"
:row-click-select=
"true"
:columns=
"tableColumns"
:serial-numberable=
"true"
:selectionable=
"true"
...
...
@@ -1031,7 +1136,10 @@ onMounted(() => {
<div>
{{
getStatus
(
row
.
status
)
}}
</div>
</
template
>
<
template
#
shipmentType=
"{ row }"
>
{{
[
'自有物流'
,
'工厂物流'
][
row
.
shipmentType
]
}}
{{
(
row
.
replaceShipment
===
0
?
[
'自提'
,
'快递'
]
:
[
'自有物流'
,
'工厂物流'
])[
row
.
shipmentType
]
}}
</
template
>
<
template
#
replaceShipment=
"{ row }"
>
{{
[
'不代发'
,
'代发'
][
row
.
replaceShipment
]
}}
</
template
>
</TableView>
</div>
...
...
@@ -1054,8 +1162,8 @@ onMounted(() => {
</template>
<
template
#
other
>
<div
class=
"bottom-table"
>
<el-tabs>
<el-tab-pane
label=
"商品明细"
>
<el-tabs
v-model=
"tabValue"
>
<el-tab-pane
name=
"1"
label=
"商品明细"
>
<TableView
ref=
"goodsRef"
v-loading=
"goodsLoading"
...
...
@@ -1068,7 +1176,7 @@ onMounted(() => {
</
template
>
</TableView>
</el-tab-pane>
<el-tab-pane
label=
"操作日志"
@
tab-click=
"operationLog"
>
<el-tab-pane
name=
"2"
label=
"操作日志"
@
tab-click=
"operationLog"
>
<div>
<el-button
:type=
"zoneType === 'Asia/Shanghai' ? 'primary' : ''"
...
...
@@ -1076,7 +1184,8 @@ onMounted(() => {
link
style=
"margin-left: 10px"
@
click=
"changeChinaTime('Asia/Shanghai')"
>
北京时间
</el-button
>
北京时间
</el-button
>
<el-button
:type=
"zoneType === 'America/New_York' ? 'primary' : ''"
...
...
@@ -1084,7 +1193,8 @@ onMounted(() => {
link
style=
"margin-left: 10px"
@
click=
"changeChinaTime('America/New_York')"
>
新泽西时间
</el-button
>
新泽西时间
</el-button
>
<el-button
:type=
"zoneType === 'America/Los_Angeles' ? 'primary' : ''"
...
...
@@ -1092,7 +1202,8 @@ onMounted(() => {
link
style=
"margin-left: 10px"
@
click=
"changeChinaTime('America/Los_Angeles')"
>
洛杉矶时间
</el-button
>
洛杉矶时间
</el-button
>
</div>
...
...
@@ -1128,7 +1239,7 @@ onMounted(() => {
:loading=
"exportLoading"
type=
"primary"
@
click=
"submitExportForm"
>
确认
</el-button
>
确认
</el-button
>
</span>
</
template
>
...
...
@@ -1223,9 +1334,11 @@ onMounted(() => {
}
}
}
.search-form
{
::v-deep
.el-radio-button
{
width
:
75px
;
.el-radio-button__inner
{
width
:
100%
;
}
...
...
src/views/order/pod/deliveryOrderList.vue
View file @
0741ccdd
<
template
>
<div
class=
"card flex-column h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<ElForm
:model=
"searchForm"
inline
>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
inline
>
<ElFormItem
label=
"发货时间"
>
<el-date-picker
:default-time=
"[
...
...
@@ -79,7 +79,9 @@
/>
</ElFormItem>
<ElFormItem>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
ref=
"searchBtnRef"
type=
"primary"
@
click=
"search"
>
查询
</ElButton
>
</ElFormItem>
<ElFormItem>
<ElButton
@
click=
"resetSearchForm"
>
重置
</ElButton>
...
...
@@ -153,7 +155,7 @@
</div>
</div>
</
template
>
<
template
#
operate=
"{
row
}"
>
<
template
#
operate=
"{
row
}"
>
<el-button
type=
"text"
@
click=
"showDetail(row)"
>
查看详情
</el-button>
</
template
>
</TableView>
...
...
@@ -184,12 +186,18 @@
<
script
lang=
"tsx"
setup
>
import
{
getUserMarkList
}
from
'@/api/auth'
import
{
getDeliveryNoteList
,
printDeliveryNote
,
getPodJomallOrderByFactoryNumber
}
from
'@/api/podOrder'
import
{
getDeliveryNoteList
,
printDeliveryNote
,
getPodJomallOrderByFactoryNumber
,
}
from
'@/api/podOrder'
import
TableView
from
'@/components/TableView.vue'
import
{
DeliveryNoteData
,
PodDeliveryNoteSearchForm
,
}
from
'@/types/api/podOrder'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
usePageList
from
'@/utils/hooks/usePageList'
import
{
computed
,
onMounted
,
ref
}
from
'vue'
import
{
val
}
from
'@/utils'
...
...
@@ -227,11 +235,12 @@ onMounted(() => {
getNameSpaceList
()
})
const
showDetail
=
async
(
row
:
DeliveryNoteData
)
=>
{
const
{
data
}
=
await
getPodJomallOrderByFactoryNumber
(
row
.
factoryOrderNumber
as
string
)
const
showDetail
=
async
(
row
:
DeliveryNoteData
)
=>
{
const
{
data
}
=
await
getPodJomallOrderByFactoryNumber
(
row
.
factoryOrderNumber
as
string
,
)
detailVisible
.
value
=
true
orderDetailData
.
value
=
data
}
const
getNameSpaceList
=
async
()
=>
{
try
{
...
...
@@ -273,7 +282,8 @@ const tableColumns = computed(() => {
prop
:
'logisticsInfo'
,
width
:
280
,
slot
:
'logisticsInfo'
,
},{
},
{
label
:
'操作'
,
prop
:
'action'
,
width
:
100
,
...
...
@@ -359,6 +369,23 @@ const onConfirmDateRange = async () => {
loading
.
close
()
}
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
},
})
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/order/pod/index.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"card flex-column h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<ElForm
ref=
"searchFormRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -173,7 +174,9 @@
</el-date-picker>
</ElFormItem>
<ElFormItem>
<ElButton
type=
"primary"
@
click=
"loadDiffList"
>
查询
</ElButton>
<ElButton
type=
"primary"
@
click=
"loadDiffList"
ref=
"searchBtnRef"
>
查询
</ElButton
>
</ElFormItem>
<ElFormItem
v-if=
"status === 'TO_BE_CONFIRMED'"
>
<ElButton
type=
"success"
@
click=
"confirmProduce"
>
确认生产
</ElButton>
...
...
@@ -1316,6 +1319,8 @@ import {
CardOrderData
,
}
from
'@/types/api/podOrder'
import
{
ArrowUp
,
ArrowDown
,
EditPen
}
from
'@element-plus/icons-vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
getLogisticsCompanyList
,
getUserMarkList
}
from
'@/api/common'
import
{
ElButton
,
type
FormRules
}
from
'element-plus'
import
{
showConfirm
}
from
'@/utils/ui'
...
...
@@ -2515,6 +2520,22 @@ const openMaterial = async (item: PodProductList) => {
document
.
body
.
removeChild
(
a
)
}
)
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
loadDiffList
()
}
,
}
)
onMounted
(
async
()
=>
{
document
.
addEventListener
(
'keydown'
,
listenerKeydown
)
await
loadTabData
()
...
...
src/views/order/podCN/index.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"card flex-column h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<ElForm
ref=
"searchFormRef"
class=
"search-form"
:model=
"searchForm"
size=
"default"
...
...
@@ -148,6 +149,7 @@
<ElFormItem>
<ElPopover
placement=
"bottom"
width=
"600"
trigger=
"click"
>
<ElForm
ref=
"searchFormPopoverRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -362,6 +364,23 @@
></ElOption>
</ElSelect>
</ElFormItem>
<ElFormItem
label=
"尺码筛选"
>
<ElSelect
v-model=
"searchForm.size"
placeholder=
"请选择"
clearable
filterable
:teleported=
"false"
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in sizes"
:key=
"index"
:value=
"item"
:label=
"item"
></ElOption>
</ElSelect>
</ElFormItem>
</ElForm>
<template
#
reference
>
<el-button
type=
"warning"
@
click=
"searchVisible = !searchVisible"
>
...
...
@@ -384,7 +403,9 @@
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
type=
"primary"
@
click=
"search"
ref=
"searchBtnRef"
>
查询
</ElButton
>
</span>
</ElFormItem>
<ElFormItem
...
...
@@ -2536,6 +2557,7 @@ import {
import
{
BaseRespData
}
from
'@/types/api'
import
UpdateAddress
from
'./components/updateAddress.vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
getAllCountryApi
}
from
'@/api/logistics.ts'
import
{
InterceptStateGroupData
,
IAllList
}
from
'@/types/api/podUsOrder'
...
...
@@ -2653,6 +2675,7 @@ const sourceList = [
id
:
'third-party'
,
}
,
]
const
sizes
=
[
'FS'
,
'XS'
,
'S'
,
'M'
,
'L'
,
'XL'
,
'XXL'
,
'3XL'
,
'4XL'
,
'5XL'
]
const
exportData
=
()
=>
{
exportVisible
.
value
=
true
...
...
@@ -5306,6 +5329,32 @@ const getTagName = (row: ProductList) => {
useRouter
().
beforeEach
((
to
,
from
,
next
)
=>
{
handleBeforeRouteLeave
(
to
,
from
,
next
)
}
)
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
const
searchFormPopoverRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
useEnterKeyTrigger
({
formRef
:
searchFormPopoverRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
<
/script
>
<
style
lang
=
"scss"
scoped
>
.
header
-
filter
-
form
{
...
...
src/views/order/podUs/index.vue
View file @
0741ccdd
...
...
@@ -2,6 +2,7 @@
<div
class=
"card flex-column h-100 overflow-hidden"
>
<div
class=
"header-filter-form"
>
<ElForm
ref=
"searchFormRef"
class=
"search-form"
label-position=
"right"
label-width=
"70px"
...
...
@@ -26,31 +27,7 @@
></el-option>
</ElSelect>
</ElFormItem>
<ElFormItem
label=
"平台"
>
<ElSelect
v-model=
"searchForm.platform"
value-key=
""
placeholder=
"请选择"
clearable
filterable
popper-class=
"customize-select-style"
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in platformJson"
:key=
"index"
:label=
"item.type"
:value=
"item.type"
style=
"width: 160px"
>
<img
:src=
"`/images/icon/$
{item.icon.split('/').pop()}`"
style="height: 20px; margin: 5px 10px 0 0"
/>
<span
:title=
"item.type"
>
{{
item
.
type
}}
</span>
</ElOption>
</ElSelect>
</ElFormItem>
<ElFormItem
label=
"工艺"
>
<LogisticsWaySelect
...
...
@@ -117,6 +94,31 @@
></el-option>
</ElSelect>
</ElFormItem>
<ElFormItem
label=
"平台"
>
<ElSelect
v-model=
"searchForm.platform"
value-key=
""
placeholder=
"请选择"
clearable
filterable
popper-class=
"customize-select-style"
style=
"width: 150px"
>
<ElOption
v-for=
"(item, index) in platformJson"
:key=
"index"
:label=
"item.type"
:value=
"item.type"
style=
"width: 160px"
>
<img
:src=
"`/images/icon/$
{item.icon.split('/').pop()}`"
style="height: 20px; margin: 5px 10px 0 0"
/>
<span
:title=
"item.type"
>
{{
item
.
type
}}
</span>
</ElOption>
</ElSelect>
</ElFormItem>
<!--
</div>
-->
<ElFormItem
label=
"类型"
>
<el-radio-group
...
...
@@ -140,6 +142,7 @@
<ElFormItem>
<ElPopover
placement=
"bottom"
width=
"600"
trigger=
"click"
>
<ElForm
ref=
"searchFormPopoverRef"
:model=
"searchForm"
size=
"default"
inline
...
...
@@ -382,7 +385,9 @@
</ElFormItem>
<ElFormItem>
<span>
<ElButton
type=
"primary"
@
click=
"search"
>
查询
</ElButton>
<ElButton
ref=
"searchBtnRef"
type=
"primary"
@
click=
"search"
>
查询
</ElButton
>
</span>
</ElFormItem>
<ElFormItem
...
...
@@ -821,6 +826,11 @@
>
</span>
</ElFormItem>
<ElFormItem
v-if=
"['WAIT_TRACK'].includes(status) && waitTrackStatus === 5"
>
<span
class=
"item"
>
<ElButton
type=
"success"
@
click=
"reissueOrder"
>
补发
</ElButton>
</span>
</ElFormItem>
</ElForm>
</div>
<div
class=
"header-filter-tab"
>
...
...
@@ -2954,6 +2964,7 @@ import {
getCustomTagListApi
,
getLogisticsWayApi
,
printNormalPickPdfApi
,
reissueOrderApi
}
from
'@/api/podUsOrder'
import
{
BaseRespData
}
from
'@/types/api'
...
...
@@ -2981,6 +2992,7 @@ import {
}
from
'@/types/api/podUsOrder'
import
usePageList
from
'@/utils/hooks/usePageList'
import
{
useValue
}
from
'@/utils/hooks/useValue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
showConfirm
}
from
'@/utils/ui'
import
{
DocumentCopy
,
...
...
@@ -3024,6 +3036,7 @@ declare global {
responseBody
?:
unknown
}
}
const
sourceList
=
[
{
name
:
'erp推送'
,
...
...
@@ -3898,6 +3911,32 @@ const {
}
,
}
)
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchFormPopoverRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
refresh
()
}
,
}
)
useEnterKeyTrigger
({
formRef
:
searchFormPopoverRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
refresh
()
}
,
}
)
watch
(
()
=>
[...(
tableData
.
value
as
PodUsOrderListData
[])],
// 创建新数组避免直接修改原始数据
(
newData
)
=>
{
...
...
@@ -6230,6 +6269,34 @@ const setFinish = async () => {
loading
.
close
()
}
}
const
reissueOrder
=
async
()
=>
{
if
(
selection
.
value
.
length
===
0
)
{
return
ElMessage
.
warning
(
'请选择数据'
)
}
await
ElMessageBox
.
confirm
(
'是否补发?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
}
)
const
loading
=
ElLoading
.
service
({
fullscreen
:
true
,
text
:
'操作中...'
,
background
:
'rgba(0, 0, 0, 0.3)'
,
}
)
try
{
const
res
=
await
reissueOrderApi
(
selection
.
value
.
map
((
item
)
=>
item
.
id
).
join
(
','
),
)
if
(
res
.
code
!==
200
)
return
ElMessage
.
success
(
'操作成功'
)
search
()
await
loadTabData
()
}
catch
(
e
)
{
console
.
error
(
e
)
}
finally
{
loading
.
close
()
}
}
// 完成发货
const
completeDelivery
=
async
()
=>
{
...
...
src/views/podBillOrder/index.vue
View file @
0741ccdd
...
...
@@ -28,7 +28,7 @@
<
splitDiv
size
=
"50"
>
<
template
#
top
>
<
div
class
=
"header-filter-form"
>
<
ElForm
:
model
=
"searchForm"
inline
>
<
ElForm
:
model
=
"searchForm"
inline
ref
=
"searchFormRef"
>
<
ElFormItem
label
=
"账期(发货时间)"
>
<
div
style
=
"display: flex"
>
<
el
-
date
-
picker
...
...
@@ -74,7 +74,9 @@
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButton
>
<
ElButton
ref
=
"searchBtnRef"
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButto
n
>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
@
click
=
"reset"
>
重置
<
/ElButton
>
...
...
@@ -933,6 +935,7 @@ import { DetailForm, LogListData, IUpdatePrice } from '@/types/api/deliveryNote'
import
ImageView
from
'@/components/ImageView.vue'
// import
{
showConfirm
}
from
'@/utils/ui'
import
{
uploadImageApi
}
from
'@/api/common'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
// import
{
getUserMarkList
}
from
'@/api/auth.ts'
interface
Tree
{
...
...
@@ -1426,6 +1429,24 @@ const exportExcel = async () => {
console
.
error
(
e
)
}
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
onMounted
(()
=>
{
getTreeNum
()
}
)
...
...
src/views/podUsBillOrder/index.vue
View file @
0741ccdd
...
...
@@ -28,7 +28,7 @@
<
splitDiv
size
=
"50"
>
<
template
#
top
>
<
div
class
=
"header-filter-form"
>
<
ElForm
:
model
=
"searchForm"
inline
>
<
ElForm
ref
=
"searchFormRef"
:
model
=
"searchForm"
inline
>
<
ElFormItem
label
=
"账期(创建时间)"
>
<
div
style
=
"display: flex"
>
<
el
-
date
-
picker
...
...
@@ -66,7 +66,9 @@
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButton
>
<
ElButton
ref
=
"searchBtnRef"
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButto
n
>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
@
click
=
"reset"
>
重置
<
/ElButton
>
...
...
@@ -1057,6 +1059,7 @@ import {
batchUpdatePrice
,
delPodUsOrderData
,
}
from
'@/api/order'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
{
nextTick
,
onMounted
,
ref
,
watch
}
from
'vue'
import
'element-plus/dist/index.css'
...
...
@@ -1500,6 +1503,24 @@ const exportExcel = async () => {
console
.
error
(
e
)
}
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
onMounted
(()
=>
{
getTreeNum
()
}
)
...
...
src/views/warehouse/issueDoc.vue
View file @
0741ccdd
...
...
@@ -30,7 +30,7 @@
<
splitDiv
size
=
"50"
>
<
template
#
top
>
<
div
class
=
"header-filter-form"
>
<
ElForm
:
model
=
"searchForm"
inline
>
<
ElForm
:
model
=
"searchForm"
inline
ref
=
"searchFormRef"
>
<
ElFormItem
label
=
"仓库"
>
<
ElSelect
v
-
model
=
"searchForm.warehouseId"
...
...
@@ -88,7 +88,9 @@
/>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButton
>
<
ElButton
type
=
"primary"
@
click
=
"search"
ref
=
"searchBtnRef"
>
查询
<
/ElButto
n
>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
@
click
=
"resetSearchForm"
>
重置
<
/ElButton
>
...
...
@@ -867,6 +869,7 @@ import {
InterWarehouseDetail
,
}
from
'@/types/api/warehouse'
import
ImageView
from
'@/components/ImageView.vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
import
UploadExcel
from
'@/components/UploadExcel.vue'
// import
{
debounce
}
from
'lodash-es'
const
warehouseList
=
ref
<
warehouseInfo
[]
>
([])
...
...
@@ -1831,6 +1834,23 @@ const handleWarehouseChange = (val: number | string | undefined) => {
)
editForm
.
value
.
warehouseName
=
found
?
found
.
name
:
''
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
onMounted
(()
=>
{
getTreeNum
()
getWarehouseList
()
...
...
src/views/warehouse/position.vue
View file @
0741ccdd
...
...
@@ -18,6 +18,8 @@ import { nextTick, ref } from 'vue'
import
SplitDiv
from
'@/components/splitDiv/splitDiv.vue'
import
{
filePath
}
from
'@/api/axios.ts'
import
UploadExcel
from
'@/components/UploadExcel.vue'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
const
importDialogVisible
=
ref
(
false
)
const
importedFileUrl
=
ref
(
''
)
const
importLocation
=
async
()
=>
{
...
...
@@ -253,13 +255,29 @@ const warehouseChange = (v: number) => {
form
.
value
.
warehouseName
=
warehouse
?
warehouse
.
name
:
''
}
getWarehouse
()
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
getData
()
},
})
</
script
>
<
template
>
<split-div>
<template
#
top
>
<el-card>
<el-form
inline
:model=
"searchForm"
>
<el-form
inline
:model=
"searchForm"
ref=
"searchFormRef"
>
<el-form-item
label=
"仓库"
>
<el-select
v-model=
"searchForm.warehouseId"
...
...
@@ -317,7 +335,9 @@ getWarehouse()
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"getData"
>
查询
</el-button>
<el-button
type=
"primary"
@
click=
"getData"
ref=
"searchBtnRef"
>
查询
</el-button
>
<el-button
type=
"success"
@
click=
"createWarehouse"
>
新增库位
</el-button
>
...
...
@@ -481,16 +501,16 @@ getWarehouse()
</el-card>
</template>
</split-div>
<ElDialog
<ElDialog
v-model=
"importDialogVisible"
title=
"导入库位"
width=
"500px"
:close-on-click-modal=
"false"
>
<div
class=
"import-dialog"
>
<div
class=
"import-dialog"
>
<div
class=
"import-content"
>
<UploadExcel
ref=
"uploadExcelRef"
ref=
"uploadExcelRef"
v-model=
"importedFileUrl"
:import-type=
"'localAndUpload'"
:import-name=
"'库位'"
...
...
@@ -531,7 +551,7 @@ getWarehouse()
align-items
:
center
;
.location-label
{
color
:
#606266
;
margin
:
0
15px
;
margin
:
0
15px
;
}
}
.import-dialog
{
...
...
src/views/warehouse/receiptDoc.vue
View file @
0741ccdd
...
...
@@ -30,7 +30,7 @@
<
splitDiv
size
=
"50"
>
<
template
#
top
>
<
div
class
=
"header-filter-form"
>
<
ElForm
:
model
=
"searchForm"
inline
>
<
ElForm
:
model
=
"searchForm"
inline
ref
=
"searchFormRef"
>
<
ElFormItem
label
=
"采购仓库"
>
<
ElSelect
v
-
model
=
"searchForm.warehouseId"
...
...
@@ -88,7 +88,9 @@
/>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
type
=
"primary"
@
click
=
"search"
>
查询
<
/ElButton
>
<
ElButton
type
=
"primary"
@
click
=
"search"
ref
=
"searchBtnRef"
>
查询
<
/ElButto
n
>
<
/ElFormItem
>
<
ElFormItem
>
<
ElButton
@
click
=
"resetSearchForm"
>
重置
<
/ElButton
>
...
...
@@ -885,6 +887,8 @@ import {
import
ImageView
from
'@/components/ImageView.vue'
import
UploadExcel
from
'@/components/UploadExcel.vue'
// import
{
debounce
}
from
'lodash-es'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
const
warehouseList
=
ref
<
warehouseInfo
[]
>
([])
const
pickerOptions
=
{
shortcuts
:
[
...
...
@@ -1800,6 +1804,23 @@ const handleWarehouseChange = (val: number | string | undefined) => {
)
editForm
.
value
.
warehouseName
=
found
?
found
.
name
:
''
}
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
search
()
}
,
}
)
onMounted
(()
=>
{
getTreeNum
()
getWarehouseList
()
...
...
src/views/warehouse/warning.vue
View file @
0741ccdd
...
...
@@ -19,6 +19,7 @@ import { AnyObject } from '@/types/api/warehouse'
import
{
ref
,
computed
}
from
'vue'
import
SplitDiv
from
'@/components/splitDiv/splitDiv.vue'
import
{
filePath
}
from
'@/api/axios.ts'
import
{
useEnterKeyTrigger
}
from
'@/utils/hooks/useEnterKeyTrigger.ts'
const
searchForm
=
ref
({
warehouseId
:
''
,
...
...
@@ -293,6 +294,22 @@ const getWarehouse = async () => {
}
getData
()
getWarehouse
()
/**
* @description: 页面添加回车监听
*/
const
searchFormRef
=
ref
()
const
searchBtnRef
=
ref
()
useEnterKeyTrigger
({
formRef
:
searchFormRef
,
btnRef
:
searchBtnRef
,
callback
:
(
event
:
KeyboardEvent
)
=>
{
console
.
log
(
'回车键被按下'
,
event
)
getData
()
},
})
</
script
>
<
template
>
...
...
@@ -345,7 +362,12 @@ getWarehouse()
</
template
>
</el-dialog>
<el-card>
<el-form
class=
"search-form"
inline
:model=
"searchForm"
>
<el-form
class=
"search-form"
inline
:model=
"searchForm"
ref=
"searchFormRef"
>
<el-form-item
label=
"仓库"
>
<el-select
v-model=
"searchForm.warehouseId"
...
...
@@ -432,7 +454,9 @@ getWarehouse()
></el-input>
</el-form-item>
<el-form-item
style=
"margin-top: 5px"
>
<el-button
type=
"primary"
@
click=
"getData"
>
查询
</el-button>
<el-button
type=
"primary"
@
click=
"getData"
ref=
"searchBtnRef"
>
查询
</el-button
>
</el-form-item>
<el-form-item
style=
"margin-top: 5px"
>
<el-button
type=
"primary"
@
click=
"printProductTag"
...
...
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