diff --git a/src/views/common/push/pushBlacklist/index.vue b/src/views/common/push/pushBlacklist/index.vue index 64cc59f..7a7ec70 100644 --- a/src/views/common/push/pushBlacklist/index.vue +++ b/src/views/common/push/pushBlacklist/index.vue @@ -101,11 +101,6 @@ state.multiple = !rowSelection.length; } - /** 新增按钮操作,行内新增与工具栏局域新增通用 */ - function handleAdd() { - openModal(true,{ _tag: 'add' }); - } - /** 查看按钮操作,行内查看 */ function handleViewEdit(record?: Recordable) { record = record || { id: getSelectRowKeys() }; diff --git a/src/views/common/push/pushChatMessage/ChatMessageModal.vue b/src/views/common/push/pushChatMessage/ChatMessageModal.vue new file mode 100644 index 0000000..c7fd07d --- /dev/null +++ b/src/views/common/push/pushChatMessage/ChatMessageModal.vue @@ -0,0 +1,41 @@ + + diff --git a/src/views/common/push/pushChatMessage/chatMessage.data.ts b/src/views/common/push/pushChatMessage/chatMessage.data.ts new file mode 100644 index 0000000..92539dc --- /dev/null +++ b/src/views/common/push/pushChatMessage/chatMessage.data.ts @@ -0,0 +1,266 @@ +import { BasicColumn } from '/@/components/Table'; +import { FormSchema } from '/@/components/Table'; +import { listPushRingtone } from '/@/api/platform/common/controller/pushRingtone'; +import { listPushType } from '/@/api/platform/common/controller/pushType'; +import { h } from 'vue'; +import { Tag } from 'ant-design-vue'; + +/** 表格列配置 */ +export const columns: BasicColumn[] = [ + { + title: '通知标题', + dataIndex: 'title' + }, + { + title: '通知内容', + dataIndex: 'text' + }, + { + title: '播放声音', + dataIndex: 'playSound', + width: 80, + customRender: ({ record }) => { + const playSound = record?.playSound; + const enable = ~~playSound === 0; + const color = enable ? 'green' : 'red'; + const text = enable ? '是' : '否'; + return h(Tag, { color: color }, () => text); + } + }, + { + title: '震动', + dataIndex: 'playVibrate', + width: 80, + customRender: ({ record }) => { + const playVibrate = record?.playVibrate; + const enable = ~~playVibrate === 0; + const color = enable ? 'green' : 'red'; + const text = enable ? '是' : '否'; + return h(Tag, { color: color }, () => text); + } + }, + { + title: '闪光', + dataIndex: 'playLights', + width: 80, + customRender: ({ record }) => { + const playLights = record?.playLights; + const enable = ~~playLights === 0; + const color = enable ? 'green' : 'red'; + const text = enable ? '是' : '否'; + return h(Tag, { color: color }, () => text); + } + }, + { + title: '文字转语音', + dataIndex: 'playToText', + width: 120, + customRender: ({ record }) => { + const playToText = record?.playToText; + const enable = ~~playToText === 1; + const color = enable ? 'green' : 'red'; + const text = enable ? '是': '否'; + return h(Tag, { color: color }, () => text); + } + }, + { + title: '离线铃声', + dataIndex: 'sound' + }, + { + title: '自定义通知传输数据', + dataIndex: 'custom' + }, +]; + +/** 搜索表单配置 */ +export const searchFormSchema: FormSchema[] = [ + { + field: 'title', + label: '通知标题', + component: 'Input', + componentProps: { + placeholder: '请输入通知标题', + }, + colProps: { span: 6 } + } +]; + +/** 表单配置 */ +export const formSchema: FormSchema[] = [ + { + field: 'id', + label: 'ID', + component: 'Input', + show: false + }, + { + field: 'pushTypeId', + label: '推送类型', + component: 'ApiSelect', + componentProps: { + disabled: true, + api: listPushType, + params: { + size: 99 + }, + labelField: 'name', + valueField: 'id', + resultField: 'data' + }, + }, + { + field: 'status', + label: '推送状态', + component: 'Select', + colProps: { + span: 12 + }, + componentProps: { + disabled: true, + options: [ + { label: '待审核', value: '0' }, + { label: '未读', value: '1' }, + { label: '已读', value: '2' } + ] + } + }, + { + field: 'aliasType', + label: '别名类型', + component: 'Input', + colProps: { + span: 12 + }, + componentProps: { + disabled: true + } + }, + { + field: 'alias', + label: '推送别名', + component: 'Input', + colProps: { + span: 12 + }, + componentProps: { + disabled: true + } + }, + { + field: 'title', + label: '通知标题', + component: 'Input', + componentProps: { + disabled: true + } + }, + { + field: 'text', + label: '通知内容', + component: 'Input', + componentProps: { + disabled: true + } + }, + { + field: 'playSound', + label: '播放声音', + component: 'RadioGroup', + defaultValue: '0', + componentProps: { + disabled: true, + options: [ + { label: '是', value: '0' }, + { label: '否', value: '1' } + ] + }, + colProps: { + span: 12 + } + }, + { + field: 'playVibrate', + label: '震动', + component: 'RadioGroup', + defaultValue: '0', + componentProps: { + disabled: true, + options: [ + { label: '是', value: '0' }, + { label: '否', value: '1' } + ] + }, + colProps: { + span: 12 + } + }, + { + field: 'playLights', + label: '闪光', + component: 'RadioGroup', + defaultValue: '0', + componentProps: { + disabled: true, + options: [ + { label: '是', value: '0' }, + { label: '否', value: '1' } + ] + }, + colProps: { + span: 12 + } + }, + { + field: 'playToText', + label: '文字转语音', + component: 'RadioGroup', + defaultValue: '0', + componentProps: { + disabled: true, + options: [ + { label: '否', value: '0' }, + { label: '是', value: '1' } + ] + }, + colProps: { + span: 12 + } + }, + { + field: 'sound', + label: '离线铃声', + component: 'Input', + componentProps: { + disabled: true, + placeholder: '格式为R.raw.[sound]', + }, + colProps: { + span: 12 + } + }, + { + field: 'onlineRingtone', + label: '在线铃声', + component: 'ApiSelect', + componentProps: { + disabled: true, + api: listPushRingtone, + params: { + size: 99 + }, + labelField: 'name', + valueField: 'id', + resultField: 'data' + }, + }, + { + field: 'custom', + label: '自定义通知传输数据', + component: 'InputTextArea', + componentProps: { + disabled: true, + rows: 6 + }, + }, +]; diff --git a/src/views/common/push/pushChatMessage/index.vue b/src/views/common/push/pushChatMessage/index.vue index bfd1de3..78f9d04 100644 --- a/src/views/common/push/pushChatMessage/index.vue +++ b/src/views/common/push/pushChatMessage/index.vue @@ -11,31 +11,45 @@ @click="handleDel()" >删除消息 - + +