iot-gateway_fontend/src/api/menu.ts

46 lines
939 B
TypeScript
Raw Normal View History

import axios from 'axios';
export interface MenuRecord {
id?: number;
pid?: number;
name: string;
path?: string;
meta: {
locale: string;
title?: string;
icon?: string;
requiresAuth: boolean;
hideInMenu: boolean;
order: number;
permissions: string[];
showInMenu?: boolean;
menuOrder?: string;
};
children?: MenuRecord[] ;
};
export interface MenuCreateRecord extends MenuRecord{
type: string;
}
export const queryMenuList = (data: string) => {
return axios({
url: '/api/rest/menu/tree',
method: 'get',
params: {
name: data,
},
});
};
export const createMenu = (data: MenuCreateRecord) => {
return axios.post('/api/rest/menu', data);
};
export const updateMenu = (data: MenuCreateRecord) => {
return axios.patch(`/api/rest/menu/${data.id}`, data);
};
export const removeMenu = (id: string | number) => {
return axios.delete(`/api/rest/menu/${id}`);
};