Files
schoolNews/schoolNewsWeb/src/apis/system/dept.ts

133 lines
3.6 KiB
TypeScript
Raw Normal View History

2025-10-09 16:35:49 +08:00
/**
* @description API
* @author yslg
* @since 2025-10-06
*/
import { api } from '@/apis/index';
import type { SysDept, SysRole, DeptRoleVO, SysDeptRole } from '@/types';
/**
* API服务
*/
export const deptApi = {
/**
* @description
* @returns Promise<SysDept[]>
* @author yslg
* @ since 2025-10-06
*/
async getAllDepts(): Promise<SysDept[]> {
const response = await api.post<SysDept>('/depts/all');
return response.data.dataList!;
},
/**
* @description
* @param filter
* @returns Promise<SysDept[]>
* @author yslg
* @ since 2025-10-06
*/
async getDeptList(filter: SysDept): Promise<SysDept[]> {
const response = await api.post<SysDept>('/depts/list', filter);
return response.data.dataList!;
},
/**
* @description
* @param dept
* @returns Promise<SysDept>
* @author yslg
* @ since 2025-10-06
*/
async getDeptById(dept: SysDept): Promise<SysDept> {
const response = await api.post<SysDept>('/depts/id', dept);
return response.data.data!;
},
/**
* @description
* @param dept
* @returns Promise<SysDept>
* @author yslg
* @ since 2025-10-06
*/
async createDept(dept: SysDept): Promise<SysDept> {
const response = await api.post<SysDept>('/depts/dept', dept);
return response.data.data!;
},
/**
* @description
* @param dept
* @returns Promise<SysDept>
* @author yslg
* @ since 2025-10-06
*/
async updateDept(dept: SysDept): Promise<SysDept> {
const response = await api.put<SysDept>('/depts/dept', dept);
return response.data.data!;
},
/**
* @description
* @param dept
* @returns Promise<SysDept>
* @author yslg
* @ since 2025-10-06
*/
async deleteDept(dept: SysDept): Promise<SysDept> {
const response = await api.delete<SysDept>('/depts/dept', dept);
return response.data.data!;
},
/**
* @description
* @param dept
* @returns Promise<SysRole[]>
* @author yslg
* @ since 2025-10-06
*/
async getDeptByRole(dept: SysDept): Promise<SysRole[]> {
const response = await api.post<SysRole>('/depts/role', dept);
return response.data.dataList!;
},
/**
* @description
* @param dept
* @returns Promise<SysDeptRole[]>
* @author yslg
* @ since 2025-10-06
*/
async getDeptRoleList(dept: SysDeptRole): Promise<SysDeptRole[]> {
const response = await api.post<SysDeptRole>('/depts/role/list', dept);
return response.data.dataList!;
},
/**
* @description
* @param deptRole VO
* @returns Promise<SysDeptRole>
* @author yslg
* @ since 2025-10-06
*/
async bindDeptRole(deptRole: DeptRoleVO): Promise<SysDeptRole> {
const response = await api.post<SysDeptRole>('/depts/bind/role', deptRole);
return response.data.data!;
},
/**
* @description
* @param deptRole VO
* @returns Promise<SysDeptRole>
* @author yslg
* @ since 2025-10-06
*/
async unbindDeptRole(deptRole: DeptRoleVO): Promise<SysDeptRole> {
const response = await api.post<SysDeptRole>('/depts/unbind/role', deptRole);
return response.data.data!;
}
};