Files
cody-crm/frontend/packages/lib-shared/models/system/message.ts
wangziqi 72e2110987
Some checks failed
Synchronize to Gitee / repo-sync (push) Has been cancelled
Typos Checking / Spell Check with Typos (push) Has been cancelled
chore: initial commit
2026-06-23 11:56:23 +08:00

121 lines
3.0 KiB
TypeScript

import type { TableQueryParams } from '../common';
import { SelectedUsersItem } from '@lib/shared/models/system/module';
export interface AnnouncementSaveParams {
id?: string;
subject: string; // 公告标题
content: string;
startTime: number;
endTime: number;
url: string; // 链接
organizationId: string;
deptIds: string[];
userIds: string[];
renameUrl: string;
range: [number, number] | undefined;
ownerIds: SelectedUsersItem[];
}
export interface AnnouncementTableQueryParams extends TableQueryParams {
organizationId: string;
}
export interface AnnouncementItemDetail {
id: string;
createUser: string;
updateUser: string;
createTime: number;
updateTime: number;
subject: string; // 公告标题
content: string; // 公告内容
startTime: number; // 公告开始时间
endTime: number; // 公告结束时间
url: string; // 公告链接
receiver: string; // 接收人
organizationId: string; // 组织ID
notice: boolean; // 是否为通知公告
receiveType: string; // 接收类型
contentText: string; // 公告文本内容
createUserName: string;
updateUserName: string;
renameUrl: string;
deptIdName: SelectedUsersItem[]; // 部门
userIdName: SelectedUsersItem[]; // 用户
}
export interface MessageTaskDetailDTOItem {
event: string;
eventName: string;
sysEnable: boolean;
emailEnable: boolean;
weComEnable: boolean;
dingTalkEnable: boolean;
larkEnable: boolean;
}
export interface MessageConfigItem extends MessageTaskDetailDTOItem {
id: string;
module: string; // 消息配置功能
moduleName: string; // 消息配置功能名称
messageTaskDetailDTOList: MessageTaskDetailDTOItem[];
}
export interface MessageSettingsConfig {
timeList: {
timeValue: number;
timeUnit: string;
}[];
userIds: string[];
roleIds: string[];
ownerEnable: boolean;
ownerLevel: number;
roleEnable: boolean;
userIdNames: { id: string; name: string }[];
roleIdNames: { id: string; name: string }[];
}
export interface SaveMessageConfigParams {
module: string;
event: string;
emailEnable?: boolean;
sysEnable?: boolean;
weComEnable?: boolean;
dingTalkEnable?: boolean;
larkEnable?: boolean;
config?:MessageSettingsConfig;
}
export interface MessageCenterItem {
id: string;
type: string; // 通知类型
receiver: string;
subject: string;
status: string;
operator: string;
operation: string;
organizationId: string;
resourceId: string;
resourceType: string; // 资源类型
resourceName: string; // 资源名称
content: string; // 通知内容
createUser: string;
updateUser: string;
createTime: number;
updateTime: number;
contentText: string;
}
export interface MessageCenterQueryParams extends TableQueryParams {
type: string;
status: string;
resourceType: string;
createTime: number | null;
endTime: number | null;
}
export type MessageCenterSubsetParams = Pick<
MessageCenterQueryParams,
'type' | 'status' | 'resourceType' | 'createTime' | 'endTime'
>;