Commit 557a5411 by zhuzhequan

Merge remote-tracking branch 'origin/dev' into dev

parents fcd53db6 d23313db
...@@ -12,6 +12,7 @@ import { ...@@ -12,6 +12,7 @@ import {
ISeachFormConfig, ISeachFormConfig,
EDataType, EDataType,
} from '@/types/searchType' } from '@/types/searchType'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
// 组件 - 数据类型 映射 // 组件 - 数据类型 映射
const componentDataTypeMap = new Map([ const componentDataTypeMap = new Map([
...@@ -91,10 +92,15 @@ export default defineComponent({ ...@@ -91,10 +92,15 @@ export default defineComponent({
type: Boolean, type: Boolean,
default: true, default: true,
}, },
callback: {
type: Function as PropType<() => void>,
default: () => {},
},
}, },
emits: ['search', 'reset', 'fold', 'add', 'delete', 'update:modelValue'], emits: ['search', 'reset', 'fold', 'add', 'delete', 'update:modelValue'],
setup(props, { emit, slots, attrs }) { setup(props, { emit, slots, attrs }) {
const formRef = ref() const formRef = ref()
const searchBtnRef = ref()
const formWrapperRef = ref() const formWrapperRef = ref()
const searchForm = ref<ISearchForm>({}) const searchForm = ref<ISearchForm>({})
const selectResult = ref<ISeachFormConfig[]>([]) const selectResult = ref<ISeachFormConfig[]>([])
...@@ -151,6 +157,16 @@ export default defineComponent({ ...@@ -151,6 +157,16 @@ export default defineComponent({
e.preventDefault() e.preventDefault()
} }
useEnterKeyTrigger({
formRef: formRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
props.callback()
},
})
return () => ( return () => (
<div style={styles.searchForm}> <div style={styles.searchForm}>
<div style={styles.searchFormHeader} class="pb-15"> <div style={styles.searchFormHeader} class="pb-15">
...@@ -215,6 +231,7 @@ export default defineComponent({ ...@@ -215,6 +231,7 @@ export default defineComponent({
)} )}
{props.isSearchBtn && ( {props.isSearchBtn && (
<ElButton <ElButton
ref={searchBtnRef}
class="btn" class="btn"
type="primary" type="primary"
onClick={() => emit('search', searchForm.value)} onClick={() => emit('search', searchForm.value)}
......
...@@ -45,6 +45,7 @@ export interface SearchForm { ...@@ -45,6 +45,7 @@ export interface SearchForm {
sizeType?: number | null sizeType?: number | null
tagsId?: string tagsId?: string
source?: string source?: string
size?: string
tagsIdArr?: (number | null)[] tagsIdArr?: (number | null)[]
} }
export interface PodCnOrderListData { export interface PodCnOrderListData {
......
// 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)
}
})
}
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<splitDiv size="50"> <splitDiv size="50">
<template #top> <template #top>
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm :model="searchForm" inline ref="searchFormRef">
<ElFormItem label="账期"> <ElFormItem label="账期">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
...@@ -71,7 +71,9 @@ ...@@ -71,7 +71,9 @@
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="resetSearchForm">重置</ElButton> <ElButton @click="resetSearchForm">重置</ElButton>
...@@ -545,7 +547,7 @@ import shipmentOrderDetailInfo from '@/components/ShipmentOrderDetail.vue' ...@@ -545,7 +547,7 @@ import shipmentOrderDetailInfo from '@/components/ShipmentOrderDetail.vue'
import ImageView from '@/components/ImageView.vue' import ImageView from '@/components/ImageView.vue'
import { showConfirm } from '@/utils/ui' import { showConfirm } from '@/utils/ui'
// import { getUserMarkList } from '@/api/auth.ts' // import { getUserMarkList } from '@/api/auth.ts'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
interface Tree { interface Tree {
remark?: string remark?: string
count?: number count?: number
...@@ -861,6 +863,24 @@ const exportExcel = async () => { ...@@ -861,6 +863,24 @@ const exportExcel = async () => {
console.error(e) console.error(e)
} }
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
onMounted(() => { onMounted(() => {
getTreeNum() getTreeNum()
}) })
......
<template> <template>
<div class="delivery-note-page flex-column card h-100 overflow-hidden"> <div class="delivery-note-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm ref="searchFormRef" :model="searchForm" inline>
<ElFormItem label="发货时间"> <ElFormItem label="发货时间">
<el-date-picker <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" v-model="dateRange"
type="datetimerange" type="datetimerange"
start-placeholder="开始时间" start-placeholder="开始时间"
...@@ -84,16 +87,20 @@ ...@@ -84,16 +87,20 @@
/> />
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="resetSearchForm">重置</ElButton> <ElButton @click="resetSearchForm">重置</ElButton>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton v-loading="btnLoading" type="success" @click="onConfirmDateRange" <ElButton
v-loading="btnLoading"
type="success"
@click="onConfirmDateRange"
>导出发货单 >导出发货单
</ElButton </ElButton>
>
</ElFormItem> </ElFormItem>
<!-- <ElFormItem> <!-- <ElFormItem>
<ElButton type="primary" @click="generateStatement" <ElButton type="primary" @click="generateStatement"
...@@ -158,7 +165,7 @@ ...@@ -158,7 +165,7 @@
<div <div
v-for="(pi, index) in p" v-for="(pi, index) in p"
:key="index" :key="index"
:title=" pi.label +':'+ val(od, pi.key || '')" :title="pi.label + ':' + val(od, pi.key || '')"
class="send-order-prop-item" class="send-order-prop-item"
> >
<span> {{ pi.label }}{{ val(od, pi.key || '') }} </span> <span> {{ pi.label }}{{ val(od, pi.key || '') }} </span>
...@@ -167,8 +174,7 @@ ...@@ -167,8 +174,7 @@
class="icon" class="icon"
@click="copy(val(od, pi.key || ''))" @click="copy(val(od, pi.key || ''))"
> >
<DocumentCopy <DocumentCopy />
/>
</el-icon> </el-icon>
</div> </div>
</div> </div>
...@@ -186,7 +192,7 @@ ...@@ -186,7 +192,7 @@
<div <div
v-for="pi in logisticsProps" v-for="pi in logisticsProps"
:key="pi.label" :key="pi.label"
:title=" pi.label +':'+ val(row, pi.key)" :title="pi.label + ':' + val(row, pi.key)"
class="send-order-prop-item" class="send-order-prop-item"
> >
<span v-if="val(row, pi.key)" <span v-if="val(row, pi.key)"
...@@ -197,8 +203,7 @@ ...@@ -197,8 +203,7 @@
class="icon" class="icon"
@click="copy(val(row, pi.key || ''))" @click="copy(val(row, pi.key || ''))"
> >
<DocumentCopy <DocumentCopy />
/>
</el-icon> </el-icon>
</div> </div>
</div> </div>
...@@ -213,10 +218,7 @@ ...@@ -213,10 +218,7 @@
> >
<template #default="{ row }"> <template #default="{ row }">
<div> <div>
<ElButton link @click="onViewOrder(row)" <ElButton link @click="onViewOrder(row)">查看订单 </ElButton>
>查看订单
</ElButton
>
</div> </div>
</template> </template>
</ElTableColumn> </ElTableColumn>
...@@ -259,7 +261,7 @@ import { useValue } from '@/utils/hooks/useValue' ...@@ -259,7 +261,7 @@ import { useValue } from '@/utils/hooks/useValue'
import { import {
getDeliveryNoteList, getDeliveryNoteList,
printDeliveryNote, printDeliveryNote,
getOrderByIdApi getOrderByIdApi,
} from '@/api/order' } from '@/api/order'
import { getUserMarkList } from '@/api/auth' import { getUserMarkList } from '@/api/auth'
import { ref, onMounted } from 'vue' import { ref, onMounted } from 'vue'
...@@ -268,6 +270,7 @@ import { val } from '@/utils' ...@@ -268,6 +270,7 @@ import { val } from '@/utils'
import { filePath } from '@/api/axios' import { filePath } from '@/api/axios'
import { type CellCls, ElMessage } from 'element-plus' import { type CellCls, ElMessage } from 'element-plus'
import OrderDetail from './order/OrderDetail.vue' import OrderDetail from './order/OrderDetail.vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
const [searchForm, resetSearchForm] = useValue<DeliveryNoteSearchForm>({}) const [searchForm, resetSearchForm] = useValue<DeliveryNoteSearchForm>({})
const selection = ref<DeliveryNoteData[]>([]) const selection = ref<DeliveryNoteData[]>([])
...@@ -357,7 +360,10 @@ const onConfirmDateRange = async () => { ...@@ -357,7 +360,10 @@ const onConfirmDateRange = async () => {
} }
btnLoading.value = true btnLoading.value = true
try { try {
const res = await printDeliveryNote(dateRange.value,searchForm.value?.userMark) const res = await printDeliveryNote(
dateRange.value,
searchForm.value?.userMark,
)
window.open(filePath + res.message) window.open(filePath + res.message)
dateRange.value = [] dateRange.value = []
dialogVisible.value = false dialogVisible.value = false
...@@ -428,6 +434,22 @@ const copy = (text: string) => { ...@@ -428,6 +434,22 @@ const copy = (text: string) => {
navigator.clipboard.writeText(text) navigator.clipboard.writeText(text)
ElMessage.success('复制成功') ElMessage.success('复制成功')
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="user-page flex-column card h-100 overflow-hidden"> <div class="user-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<SearchForm <SearchForm
:callback="search"
:config="searchConfig" :config="searchConfig"
@search="search" @search="search"
@add="addDialog" @add="addDialog"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="user-page flex-column card h-100 overflow-hidden"> <div class="user-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<SearchForm <SearchForm
:callback="search"
:config="searchConfig" :config="searchConfig"
:isSearchBtn="false" :isSearchBtn="false"
:isAddBtn="false" :isAddBtn="false"
...@@ -72,7 +73,8 @@ const searchConfig = ref<ISeachFormConfig[]>([ ...@@ -72,7 +73,8 @@ const searchConfig = ref<ISeachFormConfig[]>([
hasUnit: true, hasUnit: true,
suffix: 'g', suffix: 'g',
}, },
},{ },
{
prop: 'orderNumber', prop: 'orderNumber',
type: 'input', type: 'input',
label: '订单号', label: '订单号',
......
...@@ -14,6 +14,7 @@ import { ...@@ -14,6 +14,7 @@ import {
logisticsCompanyUpdate, logisticsCompanyUpdate,
} from '@/api/logistics.ts' } from '@/api/logistics.ts'
import LogDialog from '@/views/logistics/components/LogDialog.tsx' import LogDialog from '@/views/logistics/components/LogDialog.tsx'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
interface LogList { interface LogList {
id?: number id?: number
...@@ -178,6 +179,23 @@ const getLogisticsList = async () => { ...@@ -178,6 +179,23 @@ const getLogisticsList = async () => {
const { data } = await logisticsCompanyAllCodelist() const { data } = await logisticsCompanyAllCodelist()
logisticsList.value = data logisticsList.value = data
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
getData()
},
})
getData() getData()
getLogisticsList() getLogisticsList()
</script> </script>
...@@ -186,7 +204,7 @@ getLogisticsList() ...@@ -186,7 +204,7 @@ getLogisticsList()
<split-div> <split-div>
<template #top> <template #top>
<el-card> <el-card>
<el-form inline :model="searchForm"> <el-form inline :model="searchForm" ref="searchFormRef">
<el-form-item label="名称"> <el-form-item label="名称">
<el-input <el-input
v-model="searchForm.name" v-model="searchForm.name"
...@@ -205,7 +223,9 @@ getLogisticsList() ...@@ -205,7 +223,9 @@ getLogisticsList()
</el-form-item> </el-form-item>
<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="success" @click="createWarehouse">新增</el-button>
<el-button type="danger" @click="handleBatchDelete(null)" <el-button type="danger" @click="handleBatchDelete(null)"
>删除</el-button >删除</el-button
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="user-page flex-column card h-100 overflow-hidden"> <div class="user-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<SearchForm <SearchForm
:callback="search"
v-model="searchForm" v-model="searchForm"
:config="searchConfig" :config="searchConfig"
@search="search" @search="search"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="user-page flex-column card h-100 overflow-hidden"> <div class="user-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<SearchForm <SearchForm
:callback="search"
:config="searchConfig" :config="searchConfig"
@search="search" @search="search"
:isAddBtn="false" :isAddBtn="false"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="user-page flex-column card h-100 overflow-hidden"> <div class="user-page flex-column card h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<SearchForm <SearchForm
:callback="search"
:config="searchConfig" :config="searchConfig"
@search="search" @search="search"
@add="addDialog" @add="addDialog"
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
<split-div> <split-div>
<template #top> <template #top>
<el-card> <el-card>
<el-form inline :model="searchForm"> <el-form inline :model="searchForm" ref="searchFormRef">
<el-form-item label="物流跟踪号"> <el-form-item label="物流跟踪号">
<el-input <el-input
v-model="searchForm.trackNumber" v-model="searchForm.trackNumber"
...@@ -44,7 +44,9 @@ ...@@ -44,7 +44,9 @@
></el-input> ></el-input>
</el-form-item> </el-form-item>
<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 <el-button
v-if="nodeId === 0 || nodeId === 11" v-if="nodeId === 0 || nodeId === 11"
type="success" type="success"
...@@ -126,6 +128,7 @@ import { ...@@ -126,6 +128,7 @@ import {
import { getOrderTabData } from '@/api/podUsOrder' import { getOrderTabData } from '@/api/podUsOrder'
import { LogisticsTrackingTree } from '@/views/logistics/types/logistics' import { LogisticsTrackingTree } from '@/views/logistics/types/logistics'
import { Tab } from '@/types/api/podUsOrder' import { Tab } from '@/types/api/podUsOrder'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
interface SearchForm { interface SearchForm {
shopNumber: string shopNumber: string
...@@ -384,6 +387,20 @@ onMounted(() => { ...@@ -384,6 +387,20 @@ onMounted(() => {
getData() getData()
loadTabData() loadTabData()
}) })
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
getData()
},
})
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
......
...@@ -18,6 +18,7 @@ import { ...@@ -18,6 +18,7 @@ import {
deleteSortingApi, deleteSortingApi,
} from '@/api/logistics' } from '@/api/logistics'
import { nextTick, ref } from 'vue' import { nextTick, ref } from 'vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import usePageList from '@/utils/hooks/usePageList' import usePageList from '@/utils/hooks/usePageList'
import { ElMessage, ElMessageBox } from 'element-plus' import { ElMessage, ElMessageBox } from 'element-plus'
...@@ -251,6 +252,18 @@ const handleClick = () => { ...@@ -251,6 +252,18 @@ const handleClick = () => {
loading.close() loading.close()
} }
} }
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
</script> </script>
<template> <template>
...@@ -267,7 +280,7 @@ const handleClick = () => { ...@@ -267,7 +280,7 @@ const handleClick = () => {
class="flex-column h-100 overflow-hidden" class="flex-column h-100 overflow-hidden"
> >
<div class="header-filter-form"> <div class="header-filter-form">
<el-form inline :model="searchForm"> <el-form inline :model="searchForm" ref="searchFormRef">
<el-form-item label="分拣设备"> <el-form-item label="分拣设备">
<el-input <el-input
v-model.trim="searchForm.sortingFacility" v-model.trim="searchForm.sortingFacility"
...@@ -308,7 +321,9 @@ const handleClick = () => { ...@@ -308,7 +321,9 @@ const handleClick = () => {
</el-select> </el-select>
</el-form-item> </el-form-item>
<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 type="success" @click="createWarehouse"
>新增</el-button >新增</el-button
> >
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
<div class="header-filter"> <div class="header-filter">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm <ElForm
ref="searchFormRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -153,7 +154,9 @@ ...@@ -153,7 +154,9 @@
</el-select> </el-select>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<!-- <ElFormItem>--> <!-- <ElFormItem>-->
<!-- <ElButton @click="resetSearchForm">重置</ElButton>--> <!-- <ElButton @click="resetSearchForm">重置</ElButton>-->
...@@ -1037,6 +1040,7 @@ import useShipment from './hook/useShipment' ...@@ -1037,6 +1040,7 @@ import useShipment from './hook/useShipment'
import useQuarantine from './hook/useQuarantine' import useQuarantine from './hook/useQuarantine'
import Quarantine from './Quarantine.vue' import Quarantine from './Quarantine.vue'
import RightClickMenu from '@/components/RightClickMenu.vue' import RightClickMenu from '@/components/RightClickMenu.vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
const [searchForm] = useValue<SearchForm>({ const [searchForm] = useValue<SearchForm>({
mainSku: '', mainSku: '',
...@@ -1725,6 +1729,22 @@ const rightChange = (key: string) => { ...@@ -1725,6 +1729,22 @@ const rightChange = (key: string) => {
const onChangeCurrentRow = (item: ProductList) => { const onChangeCurrentRow = (item: ProductList) => {
currentRow.value = item currentRow.value = item
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.header-filter-form { .header-filter-form {
......
...@@ -39,6 +39,7 @@ import { isArray, isString } from '@/utils/validate' ...@@ -39,6 +39,7 @@ import { isArray, isString } from '@/utils/validate'
import ResultInfo from '../podUs/components/ResultInfo.vue' import ResultInfo from '../podUs/components/ResultInfo.vue'
import { filePath } from '@/api/axios' import { filePath } from '@/api/axios'
import { convertToChinaTime } from '@/utils/index' import { convertToChinaTime } from '@/utils/index'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { useValue } from '@/utils/hooks/useValue' import { useValue } from '@/utils/hooks/useValue'
...@@ -714,6 +715,31 @@ const handleSelectionChange = (val: PodUsOrderListData[]) => { ...@@ -714,6 +715,31 @@ const handleSelectionChange = (val: PodUsOrderListData[]) => {
selection.value = val 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( watch(
() => currentRowId.value, () => currentRowId.value,
(newValue, oldValue) => { (newValue, oldValue) => {
...@@ -738,6 +764,7 @@ onMounted(() => { ...@@ -738,6 +764,7 @@ onMounted(() => {
<template #top> <template #top>
<el-card> <el-card>
<ElForm <ElForm
ref="searchFormRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -866,6 +893,7 @@ onMounted(() => { ...@@ -866,6 +893,7 @@ onMounted(() => {
<ElFormItem> <ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click"> <ElPopover placement="bottom" width="600" trigger="click">
<ElForm <ElForm
ref="searchFormPopoverRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -1025,7 +1053,9 @@ onMounted(() => { ...@@ -1025,7 +1053,9 @@ onMounted(() => {
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<span> <span>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</span> </span>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
......
...@@ -39,6 +39,7 @@ import { isArray, isString } from '@/utils/validate' ...@@ -39,6 +39,7 @@ import { isArray, isString } from '@/utils/validate'
import ResultInfo from '../podUs/components/ResultInfo.vue' import ResultInfo from '../podUs/components/ResultInfo.vue'
import { filePath } from '@/api/axios' import { filePath } from '@/api/axios'
import { convertToChinaTime } from '@/utils/index' import { convertToChinaTime } from '@/utils/index'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { useValue } from '@/utils/hooks/useValue' import { useValue } from '@/utils/hooks/useValue'
import { ElFormItem } from 'element-plus' import { ElFormItem } from 'element-plus'
...@@ -750,6 +751,32 @@ const handleSelectionChange = (val: PodCnOrderListData[]) => { ...@@ -750,6 +751,32 @@ const handleSelectionChange = (val: PodCnOrderListData[]) => {
selection.value = val 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( watch(
() => currentRowId.value, () => currentRowId.value,
(newValue, oldValue) => { (newValue, oldValue) => {
...@@ -773,6 +800,7 @@ onMounted(() => { ...@@ -773,6 +800,7 @@ onMounted(() => {
<template #top> <template #top>
<el-card> <el-card>
<ElForm <ElForm
ref="searchFormRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -887,6 +915,7 @@ onMounted(() => { ...@@ -887,6 +915,7 @@ onMounted(() => {
<ElFormItem> <ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click"> <ElPopover placement="bottom" width="600" trigger="click">
<ElForm <ElForm
ref="searchFormPopoverRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -1061,7 +1090,9 @@ onMounted(() => { ...@@ -1061,7 +1090,9 @@ onMounted(() => {
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<span> <span>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</span> </span>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
......
<template> <template>
<div class="card flex-column h-100 overflow-hidden"> <div class="card flex-column h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm ref="searchFormRef" :model="searchForm" inline>
<ElFormItem label="发货时间"> <ElFormItem label="发货时间">
<el-date-picker <el-date-picker
:default-time="[ :default-time="[
...@@ -79,7 +79,9 @@ ...@@ -79,7 +79,9 @@
/> />
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="resetSearchForm">重置</ElButton> <ElButton @click="resetSearchForm">重置</ElButton>
...@@ -153,7 +155,7 @@ ...@@ -153,7 +155,7 @@
</div> </div>
</div> </div>
</template> </template>
<template #operate="{row}"> <template #operate="{ row }">
<el-button type="text" @click="showDetail(row)">查看详情</el-button> <el-button type="text" @click="showDetail(row)">查看详情</el-button>
</template> </template>
</TableView> </TableView>
...@@ -184,12 +186,18 @@ ...@@ -184,12 +186,18 @@
<script lang="tsx" setup> <script lang="tsx" setup>
import { getUserMarkList } from '@/api/auth' 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 TableView from '@/components/TableView.vue'
import { import {
DeliveryNoteData, DeliveryNoteData,
PodDeliveryNoteSearchForm, PodDeliveryNoteSearchForm,
} from '@/types/api/podOrder' } from '@/types/api/podOrder'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import usePageList from '@/utils/hooks/usePageList' import usePageList from '@/utils/hooks/usePageList'
import { computed, onMounted, ref } from 'vue' import { computed, onMounted, ref } from 'vue'
import { val } from '@/utils' import { val } from '@/utils'
...@@ -227,11 +235,12 @@ onMounted(() => { ...@@ -227,11 +235,12 @@ onMounted(() => {
getNameSpaceList() getNameSpaceList()
}) })
const showDetail = async (row:DeliveryNoteData)=>{ const showDetail = async (row: DeliveryNoteData) => {
const {data} = await getPodJomallOrderByFactoryNumber(row.factoryOrderNumber as string) const { data } = await getPodJomallOrderByFactoryNumber(
row.factoryOrderNumber as string,
)
detailVisible.value = true detailVisible.value = true
orderDetailData.value = data orderDetailData.value = data
} }
const getNameSpaceList = async () => { const getNameSpaceList = async () => {
try { try {
...@@ -273,7 +282,8 @@ const tableColumns = computed(() => { ...@@ -273,7 +282,8 @@ const tableColumns = computed(() => {
prop: 'logisticsInfo', prop: 'logisticsInfo',
width: 280, width: 280,
slot: 'logisticsInfo', slot: 'logisticsInfo',
},{ },
{
label: '操作', label: '操作',
prop: 'action', prop: 'action',
width: 100, width: 100,
...@@ -359,6 +369,23 @@ const onConfirmDateRange = async () => { ...@@ -359,6 +369,23 @@ const onConfirmDateRange = async () => {
loading.close() loading.close()
} }
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="card flex-column h-100 overflow-hidden"> <div class="card flex-column h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm <ElForm
ref="searchFormRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -173,7 +174,9 @@ ...@@ -173,7 +174,9 @@
</el-date-picker> </el-date-picker>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="loadDiffList">查询</ElButton> <ElButton type="primary" @click="loadDiffList" ref="searchBtnRef"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem v-if="status === 'TO_BE_CONFIRMED'"> <ElFormItem v-if="status === 'TO_BE_CONFIRMED'">
<ElButton type="success" @click="confirmProduce">确认生产</ElButton> <ElButton type="success" @click="confirmProduce">确认生产</ElButton>
...@@ -1316,6 +1319,8 @@ import { ...@@ -1316,6 +1319,8 @@ import {
CardOrderData, CardOrderData,
} from '@/types/api/podOrder' } from '@/types/api/podOrder'
import { ArrowUp, ArrowDown, EditPen } from '@element-plus/icons-vue' import { ArrowUp, ArrowDown, EditPen } from '@element-plus/icons-vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { getLogisticsCompanyList, getUserMarkList } from '@/api/common' import { getLogisticsCompanyList, getUserMarkList } from '@/api/common'
import { ElButton, type FormRules } from 'element-plus' import { ElButton, type FormRules } from 'element-plus'
import { showConfirm } from '@/utils/ui' import { showConfirm } from '@/utils/ui'
...@@ -2515,6 +2520,22 @@ const openMaterial = async (item: PodProductList) => { ...@@ -2515,6 +2520,22 @@ const openMaterial = async (item: PodProductList) => {
document.body.removeChild(a) 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 () => { onMounted(async () => {
document.addEventListener('keydown', listenerKeydown) document.addEventListener('keydown', listenerKeydown)
await loadTabData() await loadTabData()
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="card flex-column h-100 overflow-hidden"> <div class="card flex-column h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm <ElForm
ref="searchFormRef"
class="search-form" class="search-form"
:model="searchForm" :model="searchForm"
size="default" size="default"
...@@ -148,6 +149,7 @@ ...@@ -148,6 +149,7 @@
<ElFormItem> <ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click"> <ElPopover placement="bottom" width="600" trigger="click">
<ElForm <ElForm
ref="searchFormPopoverRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -362,6 +364,23 @@ ...@@ -362,6 +364,23 @@
></ElOption> ></ElOption>
</ElSelect> </ElSelect>
</ElFormItem> </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> </ElForm>
<template #reference> <template #reference>
<el-button type="warning" @click="searchVisible = !searchVisible"> <el-button type="warning" @click="searchVisible = !searchVisible">
...@@ -384,7 +403,9 @@ ...@@ -384,7 +403,9 @@
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<span> <span>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</span> </span>
</ElFormItem> </ElFormItem>
<ElFormItem <ElFormItem
...@@ -2536,6 +2557,7 @@ import { ...@@ -2536,6 +2557,7 @@ import {
import { BaseRespData } from '@/types/api' import { BaseRespData } from '@/types/api'
import UpdateAddress from './components/updateAddress.vue' import UpdateAddress from './components/updateAddress.vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { getAllCountryApi } from '@/api/logistics.ts' import { getAllCountryApi } from '@/api/logistics.ts'
import { InterceptStateGroupData, IAllList } from '@/types/api/podUsOrder' import { InterceptStateGroupData, IAllList } from '@/types/api/podUsOrder'
...@@ -2653,6 +2675,7 @@ const sourceList = [ ...@@ -2653,6 +2675,7 @@ const sourceList = [
id: 'third-party', id: 'third-party',
}, },
] ]
const sizes = ['FS', 'XS', 'S', 'M', 'L', 'XL', 'XXL', '3XL', '4XL', '5XL']
const exportData = () => { const exportData = () => {
exportVisible.value = true exportVisible.value = true
...@@ -5306,6 +5329,32 @@ const getTagName = (row: ProductList) => { ...@@ -5306,6 +5329,32 @@ const getTagName = (row: ProductList) => {
useRouter().beforeEach((to, from, next) => { useRouter().beforeEach((to, from, next) => {
handleBeforeRouteLeave(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> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.header-filter-form { .header-filter-form {
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="card flex-column h-100 overflow-hidden"> <div class="card flex-column h-100 overflow-hidden">
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm <ElForm
ref="searchFormRef"
class="search-form" class="search-form"
label-position="right" label-position="right"
label-width="70px" label-width="70px"
...@@ -141,6 +142,7 @@ ...@@ -141,6 +142,7 @@
<ElFormItem> <ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click"> <ElPopover placement="bottom" width="600" trigger="click">
<ElForm <ElForm
ref="searchFormPopoverRef"
:model="searchForm" :model="searchForm"
size="default" size="default"
inline inline
...@@ -383,7 +385,9 @@ ...@@ -383,7 +385,9 @@
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<span> <span>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</span> </span>
</ElFormItem> </ElFormItem>
<ElFormItem <ElFormItem
...@@ -2988,6 +2992,7 @@ import { ...@@ -2988,6 +2992,7 @@ import {
} 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'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { showConfirm } from '@/utils/ui' import { showConfirm } from '@/utils/ui'
import { import {
DocumentCopy, DocumentCopy,
...@@ -3031,6 +3036,7 @@ declare global { ...@@ -3031,6 +3036,7 @@ declare global {
responseBody?: unknown responseBody?: unknown
} }
} }
const sourceList = [ const sourceList = [
{ {
name: 'erp推送', name: 'erp推送',
...@@ -3905,6 +3911,32 @@ const { ...@@ -3905,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( watch(
() => [...(tableData.value as PodUsOrderListData[])], // 创建新数组避免直接修改原始数据 () => [...(tableData.value as PodUsOrderListData[])], // 创建新数组避免直接修改原始数据
(newData) => { (newData) => {
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
<splitDiv size="50"> <splitDiv size="50">
<template #top> <template #top>
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm :model="searchForm" inline ref="searchFormRef">
<ElFormItem label="账期(发货时间)"> <ElFormItem label="账期(发货时间)">
<div style="display: flex"> <div style="display: flex">
<el-date-picker <el-date-picker
...@@ -74,7 +74,9 @@ ...@@ -74,7 +74,9 @@
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="reset">重置</ElButton> <ElButton @click="reset">重置</ElButton>
...@@ -933,6 +935,7 @@ import { DetailForm, LogListData, IUpdatePrice } from '@/types/api/deliveryNote' ...@@ -933,6 +935,7 @@ import { DetailForm, LogListData, IUpdatePrice } from '@/types/api/deliveryNote'
import ImageView from '@/components/ImageView.vue' import ImageView from '@/components/ImageView.vue'
// import { showConfirm } from '@/utils/ui' // import { showConfirm } from '@/utils/ui'
import { uploadImageApi } from '@/api/common' import { uploadImageApi } from '@/api/common'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
// import { getUserMarkList } from '@/api/auth.ts' // import { getUserMarkList } from '@/api/auth.ts'
interface Tree { interface Tree {
...@@ -1426,6 +1429,24 @@ const exportExcel = async () => { ...@@ -1426,6 +1429,24 @@ const exportExcel = async () => {
console.error(e) console.error(e)
} }
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
onMounted(() => { onMounted(() => {
getTreeNum() getTreeNum()
}) })
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
<splitDiv size="50"> <splitDiv size="50">
<template #top> <template #top>
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm ref="searchFormRef" :model="searchForm" inline>
<ElFormItem label="账期(创建时间)"> <ElFormItem label="账期(创建时间)">
<div style="display: flex"> <div style="display: flex">
<el-date-picker <el-date-picker
...@@ -66,7 +66,9 @@ ...@@ -66,7 +66,9 @@
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="reset">重置</ElButton> <ElButton @click="reset">重置</ElButton>
...@@ -1057,6 +1059,7 @@ import { ...@@ -1057,6 +1059,7 @@ import {
batchUpdatePrice, batchUpdatePrice,
delPodUsOrderData, delPodUsOrderData,
} from '@/api/order' } from '@/api/order'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import { nextTick, onMounted, ref, watch } from 'vue' import { nextTick, onMounted, ref, watch } from 'vue'
import 'element-plus/dist/index.css' import 'element-plus/dist/index.css'
...@@ -1500,6 +1503,24 @@ const exportExcel = async () => { ...@@ -1500,6 +1503,24 @@ const exportExcel = async () => {
console.error(e) console.error(e)
} }
} }
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
search()
},
})
onMounted(() => { onMounted(() => {
getTreeNum() getTreeNum()
}) })
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
<splitDiv size="50"> <splitDiv size="50">
<template #top> <template #top>
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm :model="searchForm" inline ref="searchFormRef">
<ElFormItem label="仓库"> <ElFormItem label="仓库">
<ElSelect <ElSelect
v-model="searchForm.warehouseId" v-model="searchForm.warehouseId"
...@@ -88,7 +88,9 @@ ...@@ -88,7 +88,9 @@
/> />
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="resetSearchForm">重置</ElButton> <ElButton @click="resetSearchForm">重置</ElButton>
...@@ -867,6 +869,7 @@ import { ...@@ -867,6 +869,7 @@ import {
InterWarehouseDetail, InterWarehouseDetail,
} from '@/types/api/warehouse' } from '@/types/api/warehouse'
import ImageView from '@/components/ImageView.vue' import ImageView from '@/components/ImageView.vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
import UploadExcel from '@/components/UploadExcel.vue' import UploadExcel from '@/components/UploadExcel.vue'
// import { debounce } from 'lodash-es' // import { debounce } from 'lodash-es'
const warehouseList = ref<warehouseInfo[]>([]) const warehouseList = ref<warehouseInfo[]>([])
...@@ -1831,6 +1834,23 @@ const handleWarehouseChange = (val: number | string | undefined) => { ...@@ -1831,6 +1834,23 @@ const handleWarehouseChange = (val: number | string | undefined) => {
) )
editForm.value.warehouseName = found ? found.name : '' 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(() => { onMounted(() => {
getTreeNum() getTreeNum()
getWarehouseList() getWarehouseList()
......
...@@ -18,6 +18,8 @@ import { nextTick, ref } from 'vue' ...@@ -18,6 +18,8 @@ import { nextTick, ref } from 'vue'
import SplitDiv from '@/components/splitDiv/splitDiv.vue' import SplitDiv from '@/components/splitDiv/splitDiv.vue'
import { filePath } from '@/api/axios.ts' import { filePath } from '@/api/axios.ts'
import UploadExcel from '@/components/UploadExcel.vue' import UploadExcel from '@/components/UploadExcel.vue'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
const importDialogVisible = ref(false) const importDialogVisible = ref(false)
const importedFileUrl = ref('') const importedFileUrl = ref('')
const importLocation = async () => { const importLocation = async () => {
...@@ -253,13 +255,29 @@ const warehouseChange = (v: number) => { ...@@ -253,13 +255,29 @@ const warehouseChange = (v: number) => {
form.value.warehouseName = warehouse ? warehouse.name : '' form.value.warehouseName = warehouse ? warehouse.name : ''
} }
getWarehouse() getWarehouse()
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
getData()
},
})
</script> </script>
<template> <template>
<split-div> <split-div>
<template #top> <template #top>
<el-card> <el-card>
<el-form inline :model="searchForm"> <el-form inline :model="searchForm" ref="searchFormRef">
<el-form-item label="仓库"> <el-form-item label="仓库">
<el-select <el-select
v-model="searchForm.warehouseId" v-model="searchForm.warehouseId"
...@@ -317,7 +335,9 @@ getWarehouse() ...@@ -317,7 +335,9 @@ getWarehouse()
</el-select> </el-select>
</el-form-item> </el-form-item>
<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 type="success" @click="createWarehouse"
>新增库位</el-button >新增库位</el-button
> >
...@@ -531,7 +551,7 @@ getWarehouse() ...@@ -531,7 +551,7 @@ getWarehouse()
align-items: center; align-items: center;
.location-label { .location-label {
color: #606266; color: #606266;
margin:0 15px; margin: 0 15px;
} }
} }
.import-dialog { .import-dialog {
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
<splitDiv size="50"> <splitDiv size="50">
<template #top> <template #top>
<div class="header-filter-form"> <div class="header-filter-form">
<ElForm :model="searchForm" inline> <ElForm :model="searchForm" inline ref="searchFormRef">
<ElFormItem label="采购仓库"> <ElFormItem label="采购仓库">
<ElSelect <ElSelect
v-model="searchForm.warehouseId" v-model="searchForm.warehouseId"
...@@ -88,7 +88,9 @@ ...@@ -88,7 +88,9 @@
/> />
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton type="primary" @click="search">查询</ElButton> <ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</ElFormItem> </ElFormItem>
<ElFormItem> <ElFormItem>
<ElButton @click="resetSearchForm">重置</ElButton> <ElButton @click="resetSearchForm">重置</ElButton>
...@@ -885,6 +887,8 @@ import { ...@@ -885,6 +887,8 @@ import {
import ImageView from '@/components/ImageView.vue' import ImageView from '@/components/ImageView.vue'
import UploadExcel from '@/components/UploadExcel.vue' import UploadExcel from '@/components/UploadExcel.vue'
// import { debounce } from 'lodash-es' // import { debounce } from 'lodash-es'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
const warehouseList = ref<warehouseInfo[]>([]) const warehouseList = ref<warehouseInfo[]>([])
const pickerOptions = { const pickerOptions = {
shortcuts: [ shortcuts: [
...@@ -1800,6 +1804,23 @@ const handleWarehouseChange = (val: number | string | undefined) => { ...@@ -1800,6 +1804,23 @@ const handleWarehouseChange = (val: number | string | undefined) => {
) )
editForm.value.warehouseName = found ? found.name : '' 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(() => { onMounted(() => {
getTreeNum() getTreeNum()
getWarehouseList() getWarehouseList()
......
...@@ -19,6 +19,7 @@ import { AnyObject } from '@/types/api/warehouse' ...@@ -19,6 +19,7 @@ import { AnyObject } from '@/types/api/warehouse'
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import SplitDiv from '@/components/splitDiv/splitDiv.vue' import SplitDiv from '@/components/splitDiv/splitDiv.vue'
import { filePath } from '@/api/axios.ts' import { filePath } from '@/api/axios.ts'
import { useEnterKeyTrigger } from '@/utils/hooks/useEnterKeyTrigger.ts'
const searchForm = ref({ const searchForm = ref({
warehouseId: '', warehouseId: '',
...@@ -293,6 +294,22 @@ const getWarehouse = async () => { ...@@ -293,6 +294,22 @@ const getWarehouse = async () => {
} }
getData() getData()
getWarehouse() getWarehouse()
/**
* @description: 页面添加回车监听
*/
const searchFormRef = ref()
const searchBtnRef = ref()
useEnterKeyTrigger({
formRef: searchFormRef,
btnRef: searchBtnRef,
callback: (event: KeyboardEvent) => {
console.log('回车键被按下', event)
getData()
},
})
</script> </script>
<template> <template>
...@@ -345,7 +362,12 @@ getWarehouse() ...@@ -345,7 +362,12 @@ getWarehouse()
</template> </template>
</el-dialog> </el-dialog>
<el-card> <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-form-item label="仓库">
<el-select <el-select
v-model="searchForm.warehouseId" v-model="searchForm.warehouseId"
...@@ -432,7 +454,9 @@ getWarehouse() ...@@ -432,7 +454,9 @@ getWarehouse()
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: 5px"> <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>
<el-form-item style="margin-top: 5px"> <el-form-item style="margin-top: 5px">
<el-button type="primary" @click="printProductTag" <el-button type="primary" @click="printProductTag"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment