feat: 优化 system
This commit is contained in:
@@ -1,7 +1,13 @@
|
||||
import type { VbenFormSchema } from '#/adapter/form';
|
||||
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
|
||||
import type { DescriptionItemSchema } from '#/components/description';
|
||||
|
||||
import { h } from 'vue';
|
||||
|
||||
import { formatDateTime } from '@vben/utils';
|
||||
|
||||
import { getSimpleSmsChannelList } from '#/api/system/sms/channel';
|
||||
import { DictTag } from '#/components/dict-tag';
|
||||
import { DICT_TYPE, getDictOptions, getRangePickerDefaultProps } from '#/utils';
|
||||
|
||||
/** 列表的搜索表单 */
|
||||
@@ -153,3 +159,94 @@ export function useGridColumns(): VxeTableGridOptions['columns'] {
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
/** 详情页的字段 */
|
||||
export function useDetailSchema(): DescriptionItemSchema[] {
|
||||
return [
|
||||
{
|
||||
field: 'createTime',
|
||||
label: '创建时间',
|
||||
content: (data) => formatDateTime(data?.createTime || '') as string,
|
||||
},
|
||||
{
|
||||
field: 'mobile',
|
||||
label: '手机号',
|
||||
},
|
||||
{
|
||||
field: 'channelCode',
|
||||
label: '短信渠道',
|
||||
},
|
||||
{
|
||||
field: 'templateId',
|
||||
label: '模板编号',
|
||||
},
|
||||
{
|
||||
field: 'templateType',
|
||||
label: '模板类型',
|
||||
content: (data) => {
|
||||
return h(DictTag, {
|
||||
type: DICT_TYPE.SYSTEM_SMS_TEMPLATE_TYPE,
|
||||
value: data?.templateType,
|
||||
});
|
||||
},
|
||||
},
|
||||
{
|
||||
field: 'templateContent',
|
||||
label: '短信内容',
|
||||
},
|
||||
{
|
||||
field: 'sendStatus',
|
||||
label: '发送状态',
|
||||
content: (data) => {
|
||||
return h(DictTag, {
|
||||
type: DICT_TYPE.SYSTEM_SMS_SEND_STATUS,
|
||||
value: data?.sendStatus,
|
||||
});
|
||||
},
|
||||
},
|
||||
{
|
||||
field: 'sendTime',
|
||||
label: '发送时间',
|
||||
content: (data) => formatDateTime(data?.sendTime || '') as string,
|
||||
},
|
||||
{
|
||||
field: 'apiSendCode',
|
||||
label: 'API 发送编码',
|
||||
},
|
||||
{
|
||||
field: 'apiSendMsg',
|
||||
label: 'API 发送消息',
|
||||
},
|
||||
{
|
||||
field: 'receiveStatus',
|
||||
label: '接收状态',
|
||||
content: (data) => {
|
||||
return h(DictTag, {
|
||||
type: DICT_TYPE.SYSTEM_SMS_RECEIVE_STATUS,
|
||||
value: data?.receiveStatus,
|
||||
});
|
||||
},
|
||||
},
|
||||
{
|
||||
field: 'receiveTime',
|
||||
label: '接收时间',
|
||||
content: (data) => formatDateTime(data?.receiveTime || '') as string,
|
||||
},
|
||||
{
|
||||
field: 'apiReceiveCode',
|
||||
label: 'API 接收编码',
|
||||
},
|
||||
{
|
||||
field: 'apiReceiveMsg',
|
||||
label: 'API 接收消息',
|
||||
},
|
||||
{
|
||||
field: 'apiRequestId',
|
||||
label: 'API 请求 ID',
|
||||
},
|
||||
{
|
||||
field: 'apiSerialNo',
|
||||
label: 'API 序列号',
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
@@ -4,15 +4,22 @@ import type { SystemSmsLogApi } from '#/api/system/sms/log';
|
||||
import { ref } from 'vue';
|
||||
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { formatDateTime } from '@vben/utils';
|
||||
|
||||
import { Descriptions } from 'ant-design-vue';
|
||||
import { useDescription } from '#/components/description';
|
||||
|
||||
import { DictTag } from '#/components/dict-tag';
|
||||
import { DICT_TYPE } from '#/utils';
|
||||
import { useDetailSchema } from '../data';
|
||||
|
||||
const formData = ref<SystemSmsLogApi.SmsLog>();
|
||||
|
||||
const [Descriptions] = useDescription({
|
||||
componentProps: {
|
||||
bordered: true,
|
||||
column: 2,
|
||||
class: 'mx-4',
|
||||
},
|
||||
schema: useDetailSchema(),
|
||||
});
|
||||
|
||||
const [Modal, modalApi] = useVbenModal({
|
||||
async onOpenChange(isOpen: boolean) {
|
||||
if (!isOpen) {
|
||||
@@ -41,70 +48,6 @@ const [Modal, modalApi] = useVbenModal({
|
||||
:show-cancel-button="false"
|
||||
:show-confirm-button="false"
|
||||
>
|
||||
<Descriptions
|
||||
bordered
|
||||
:column="2"
|
||||
size="middle"
|
||||
class="mx-4"
|
||||
:label-style="{ width: '140px' }"
|
||||
>
|
||||
<Descriptions.Item label="创建时间">
|
||||
{{ formatDateTime(formData?.createTime || '') }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="手机号">
|
||||
{{ formData?.mobile }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="短信渠道">
|
||||
{{ formData?.channelCode }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="模板编号">
|
||||
{{ formData?.templateId }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="模板类型">
|
||||
<DictTag
|
||||
:type="DICT_TYPE.SYSTEM_SMS_TEMPLATE_TYPE"
|
||||
:value="formData?.templateType"
|
||||
/>
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="短信内容">
|
||||
{{ formData?.templateContent }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="发送状态">
|
||||
<DictTag
|
||||
:type="DICT_TYPE.SYSTEM_SMS_SEND_STATUS"
|
||||
:value="formData?.sendStatus"
|
||||
/>
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="发送时间">
|
||||
{{ formatDateTime(formData?.sendTime || '') }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 发送编码">
|
||||
{{ formData?.apiSendCode }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 发送消息">
|
||||
{{ formData?.apiSendMsg }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="接收状态">
|
||||
<DictTag
|
||||
:type="DICT_TYPE.SYSTEM_SMS_RECEIVE_STATUS"
|
||||
:value="formData?.receiveStatus"
|
||||
/>
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="接收时间">
|
||||
{{ formatDateTime(formData?.receiveTime || '') }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 接收编码">
|
||||
{{ formData?.apiReceiveCode }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 接收消息" :span="2">
|
||||
{{ formData?.apiReceiveMsg }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 请求 ID">
|
||||
{{ formData?.apiRequestId }}
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="API 序列号">
|
||||
{{ formData?.apiSerialNo }}
|
||||
</Descriptions.Item>
|
||||
</Descriptions>
|
||||
<Descriptions :data="formData" />
|
||||
</Modal>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user