import Http from '../../utils/net/Http' import Urls from '../Urls' import { ElMessage } from 'element-plus' import { ref } from 'vue' const role = Urls.role /** * role,角色表 */ export interface Role { /** * 权限代码集合 */ codes?: string /** * 权限代码集合(中文) */ codes_cn?: string /** * 主键 */ id: number /** * 名字 */ name: string /** * 备注 */ remark: string /** * 状态 */ valid: number create_time?: Date | string update_time?: Date | string delete_time?: Date | string } export interface CodeTree { code: string cn: string children?: CodeTree[] } /** * 角色 * @returns 角色列表 */ export const list = async () => { const res = await Http.get(role.list) return res } /** * 异步组件初始化 * @returns vue ref role */ export const init = async () => { const roles = ref(null) const res = await list() roles.value = res.data return roles } /** * 创建角色 * @param param 创建参数 * @returns 创建后对象 */ export const create = async (param: object) => { const res = await Http.post(role.add, param) return res } /** * 更新角色 * @param param 更新对象 * @returns 更新后对象 */ export const update = async (param: any) => { const res = await Http.post(role.update, param) return res } /** * 删除 * @param id id * @returns res */ export const del = async (id: number[]) => { const res = await Http.post(role.del, { id }) return res } export const codes = async () => { const res = await Http.get(role.codes) return res }