Commit 557a5411 by zhuzhequan

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

parents fcd53db6 d23313db
......@@ -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)}
......
......@@ -45,6 +45,7 @@ export interface SearchForm {
sizeType?: number | null
tagsId?: string
source?: string
size?: string
tagsIdArr?: (number | null)[]
}
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 @@
<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"
>查询</ElButton
>
</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()
})
......
<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>
......
......@@ -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"
......
......@@ -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: '请输入订单号',
},
},
])
......
......@@ -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
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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-button
>
<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">
......
......@@ -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
>
......
......@@ -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 {
......
......@@ -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>
......
......@@ -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'
import { ElFormItem } from 'element-plus'
......@@ -750,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) => {
......@@ -773,6 +800,7 @@ onMounted(() => {
<template #top>
<el-card>
<ElForm
ref="searchFormRef"
:model="searchForm"
size="default"
inline
......@@ -887,6 +915,7 @@ onMounted(() => {
<ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click">
<ElForm
ref="searchFormPopoverRef"
:model="searchForm"
size="default"
inline
......@@ -1061,7 +1090,9 @@ onMounted(() => {
</ElFormItem>
<ElFormItem>
<span>
<ElButton type="primary" @click="search">查询</ElButton>
<ElButton type="primary" @click="search" ref="searchBtnRef"
>查询</ElButton
>
</span>
</ElFormItem>
<ElFormItem>
......
<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>
......
......@@ -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()
......
......@@ -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 {
......
......@@ -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"
......@@ -141,6 +142,7 @@
<ElFormItem>
<ElPopover placement="bottom" width="600" trigger="click">
<ElForm
ref="searchFormPopoverRef"
:model="searchForm"
size="default"
inline
......@@ -383,7 +385,9 @@
</ElFormItem>
<ElFormItem>
<span>
<ElButton type="primary" @click="search">查询</ElButton>
<ElButton ref="searchBtnRef" type="primary" @click="search"
>查询</ElButton
>
</span>
</ElFormItem>
<ElFormItem
......@@ -2988,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,
......@@ -3031,6 +3036,7 @@ declare global {
responseBody?: unknown
}
}
const sourceList = [
{
name: 'erp推送',
......@@ -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(
() => [...(tableData.value as PodUsOrderListData[])], // 创建新数组避免直接修改原始数据
(newData) => {
......
......@@ -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"
>查询</ElButton
>
</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()
})
......
......@@ -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"
>查询</ElButton
>
</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()
})
......
......@@ -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"
>查询</ElButton
>
</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()
......
......@@ -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 {
......
......@@ -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"
>查询</ElButton
>
</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()
......
......@@ -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"
......
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