fix(菜单管理): 🐛 菜单管理
菜单管理搜索问题
This commit is contained in:
@@ -259,6 +259,9 @@ LOGGING = {
|
||||
# ================================================= #
|
||||
|
||||
REST_FRAMEWORK = {
|
||||
'DEFAULT_PARSER_CLASSES': (
|
||||
'rest_framework.parsers.JSONParser',
|
||||
),
|
||||
"DATETIME_FORMAT": "%Y-%m-%d %H:%M:%S", # 日期时间格式配置
|
||||
"DATE_FORMAT": "%Y-%m-%d",
|
||||
"DEFAULT_FILTER_BACKENDS": (
|
||||
|
||||
@@ -103,8 +103,15 @@ class MenuViewSet(CustomModelViewSet):
|
||||
|
||||
def list(self,request):
|
||||
"""懒加载"""
|
||||
request.query_params._mutable = True
|
||||
params = request.query_params
|
||||
parent = params.get('parent', None)
|
||||
page = params.get('page',None)
|
||||
limit = params.get('limit', None)
|
||||
if page:
|
||||
del params['page']
|
||||
if limit:
|
||||
del params['limit']
|
||||
if params:
|
||||
if parent:
|
||||
queryset = self.queryset.filter(status=1, parent=parent)
|
||||
|
||||
@@ -14,6 +14,7 @@ from dvadmin.system.models import Role, Menu, MenuButton, Dept
|
||||
from dvadmin.system.views.dept import DeptSerializer
|
||||
from dvadmin.system.views.menu import MenuSerializer
|
||||
from dvadmin.system.views.menu_button import MenuButtonSerializer
|
||||
from dvadmin.utils.crud_mixin import FastCrudMixin
|
||||
from dvadmin.utils.json_response import SuccessResponse, DetailResponse
|
||||
from dvadmin.utils.serializers import CustomModelSerializer
|
||||
from dvadmin.utils.validator import CustomUniqueValidator
|
||||
@@ -81,7 +82,7 @@ class MenuPermissonSerializer(CustomModelSerializer):
|
||||
fields = ['id', 'parent', 'name', 'menuPermission']
|
||||
|
||||
|
||||
class RoleViewSet(CustomModelViewSet):
|
||||
class RoleViewSet(CustomModelViewSet,FastCrudMixin):
|
||||
"""
|
||||
角色管理接口
|
||||
list:查询
|
||||
|
||||
@@ -42,7 +42,19 @@ export const DictionaryStore = defineStore('Dictionary', {
|
||||
dataList.forEach((item: any) => {
|
||||
let childrens = item.children;
|
||||
// console.log(item);
|
||||
this.data[item.value] = childrens;
|
||||
// this.data[item.value] = childrens;
|
||||
childrens.forEach((children:any, index:any) => {
|
||||
switch (children.type) {
|
||||
case 1:
|
||||
children.value = Number(children.value)
|
||||
break
|
||||
case 6:
|
||||
children.value = children.value === 'true'
|
||||
break
|
||||
}
|
||||
})
|
||||
console.log(childrens)
|
||||
this.data[item.value]=childrens
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
@@ -13,9 +13,17 @@ function createService() {
|
||||
// 创建一个 axios 实例
|
||||
const service = axios.create({
|
||||
timeout: 20000,
|
||||
headers: {
|
||||
'Content-Type': 'application/json;charset=utf-8'
|
||||
},
|
||||
paramsSerializer: {
|
||||
serialize(params) {
|
||||
return qs.stringify(params, { allowDots: true });
|
||||
return qs.stringify(params, { indices: false,encoder: (val:string) => {
|
||||
if (typeof val === 'boolean') {
|
||||
return val ? 1 : 0;
|
||||
}
|
||||
return val;
|
||||
} });
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
@@ -17,7 +17,6 @@ export const createCrudOptions = function ({ crudExpose, menuButtonRef }: { crud
|
||||
//验证路由地址
|
||||
const validateWebPath = (rule: string, value: string, callback: Function) => {
|
||||
const isLink = JSON.parse(crudExpose.getFormData().is_link);
|
||||
console.log(isLink);
|
||||
let pattern = /^\/.*?/;
|
||||
if (isLink) {
|
||||
pattern = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/g;
|
||||
@@ -33,7 +32,7 @@ export const createCrudOptions = function ({ crudExpose, menuButtonRef }: { crud
|
||||
};
|
||||
|
||||
const pageRequest = async (query: PageQuery) => {
|
||||
return await api.GetList({});
|
||||
return await api.GetList(query);
|
||||
};
|
||||
const editRequest = async ({ form, row }: EditReq) => {
|
||||
form.id = row.id;
|
||||
|
||||
Reference in New Issue
Block a user