imeeting/frontend/src/api/dict.ts

49 lines
1.7 KiB
TypeScript

import http from "./http";
import { SysDictType, SysDictItem } from "../types";
// Dictionary Type APIs
export async function fetchDictTypes(params?: { current?: number; size?: number; typeCode?: string; typeName?: string }) {
const resp = await http.get("/sys/api/dict-types", { params });
return resp.data.data;
}
export async function createDictType(data: Partial<SysDictType>) {
const resp = await http.post("/sys/api/dict-types", data);
return resp.data.data as boolean;
}
export async function updateDictType(id: number, data: Partial<SysDictType>) {
const resp = await http.put(`/sys/api/dict-types/${id}`, data);
return resp.data.data as boolean;
}
export async function deleteDictType(id: number) {
const resp = await http.delete(`/sys/api/dict-types/${id}`);
return resp.data.data as boolean;
}
// Dictionary Item APIs
export async function fetchDictItems(typeCode?: string) {
const resp = await http.get("/sys/api/dict-items", { params: { typeCode } });
return resp.data.data as SysDictItem[];
}
export async function createDictItem(data: Partial<SysDictItem>) {
const resp = await http.post("/sys/api/dict-items", data);
return resp.data.data as boolean;
}
export async function updateDictItem(id: number, data: Partial<SysDictItem>) {
const resp = await http.put(`/sys/api/dict-items/${id}`, data);
return resp.data.data as boolean;
}
export async function deleteDictItem(id: number) {
const resp = await http.delete(`/sys/api/dict-items/${id}`);
return resp.data.data as boolean;
}
export async function fetchDictItemsByTypeCode(typeCode: string) {
const resp = await http.get(`/sys/api/dict-items/type/${typeCode}`);
return resp.data.data as SysDictItem[];
}