import type { MemberMessageReachChannel, MemberMessageReachStatus, MemberMessageTemplateCategory, } from '#/api/member/message-reach'; import type { MemberMessageReachTabKey } from '#/views/member/message-reach/types'; /** 消息触达查看权限。 */ export const MEMBER_MESSAGE_REACH_VIEW_PERMISSION = 'tenant:member:message-reach:view'; /** 消息触达管理权限。 */ export const MEMBER_MESSAGE_REACH_MANAGE_PERMISSION = 'tenant:member:message-reach:manage'; /** 页面 Tab 选项。 */ export const MESSAGE_REACH_TAB_OPTIONS: Array<{ label: string; value: MemberMessageReachTabKey; }> = [ { label: '消息列表', value: 'list' }, { label: '消息模板', value: 'template' }, ]; /** 状态筛选选项。 */ export const MESSAGE_REACH_STATUS_FILTER_OPTIONS: Array<{ label: string; value: '' | MemberMessageReachStatus; }> = [ { label: '全部状态', value: '' }, { label: '草稿', value: 'draft' }, { label: '待发送', value: 'pending' }, { label: '发送中', value: 'sending' }, { label: '已发送', value: 'sent' }, { label: '发送失败', value: 'failed' }, ]; /** 渠道筛选选项。 */ export const MESSAGE_REACH_CHANNEL_FILTER_OPTIONS: Array<{ label: string; value: '' | MemberMessageReachChannel; }> = [ { label: '全部渠道', value: '' }, { label: '站内信', value: 'inapp' }, { label: '短信', value: 'sms' }, { label: '微信模板', value: 'wechat-mini' }, ]; /** 模板分类筛选选项。 */ export const MESSAGE_TEMPLATE_CATEGORY_FILTER_OPTIONS: Array<{ label: string; value: '' | MemberMessageTemplateCategory; }> = [ { label: '全部分类', value: '' }, { label: '通知', value: 'notice' }, { label: '营销', value: 'marketing' }, { label: '召回', value: 'recall' }, ]; /** 模板分类编辑选项。 */ export const MESSAGE_TEMPLATE_CATEGORY_OPTIONS: Array<{ label: string; value: MemberMessageTemplateCategory; }> = [ { label: '通知', value: 'notice' }, { label: '营销', value: 'marketing' }, { label: '召回', value: 'recall' }, ]; /** 抽屉渠道选项。 */ export const MESSAGE_REACH_CHANNEL_OPTIONS: Array<{ label: string; value: MemberMessageReachChannel; }> = [ { label: '站内信', value: 'inapp' }, { label: '短信', value: 'sms' }, { label: '微信模板消息', value: 'wechat-mini' }, ]; /** 固定标签选项。 */ export const MESSAGE_AUDIENCE_TAG_OPTIONS = [ { label: '高频客户', value: '高频客户' }, { label: '新客', value: '新客' }, { label: '沉睡客户', value: '沉睡客户' }, { label: '流失客户', value: '流失客户' }, { label: '午餐常客', value: '午餐常客' }, { label: '大额消费', value: '大额消费' }, ] as const; /** 目标人群选项。 */ export const MESSAGE_AUDIENCE_TYPE_OPTIONS = [ { label: '全部会员', value: 'all' }, { label: '按标签筛选', value: 'tag' }, ] as const; /** 发送时间选项。 */ export const MESSAGE_SCHEDULE_TYPE_OPTIONS = [ { label: '立即发送', value: 'immediate' }, { label: '定时发送', value: 'scheduled' }, ] as const; /** 表格分页尺寸选项。 */ export const MESSAGE_LIST_PAGE_SIZE_OPTIONS = ['10', '20', '50']; /** 模板分页尺寸选项。 */ export const MESSAGE_TEMPLATE_PAGE_SIZE_OPTIONS = ['12', '24', '48'];