chore(部门管理): 🚸 部门管理改为树形
This commit is contained in:
@@ -102,8 +102,15 @@ class DeptViewSet(CustomModelViewSet):
|
|||||||
|
|
||||||
def list(self, request, *args, **kwargs):
|
def list(self, request, *args, **kwargs):
|
||||||
# 如果懒加载,则只返回父级
|
# 如果懒加载,则只返回父级
|
||||||
|
request.query_params._mutable = True
|
||||||
params = request.query_params
|
params = request.query_params
|
||||||
parent = params.get('parent', None)
|
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 params:
|
||||||
if parent:
|
if parent:
|
||||||
queryset = self.queryset.filter(status=True, parent=parent)
|
queryset = self.queryset.filter(status=True, parent=parent)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ export function GetList(query: PageQuery) {
|
|||||||
return request({
|
return request({
|
||||||
url: apiPrefix,
|
url: apiPrefix,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
data: query,
|
params: query,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
export function GetObj(id: InfoReq) {
|
export function GetObj(id: InfoReq) {
|
||||||
|
|||||||
@@ -20,6 +20,18 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
|
|||||||
const addRequest = async ({ form }: AddReq) => {
|
const addRequest = async ({ form }: AddReq) => {
|
||||||
return await api.AddObj(form);
|
return await api.AddObj(form);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 懒加载
|
||||||
|
* @param row
|
||||||
|
* @returns {Promise<unknown>}
|
||||||
|
*/
|
||||||
|
const loadContentMethod = (tree: any, treeNode: any, resolve: any) => {
|
||||||
|
api.GetList({ parent: tree.id }).then((res: any) => {
|
||||||
|
resolve(res.data);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
crudOptions: {
|
crudOptions: {
|
||||||
request: {
|
request: {
|
||||||
@@ -28,21 +40,24 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp
|
|||||||
editRequest,
|
editRequest,
|
||||||
delRequest
|
delRequest
|
||||||
},
|
},
|
||||||
|
pagination: {
|
||||||
|
show: false,
|
||||||
|
},
|
||||||
|
table: {
|
||||||
|
rowKey: 'id',
|
||||||
|
lazy: true,
|
||||||
|
load: loadContentMethod,
|
||||||
|
treeProps: { children: 'children', hasChildren: 'hasChild' },
|
||||||
|
},
|
||||||
columns: {
|
columns: {
|
||||||
_index: {
|
_index: {
|
||||||
title: '序号',
|
title: '序号',
|
||||||
form: { show: false },
|
form: { show: false },
|
||||||
column: {
|
column: {
|
||||||
//type: 'index',
|
type: 'index',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '70px',
|
width: '70px',
|
||||||
columnSetDisabled: true, //禁止在列设置中选择
|
columnSetDisabled: true, //禁止在列设置中选择
|
||||||
formatter: (context) => {
|
|
||||||
//计算序号,你可以自定义计算规则,此处为翻页累加
|
|
||||||
let index = context.index ?? 1;
|
|
||||||
let pagination = crudExpose.crudBinding.value.pagination;
|
|
||||||
return ((pagination.currentPage ?? 1) - 1) * pagination.pageSize + index + 1;
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
search: {
|
search: {
|
||||||
|
|||||||
Reference in New Issue
Block a user