初始化项目

This commit is contained in:
2025-11-20 09:10:35 +08:00
parent b60a4fe9f4
commit a96be99a54
254 changed files with 40718 additions and 0 deletions

53
src/api/items.ts Normal file
View File

@@ -0,0 +1,53 @@
// 查询列表
export function getItems(f: Function, query: Object) {
query = query || { pageSize: 10000 };
return f(query);
}
export function setItems(response: any, k: string, v: string):Array<ItemOptions> {
const data: Array<ItemOptions> = [];
k = k || 'id';
v = v || 'name';
if (response.data && response.data.list && response.data.list.length > 0) {
response.data.list.forEach((e: any) => {
data.push({
key: e[k].toString(),
value: e[v].toString(),
});
});
}
return data;
}
// 选项类型接口
export interface ItemOptions {
key:string,
value:string
}
/** 通过 options 数组获取 key 对应的 value */
export function getOptionValue(key: any, options: Array<any>,keyName:string,valName:string) {
keyName = keyName??'key'
valName = valName??'value'
const option = options.find((value) => {
return key + '' === value[keyName];
});
if (option !== undefined) {
return option[valName];
}
}
export function isEmpty(v: any) {
if (v === '' || v === undefined || v === null) {
return true;
}
if (typeof v === 'object') {
if (Array.isArray(v)) {
return v.length === 0;
} else {
return Object.keys(v).length === 0;
}
}
return false;
}

33
src/api/login/index.ts Normal file
View File

@@ -0,0 +1,33 @@
import request from '/@/utils/request';
/**
* 登录api接口集合
* @method signIn 用户登录
*/
export function login(params: object){
return request({
url: '/api/v1/system/login',
method: 'post',
data: params,
});
}
/**
* 获取验证码
*/
export function captcha(){
return request({
url:"/api/v1/pub/captcha/get",
method:"get"
})
}
/**
* 退出登录
*/
export function logout(){
return request({
url: '/api/v1/system/logout',
method: 'get',
});
}

26
src/api/menu/index.ts Normal file
View File

@@ -0,0 +1,26 @@
import request from '/@/utils/request';
/**
* 后端控制菜单模拟json路径在 https://gitee.com/lyt-top/vue-next-admin-images/tree/master/menu
* 后端控制路由isRequestRoutes 为 true则开启后端控制路由
* @method getMenuAdmin 获取后端动态路由菜单(admin)
* @method getMenuTest 获取后端动态路由菜单(test)
*/
export function useMenuApi() {
return {
getMenuAdmin: (params?: object) => {
return request({
url: '/gitee/lyt-top/vue-next-admin-images/raw/master/menu/adminMenu.json',
method: 'get',
params,
});
},
getMenuTest: (params?: object) => {
return request({
url: '/gitee/lyt-top/vue-next-admin-images/raw/master/menu/testMenu.json',
method: 'get',
params,
});
},
};
}

9
src/api/system/cache/index.ts vendored Normal file
View File

@@ -0,0 +1,9 @@
import request from '/@/utils/request';
// 清除缓存
export function removeCache() {
return request({
url: '/api/v1/system/cache/remove',
method: 'delete'
})
}

View File

@@ -0,0 +1,42 @@
import request from '/@/utils/request';
export function getConfigList(query:Object) {
return request({
url: '/api/v1/system/config/list',
method: 'get',
params:query
})
}
export function getConfig(id:number) {
return request({
url: '/api/v1/system/config/get',
method: 'get',
params:{id}
})
}
export function addConfig(data:any) {
return request({
url: '/api/v1/system/config/add',
method: 'post',
data:data
})
}
export function editConfig(data:any) {
return request({
url: '/api/v1/system/config/edit',
method: 'put',
data:data
})
}
export function deleteConfig(ids:number[]) {
return request({
url: '/api/v1/system/config/delete',
method: 'delete',
data:{ids}
})
}

View File

@@ -0,0 +1,36 @@
import request from '/@/utils/request';
export function getDeptList(query?:Object) {
return request({
url: '/api/v1/system/dept/list',
method: 'get',
params:query
})
}
export function addDept(data:object) {
return request({
url: '/api/v1/system/dept/add',
method: 'post',
data:data
})
}
export function editDept(data:object) {
return request({
url: '/api/v1/system/dept/edit',
method: 'put',
data:data
})
}
export function deleteDept(id:number) {
return request({
url: '/api/v1/system/dept/delete',
method: 'delete',
data:{id}
})
}

View File

@@ -0,0 +1,70 @@
import request from '/@/utils/request';
import {ref ,toRefs,ToRefs} from 'vue'
// 根据字典类型查询字典数据信息
export function getDicts(dictType :string,defaultValue?:string):Promise<any> {
let dv = defaultValue??''
let params ={
dictType:dictType,
defaultValue:dv
}
return request({
url: '/api/v1/system/dict/data/getDictData',
method: 'get',
params:params
})
}
/**
* 获取字典数据
*/
export function useDict(...args:string[]):ToRefs<any>{
const res:any = ref({});
args.forEach((d:string) => {
res.value[d] = [];
getDicts(d).then(resp => {
res.value[d] = resp.data.values.map((p:any) => ({ label: p.value, value: p.key, isDefault: p.isDefault }))
})
})
return toRefs(res.value);
}
export function getDataList(query:Object) {
return request({
url: '/api/v1/system/dict/data/list',
method: 'get',
params:query
})
}
export function getData(dictCode:number) {
return request({
url: '/api/v1/system/dict/data/get',
method: 'get',
params:{dictCode}
})
}
export function addData(data:any) {
return request({
url: '/api/v1/system/dict/data/add',
method: 'post',
data:data
})
}
export function editData(data:any) {
return request({
url: '/api/v1/system/dict/data/edit',
method: 'put',
data:data
})
}
export function deleteData(ids:number[]) {
return request({
url: '/api/v1/system/dict/data/delete',
method: 'delete',
data:{ids}
})
}

View File

@@ -0,0 +1,52 @@
import request from '/@/utils/request';
export function getTypeList(query:Object) {
return request({
url: '/api/v1/system/dict/type/list',
method: 'get',
params:query
})
}
export function getType(dictId:number) {
return request({
url: '/api/v1/system/dict/type/get',
method: 'get',
params:{dictId}
})
}
export function addType(data:any) {
return request({
url: '/api/v1/system/dict/type/add',
method: 'post',
data:data
})
}
export function editType(data:any) {
return request({
url: '/api/v1/system/dict/type/edit',
method: 'put',
data:data
})
}
export function deleteType(dictIds:number[]) {
return request({
url: '/api/v1/system/dict/type/delete',
method: 'delete',
data:{dictIds}
})
}
// 获取字典选择框列表
export function optionselect() {
return request({
url: '/api/v1/system/dict/type/optionSelect',
method: 'get'
})
}

View File

@@ -0,0 +1,57 @@
import request from '/@/utils/request';
export function getMenuList(query:Object) {
return request({
url: '/api/v1/system/menu/list',
method: 'get',
params:query
})
}
export function getUserMenus() {
return request({
url: '/api/v1/system/user/getUserMenus',
method: 'get'
})
}
export function getMenuParams() {
return request({
url: '/api/v1/system/menu/getParams',
method: 'get'
})
}
export function addMenu(data:Object) {
return request({
url: '/api/v1/system/menu/add',
method: 'post',
data:data
})
}
export function getMenuInfo(id:number) {
return request({
url: '/api/v1/system/menu/get',
method: 'get',
params:{id}
})
}
export function updateMenu(data:Object) {
return request({
url: '/api/v1/system/menu/update',
method: 'put',
data:data
})
}
// 删除菜单
export function delMenu(menuId:number) {
return request({
url: '/api/v1/system/menu/delete',
method: 'delete',
data:{ids:[menuId]}
})
}

View File

@@ -0,0 +1,28 @@
import request from '/@/utils/request';
export function logList(query:object) {
return request({
url: '/api/v1/system/loginLog/list',
method: 'get',
params:query
})
}
export function deleteLog(ids:number[]) {
return request({
url: '/api/v1/system/loginLog/delete',
method: 'delete',
params:{ids}
})
}
export function clearLog() {
return request({
url: '/api/v1/system/loginLog/clear',
method: 'delete',
})
}

View File

@@ -0,0 +1,37 @@
import request from '/@/utils/request'
// 查询操作日志列表
export function listSysOperLog(query:object) {
return request({
url: '/api/v1/system/operLog/list',
method: 'get',
params: query
})
}
// 查询操作日志详细
export function getSysOperLog(operId:number) {
return request({
url: '/api/v1/system/operLog/get',
method: 'get',
params: {
operId: operId.toString()
}
})
}
// 删除操作日志
export function delSysOperLog(operIds:number[]) {
return request({
url: '/api/v1/system/operLog/delete',
method: 'delete',
data:{
operIds:operIds
}
})
}
export function clearOperLog() {
return request({
url: '/api/v1/system/operLog/clear',
method: 'delete',
})
}

View File

@@ -0,0 +1,9 @@
import request from '/@/utils/request';
export function getSysInfo() {
return request({
url: '/api/v1/system/monitor/server',
method: 'get'
})
}

View File

@@ -0,0 +1,18 @@
import request from '/@/utils/request';
// 查询列表
export function listSysUserOnline(query:object) {
return request({
url: '/api/v1/system/online/list',
method: 'get',
params: query
})
}
export function forceLogout(ids:number[]) {
return request({
url: '/api/v1/system/online/forceLogout',
method: 'delete',
data: {ids}
})
}

View File

@@ -0,0 +1,28 @@
import request from '/@/utils/request';
export function getPersonalInfo() {
return request({
url: '/api/v1/system/personal/getPersonalInfo',
method: 'get',
})
}
export function editPersonal(data:object) {
return request({
url: '/api/v1/system/personal/edit',
method: 'put',
data:data
})
}
//重置個人密碼
export function resetPwdPersonal(data:object) {
return request({
url: '/api/v1/system/personal/resetPwd',
method: 'put',
data:data
})
}

View File

@@ -0,0 +1,35 @@
import request from '/@/utils/request';
export function getPostList(query:Object) {
return request({
url: '/api/v1/system/post/list',
method: 'get',
params:query
})
}
export function addPost(data:object) {
return request({
url: '/api/v1/system/post/add',
method: 'post',
data:data
})
}
export function editPost(data:object) {
return request({
url: '/api/v1/system/post/edit',
method: 'put',
data:data
})
}
export function deletePost(ids:number[]) {
return request({
url: '/api/v1/system/post/delete',
method: 'delete',
data:{ids}
})
}

View File

@@ -0,0 +1,70 @@
import request from '/@/utils/request';
export function getRoleList(query:Object) {
return request({
url: '/api/v1/system/role/list',
method: 'get',
params:query
})
}
export function getRoleParams() {
return request({
url: '/api/v1/system/role/getParams',
method: 'get'
})
}
export function addRole(data:object) {
return request({
url: '/api/v1/system/role/add',
method: 'post',
data:data
})
}
export function getRole(id:number) {
return request({
url: '/api/v1/system/role/get',
method: 'get',
params:{id}
})
}
export function editRole(data:object) {
return request({
url: '/api/v1/system/role/edit',
method: 'put',
data:data
})
}
export function deleteRole(id:number) {
return request({
url: '/api/v1/system/role/delete',
method: 'delete',
data:{ids:[id]}
})
}
export function dataScope(data:any) {
return request({
url: '/api/v1/system/role/dataScope',
method: 'put',
data:data
})
}
// 根据角色ID查询部门树结构
export function roleDeptTreeSelect(roleId:number) {
return request({
url: '/api/v1/system/role/deptTreeSelect',
method: 'get',
params:{roleId}
})
}

View File

@@ -0,0 +1,75 @@
import request from '/@/utils/request';
export function getUserList(query:Object) {
return request({
url: '/api/v1/system/user/list',
method: 'get',
params:query
})
}
export function getDeptTree() {
return request({
url: '/api/v1/system/dept/treeSelect',
method: 'get'
})
}
export function getParams() {
return request({
url: '/api/v1/system/user/params',
method: 'get'
})
}
export function getEditUser(id:number) {
return request({
url: '/api/v1/system/user/getEdit',
method: 'get',
params:{id}
})
}
export function addUser(data:object) {
return request({
url: '/api/v1/system/user/add',
method: 'post',
data:data
})
}
export function editUser(data:object) {
return request({
url: '/api/v1/system/user/edit',
method: 'put',
data:data
})
}
export function resetUserPwd(userId:number, password:string) {
return request({
url: '/api/v1/system/user/resetPwd',
method: 'put',
data:{userId,password}
})
}
export function changeUserStatus(userId:number, status:number) {
return request({
url: '/api/v1/system/user/setStatus',
method: 'put',
data:{userId,status}
})
}
export function deleteUser(ids:number[]) {
return request({
url: '/api/v1/system/user/delete',
method: 'delete',
data:{ids}
})
}