django-vue-admin/backend/dvadmin/system/views/dept.py

67 lines
1.8 KiB
Python
Raw Normal View History

2022-04-05 05:22:26 +00:00
# -*- coding: utf-8 -*-
"""
@author: 猿小天
@contact: QQ:1638245306
@Created on: 2021/6/3 003 0:30
@Remark: 角色管理
"""
2022-04-15 09:07:59 +00:00
from rest_framework import serializers
2022-04-05 05:22:26 +00:00
from dvadmin.system.models import Dept
from dvadmin.utils.json_response import SuccessResponse
from dvadmin.utils.serializers import CustomModelSerializer
from dvadmin.utils.viewset import CustomModelViewSet
class DeptSerializer(CustomModelSerializer):
"""
部门-序列化器
"""
2022-04-15 09:07:59 +00:00
parent_name = serializers.CharField(read_only=True,source='parent.name')
2022-04-05 05:22:26 +00:00
class Meta:
model = Dept
fields = "__all__"
read_only_fields = ["id"]
class DeptCreateUpdateSerializer(CustomModelSerializer):
"""
部门管理 创建/更新时的列化器
"""
2022-04-07 12:31:18 +00:00
def create(self, validated_data):
instance = super().create(validated_data)
instance.dept_belong_id = instance.id
instance.save()
return instance
2022-04-05 05:22:26 +00:00
class Meta:
model = Dept
fields = '__all__'
class DeptViewSet(CustomModelViewSet):
"""
部门管理接口
list:查询
create:新增
update:修改
retrieve:单例
destroy:删除
"""
queryset = Dept.objects.all()
serializer_class = DeptSerializer
2022-04-07 12:31:18 +00:00
create_serializer_class = DeptCreateUpdateSerializer
update_serializer_class = DeptCreateUpdateSerializer
# extra_filter_backends = []
2022-04-05 05:22:26 +00:00
2022-04-15 09:07:59 +00:00
# def list(self, request, *args, **kwargs):
# queryset = self.filter_queryset(self.get_queryset())
# page = self.paginate_queryset(queryset)
# if page is not None:
# serializer = self.get_serializer(page, many=True, request=request)
# return self.get_paginated_response(serializer.data)
# serializer = self.get_serializer(queryset, many=True, request=request)
# return SuccessResponse(data=serializer.data, msg="获取成功")