opl serializer 增加字段
This commit is contained in:
parent
348ef951c6
commit
2b4ae76eff
|
@ -173,6 +173,9 @@ class GasCheckSerializer(CustomModelSerializer):
|
||||||
|
|
||||||
class OplCreateUpdateSerializer(CustomModelSerializer):
|
class OplCreateUpdateSerializer(CustomModelSerializer):
|
||||||
id = serializers.CharField(read_only=True)
|
id = serializers.CharField(read_only=True)
|
||||||
|
cate_name = serializers.CharField(source='cate.name', read_only=True)
|
||||||
|
cate_code = serializers.CharField(source='cate.code', read_only=True)
|
||||||
|
operation_name = serializers.CharField(source='operation.name', read_only=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Opl
|
model = Opl
|
||||||
|
@ -205,6 +208,7 @@ class OplSerializer(CustomModelSerializer):
|
||||||
class OplListSerializer(CustomModelSerializer):
|
class OplListSerializer(CustomModelSerializer):
|
||||||
cate_name = serializers.CharField(source='cate.name', read_only=True)
|
cate_name = serializers.CharField(source='cate.name', read_only=True)
|
||||||
cate_code = serializers.CharField(source='cate.code', read_only=True)
|
cate_code = serializers.CharField(source='cate.code', read_only=True)
|
||||||
|
operation_name = serializers.CharField(source='operation.name', read_only=True)
|
||||||
cate_ = OplCateSimpleSerializer(source='cate', read_only=True)
|
cate_ = OplCateSimpleSerializer(source='cate', read_only=True)
|
||||||
dept_do_ = DeptSimpleSerializer(source='dept_do', read_only=True)
|
dept_do_ = DeptSimpleSerializer(source='dept_do', read_only=True)
|
||||||
charger_ = UserSimpleSerializer(source='charger', read_only=True)
|
charger_ = UserSimpleSerializer(source='charger', read_only=True)
|
||||||
|
@ -220,6 +224,7 @@ class OplListSerializer(CustomModelSerializer):
|
||||||
class OplDetailSerializer(CustomModelSerializer):
|
class OplDetailSerializer(CustomModelSerializer):
|
||||||
cate_name = serializers.CharField(source='cate.name', read_only=True)
|
cate_name = serializers.CharField(source='cate.name', read_only=True)
|
||||||
cate_code = serializers.CharField(source='cate.code', read_only=True)
|
cate_code = serializers.CharField(source='cate.code', read_only=True)
|
||||||
|
operation_name = serializers.CharField(source='operation.name', read_only=True)
|
||||||
operation_ = OperationDetailSerializer(source='operation', read_only=True)
|
operation_ = OperationDetailSerializer(source='operation', read_only=True)
|
||||||
dept_do_ = DeptSimpleSerializer(source='dept_do', read_only=True)
|
dept_do_ = DeptSimpleSerializer(source='dept_do', read_only=True)
|
||||||
charger_ = UserSimpleSerializer(source='charger', read_only=True)
|
charger_ = UserSimpleSerializer(source='charger', read_only=True)
|
||||||
|
|
|
@ -45,12 +45,22 @@ class OperationViewSet(CustomModelViewSet):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
if obj.state != Operation.OP_CREATE:
|
if obj.state != Operation.OP_CREATE:
|
||||||
raise ParseError('非创建状态不可修改')
|
raise ParseError('非创建状态不可修改')
|
||||||
|
user = request.user
|
||||||
|
if user == obj.create_by or user.is_superuser:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise ParseError('非创建人不可修改')
|
||||||
return super().update(request, *args, **kwargs)
|
return super().update(request, *args, **kwargs)
|
||||||
|
|
||||||
def destroy(self, request, *args, **kwargs):
|
def destroy(self, request, *args, **kwargs):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
if obj.state != Operation.OP_CREATE:
|
if obj.state != Operation.OP_CREATE:
|
||||||
raise ParseError('非创建状态不可删除')
|
raise ParseError('非创建状态不可删除')
|
||||||
|
user = request.user
|
||||||
|
if user == obj.create_by or user.is_superuser:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise ParseError('非创建人不可删除')
|
||||||
obj.delete()
|
obj.delete()
|
||||||
return Response(status=204)
|
return Response(status=204)
|
||||||
|
|
||||||
|
@ -68,12 +78,22 @@ class OplViewSet(CustomModelViewSet):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
if obj.ticket and obj.ticket.act_state != Ticket.TICKET_ACT_STATE_DRAFT:
|
if obj.ticket and obj.ticket.act_state != Ticket.TICKET_ACT_STATE_DRAFT:
|
||||||
raise ParseError('许可证已处理不可删除')
|
raise ParseError('许可证已处理不可删除')
|
||||||
|
user = request.user
|
||||||
|
if user == obj.create_by or user.is_superuser:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise ParseError('非创建人不可删除')
|
||||||
return super().destroy(request, *args, **kwargs)
|
return super().destroy(request, *args, **kwargs)
|
||||||
|
|
||||||
def update(self, request, *args, **kwargs):
|
def update(self, request, *args, **kwargs):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
if obj.ticket and obj.ticket.act_state != Ticket.TICKET_ACT_STATE_DRAFT:
|
if obj.ticket and obj.ticket.act_state != Ticket.TICKET_ACT_STATE_DRAFT:
|
||||||
raise ParseError('许可证已处理不可编辑')
|
raise ParseError('许可证已处理不可编辑')
|
||||||
|
user = request.user
|
||||||
|
if user == obj.create_by or user.is_superuser:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise ParseError('非创建人不可编辑')
|
||||||
return super().update(request, *args, **kwargs)
|
return super().update(request, *args, **kwargs)
|
||||||
|
|
||||||
@action(methods=['post'], detail=True, perms_map={'post': '*'},
|
@action(methods=['post'], detail=True, perms_map={'post': '*'},
|
||||||
|
|
Loading…
Reference in New Issue