120 lines
3.0 KiB
TypeScript
120 lines
3.0 KiB
TypeScript
import type { PageableList, PageableParams } from "@/shared/model";
|
|
|
|
export interface NtftalkTempSearchParams extends PageableParams {
|
|
templateCode?: string;
|
|
templateName?: string;
|
|
/** 백엔드 스펙 확정 시 전달 */
|
|
templateContent?: string;
|
|
inspectionStatus?: string;
|
|
senderKey?: string;
|
|
status?: string;
|
|
/** 백엔드 스펙 확정 시 전달 */
|
|
templateMessageType?: string;
|
|
}
|
|
|
|
export interface NtftalkBtnTemp {
|
|
templateCode: string;
|
|
name: string;
|
|
ordering: number;
|
|
linkType: string;
|
|
linkMo: string;
|
|
linkPc: string;
|
|
linkAnd: string;
|
|
linkIos: string;
|
|
}
|
|
|
|
export interface NtftalkQuickTemp {
|
|
templateCode: string;
|
|
name: string;
|
|
linkType: string;
|
|
linkMo: string;
|
|
linkPc: string;
|
|
linkAnd: string;
|
|
linkIos: string;
|
|
}
|
|
|
|
export interface NtftalkTemp {
|
|
templateCode: string;
|
|
senderKey: string;
|
|
senderKeyType: string;
|
|
templateName: string;
|
|
templateContent: string;
|
|
templateMessageType: string;
|
|
templateMessageTypeNm: string;
|
|
templateEmphasizeType: string;
|
|
templateEmphasizeTypeNm: string;
|
|
templateImageUrl: string;
|
|
inspectionStatus: string;
|
|
inspectionStatusNm: string;
|
|
status: string;
|
|
statusNm: string;
|
|
createdAt: string;
|
|
modifiedAt: string;
|
|
buttons?: NtftalkBtnTemp[];
|
|
quickReplies?: NtftalkQuickTemp[];
|
|
}
|
|
|
|
export interface NtftalkBtnTempSavePayload {
|
|
templateCode?: string;
|
|
name: string;
|
|
ordering: number;
|
|
linkType: string;
|
|
linkMo?: string;
|
|
linkPc?: string;
|
|
linkAnd?: string;
|
|
linkIos?: string;
|
|
}
|
|
|
|
export interface NtftalkQuickTempSavePayload {
|
|
templateCode?: string;
|
|
name: string;
|
|
linkType: string;
|
|
linkMo?: string;
|
|
linkPc?: string;
|
|
linkAnd?: string;
|
|
linkIos?: string;
|
|
}
|
|
|
|
export interface NtftalkTempSavePayload {
|
|
templateCode: string;
|
|
senderKey: string;
|
|
senderKeyType: string;
|
|
templateName: string;
|
|
templateContent: string;
|
|
templateMessageType: string;
|
|
templateEmphasizeType: string;
|
|
templateImageUrl?: string;
|
|
inspectionStatus?: string;
|
|
buttons?: NtftalkBtnTempSavePayload[];
|
|
quickReplies?: NtftalkQuickTempSavePayload[];
|
|
}
|
|
|
|
export interface NtftalkTempUpdatePayload {
|
|
templateName: string;
|
|
templateContent: string;
|
|
inspectionStatus?: string;
|
|
status?: string;
|
|
buttons?: NtftalkBtnTempSavePayload[];
|
|
quickReplies?: NtftalkQuickTempSavePayload[];
|
|
}
|
|
|
|
export interface NtftalkTempDeleteMultiPayload {
|
|
templateCodes: string[];
|
|
}
|
|
|
|
export type NtftalkTempPageList = PageableList<NtftalkTemp>;
|
|
|
|
export interface NtftalkTempService {
|
|
getNtftalkTempPage(
|
|
params: NtftalkTempSearchParams,
|
|
): Promise<NtftalkTempPageList>;
|
|
getNtftalkTemp(templateCode: string): Promise<NtftalkTemp>;
|
|
saveNtftalkTemp(payload: NtftalkTempSavePayload): Promise<NtftalkTemp>;
|
|
updateNtftalkTemp(
|
|
templateCode: string,
|
|
payload: NtftalkTempUpdatePayload,
|
|
): Promise<NtftalkTemp>;
|
|
deleteNtftalkTemp(templateCode: string): Promise<void>;
|
|
deleteMultiNtftalkTemp(payload: NtftalkTempDeleteMultiPayload): Promise<void>;
|
|
}
|