import { GET, POST, PUT, DELETE } from "./http";
import type { VqdTimeTemplateBaseRes, VqdTimeTemplateRes, CreateVqdTimeTemplateReq, UpdateVqdTimeTemplateReq, VqdTimeTemplateDetailRes, VqdTimeTemplateReq } from "../types/vqdtimetemplate";

/**
 * 获取列表
 * @returns 列表
 */
export async function GetVqdTimeTemplate(data: VqdTimeTemplateReq) {
  return await GET<VqdTimeTemplateRes>(`/plan`, data);
}

/**
 * 创建
 * @param data 创建参数
 */
export async function CreateVqdTimeTemplate(data: CreateVqdTimeTemplateReq) {
  return await POST<VqdTimeTemplateBaseRes>(`/plan`, data);
}

/**
 * 获取详情
 * @param id ID
 */
export async function GetVqdTimeTemplateById(id: string) {
  return await GET<VqdTimeTemplateDetailRes>(`/plan/${id}`);
}

/**
 * 更新
 * @param data 更新参数（需包含 id）
 */
export async function UpdateVqdTimeTemplate(data: UpdateVqdTimeTemplateReq) {
  const { id, ...payload } = data;
  return await PUT<VqdTimeTemplateBaseRes>(`/plan/${id}`, payload);
}

/**
 * 删除
 * @param id ID
 */
export async function DeleteVqdTimeTemplate(id: number) {
  return await DELETE<VqdTimeTemplateBaseRes>(`/plan/${id}`);
}
