From 221790f2c78d0c2c2a0e8cbf2387f17d1facfcb9 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 20 Dec 2025 15:15:57 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90system=E3=80=91=E7=9F=AD?= =?UTF-8?q?=E4=BF=A1=E7=AE=A1=E7=90=86=E7=9A=84=E5=A2=9E=E5=8A=A0=20100%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sms/components/channel-list.vue | 27 ++++----- .../sms/components/channel-search-form.vue | 60 ++++++++++++++++++- src/pages-system/sms/components/log-list.vue | 23 ++++--- .../sms/components/log-search-form.vue | 60 ++++++++++++++++++- .../sms/components/template-list.vue | 27 ++++----- .../sms/components/template-search-form.vue | 60 ++++++++++++++++++- src/pages-system/sms/index.vue | 6 +- 7 files changed, 210 insertions(+), 53 deletions(-) diff --git a/src/pages-system/sms/components/channel-list.vue b/src/pages-system/sms/components/channel-list.vue index c6b2508..73e6c1e 100644 --- a/src/pages-system/sms/components/channel-list.vue +++ b/src/pages-system/sms/components/channel-list.vue @@ -58,17 +58,13 @@ diff --git a/src/pages-system/sms/components/channel-search-form.vue b/src/pages-system/sms/components/channel-search-form.vue index 90e94ab..42dc4f8 100644 --- a/src/pages-system/sms/components/channel-search-form.vue +++ b/src/pages-system/sms/components/channel-search-form.vue @@ -51,7 +51,42 @@ - + + + 创建时间 + + + + + {{ formatDate(formData.createTime?.[0]) || '开始日期' }} + + + - + + + {{ formatDate(formData.createTime?.[1]) || '结束日期' }} + + + + + + + 取消 + + + 确定 + + + + + + 取消 + + + 确定 + + + 重置 @@ -69,6 +104,7 @@ import { computed, reactive, ref } from 'vue' import { getDictLabel, getIntDictOptions, getStrDictOptions } from '@/hooks/useDict' import { getNavbarHeight } from '@/utils' import { DICT_TYPE } from '@/utils/constants' +import { formatDate, formatDateRange } from '@/utils/date' const emit = defineEmits<{ search: [data: Record] @@ -80,6 +116,7 @@ const formData = reactive({ signature: undefined as string | undefined, code: '', status: -1, + createTime: [undefined, undefined] as [number | undefined, number | undefined], }) /** 搜索条件 placeholder 拼接 */ @@ -94,9 +131,28 @@ const placeholder = computed(() => { if (formData.status !== -1) { conditions.push(`状态:${getDictLabel(DICT_TYPE.COMMON_STATUS, formData.status)}`) } + if (formData.createTime?.[0] && formData.createTime?.[1]) { + conditions.push(`时间:${formatDate(formData.createTime[0])}~${formatDate(formData.createTime[1])}`) + } return conditions.length > 0 ? conditions.join(' | ') : '搜索短信渠道' }) +// 时间范围选择器状态 +const visibleCreateTime = ref<[boolean, boolean]>([false, false]) +const tempCreateTime = ref<[number, number]>([Date.now(), Date.now()]) + +/** 创建时间[0]确认 */ +function handleCreateTime0Confirm() { + formData.createTime = [tempCreateTime.value[0], formData.createTime?.[1]] + visibleCreateTime.value[0] = false +} + +/** 创建时间[1]确认 */ +function handleCreateTime1Confirm() { + formData.createTime = [formData.createTime?.[0], tempCreateTime.value[1]] + visibleCreateTime.value[1] = false +} + /** 搜索 */ function handleSearch() { visible.value = false @@ -104,6 +160,7 @@ function handleSearch() { signature: formData.signature || undefined, code: formData.code || undefined, status: formData.status === -1 ? undefined : formData.status, + createTime: formatDateRange(formData.createTime), }) } @@ -112,6 +169,7 @@ function handleReset() { formData.signature = undefined formData.code = '' formData.status = -1 + formData.createTime = [undefined, undefined] visible.value = false emit('reset') } diff --git a/src/pages-system/sms/components/log-list.vue b/src/pages-system/sms/components/log-list.vue index db6cbf6..0dc4b7e 100644 --- a/src/pages-system/sms/components/log-list.vue +++ b/src/pages-system/sms/components/log-list.vue @@ -53,7 +53,7 @@ diff --git a/src/pages-system/sms/components/log-search-form.vue b/src/pages-system/sms/components/log-search-form.vue index bf0760c..9023043 100644 --- a/src/pages-system/sms/components/log-search-form.vue +++ b/src/pages-system/sms/components/log-search-form.vue @@ -51,7 +51,42 @@ - + + + 发送时间 + + + + + {{ formatDate(formData.sendTime?.[0]) || '开始日期' }} + + + - + + + {{ formatDate(formData.sendTime?.[1]) || '结束日期' }} + + + + + + + 取消 + + + 确定 + + + + + + 取消 + + + 确定 + + + 重置 @@ -69,6 +104,7 @@ import { computed, reactive, ref } from 'vue' import { getDictLabel, getIntDictOptions } from '@/hooks/useDict' import { getNavbarHeight } from '@/utils' import { DICT_TYPE } from '@/utils/constants' +import { formatDate, formatDateRange } from '@/utils/date' const emit = defineEmits<{ search: [data: Record] @@ -80,6 +116,7 @@ const formData = reactive({ mobile: undefined as string | undefined, sendStatus: -1, receiveStatus: -1, + sendTime: [undefined, undefined] as [number | undefined, number | undefined], }) /** 搜索条件 placeholder 拼接 */ @@ -94,9 +131,28 @@ const placeholder = computed(() => { if (formData.receiveStatus !== -1) { conditions.push(`接收:${getDictLabel(DICT_TYPE.SYSTEM_SMS_RECEIVE_STATUS, formData.receiveStatus)}`) } + if (formData.sendTime?.[0] && formData.sendTime?.[1]) { + conditions.push(`时间:${formatDate(formData.sendTime[0])}~${formatDate(formData.sendTime[1])}`) + } return conditions.length > 0 ? conditions.join(' | ') : '搜索短信日志' }) +// 时间范围选择器状态 +const visibleSendTime = ref<[boolean, boolean]>([false, false]) +const tempSendTime = ref<[number, number]>([Date.now(), Date.now()]) + +/** 发送时间[0]确认 */ +function handleSendTime0Confirm() { + formData.sendTime = [tempSendTime.value[0], formData.sendTime?.[1]] + visibleSendTime.value[0] = false +} + +/** 发送时间[1]确认 */ +function handleSendTime1Confirm() { + formData.sendTime = [formData.sendTime?.[0], tempSendTime.value[1]] + visibleSendTime.value[1] = false +} + /** 搜索 */ function handleSearch() { visible.value = false @@ -104,6 +160,7 @@ function handleSearch() { mobile: formData.mobile || undefined, sendStatus: formData.sendStatus === -1 ? undefined : formData.sendStatus, receiveStatus: formData.receiveStatus === -1 ? undefined : formData.receiveStatus, + sendTime: formatDateRange(formData.sendTime), }) } @@ -112,6 +169,7 @@ function handleReset() { formData.mobile = undefined formData.sendStatus = -1 formData.receiveStatus = -1 + formData.sendTime = [undefined, undefined] visible.value = false emit('reset') } diff --git a/src/pages-system/sms/components/template-list.vue b/src/pages-system/sms/components/template-list.vue index 2cf0ea1..79040d3 100644 --- a/src/pages-system/sms/components/template-list.vue +++ b/src/pages-system/sms/components/template-list.vue @@ -62,17 +62,13 @@ diff --git a/src/pages-system/sms/components/template-search-form.vue b/src/pages-system/sms/components/template-search-form.vue index bdebe72..6a126c7 100644 --- a/src/pages-system/sms/components/template-search-form.vue +++ b/src/pages-system/sms/components/template-search-form.vue @@ -7,7 +7,6 @@ - 模板名称 @@ -62,6 +61,42 @@ + + + 创建时间 + + + + + {{ formatDate(formData.createTime?.[0]) || '开始日期' }} + + + - + + + {{ formatDate(formData.createTime?.[1]) || '结束日期' }} + + + + + + + 取消 + + + 确定 + + + + + + 取消 + + + 确定 + + + 重置 @@ -79,6 +114,7 @@ import { computed, reactive, ref } from 'vue' import { getDictLabel, getIntDictOptions } from '@/hooks/useDict' import { getNavbarHeight } from '@/utils' import { DICT_TYPE } from '@/utils/constants' +import { formatDate, formatDateRange } from '@/utils/date' const emit = defineEmits<{ search: [data: Record] @@ -91,6 +127,7 @@ const formData = reactive({ code: undefined as string | undefined, type: -1, status: -1, + createTime: [undefined, undefined] as [number | undefined, number | undefined], }) /** 搜索条件 placeholder 拼接 */ @@ -108,9 +145,28 @@ const placeholder = computed(() => { if (formData.status !== -1) { conditions.push(`状态:${getDictLabel(DICT_TYPE.COMMON_STATUS, formData.status)}`) } + if (formData.createTime?.[0] && formData.createTime?.[1]) { + conditions.push(`时间:${formatDate(formData.createTime[0])}~${formatDate(formData.createTime[1])}`) + } return conditions.length > 0 ? conditions.join(' | ') : '搜索短信模板' }) +// 时间范围选择器状态 +const visibleCreateTime = ref<[boolean, boolean]>([false, false]) +const tempCreateTime = ref<[number, number]>([Date.now(), Date.now()]) + +/** 创建时间[0]确认 */ +function handleCreateTime0Confirm() { + formData.createTime = [tempCreateTime.value[0], formData.createTime?.[1]] + visibleCreateTime.value[0] = false +} + +/** 创建时间[1]确认 */ +function handleCreateTime1Confirm() { + formData.createTime = [formData.createTime?.[0], tempCreateTime.value[1]] + visibleCreateTime.value[1] = false +} + /** 搜索 */ function handleSearch() { visible.value = false @@ -119,6 +175,7 @@ function handleSearch() { code: formData.code || undefined, type: formData.type === -1 ? undefined : formData.type, status: formData.status === -1 ? undefined : formData.status, + createTime: formatDateRange(formData.createTime), }) } @@ -128,6 +185,7 @@ function handleReset() { formData.code = undefined formData.type = -1 formData.status = -1 + formData.createTime = [undefined, undefined] visible.value = false emit('reset') } diff --git a/src/pages-system/sms/index.vue b/src/pages-system/sms/index.vue index b5f871e..410287d 100644 --- a/src/pages-system/sms/index.vue +++ b/src/pages-system/sms/index.vue @@ -17,9 +17,9 @@ - - - + + +