fix: 成员离厂有限制2
This commit is contained in:
parent
9d7739ae59
commit
1966dde2c0
|
@ -222,7 +222,7 @@ class RpjmemberCreateSerializer(CustomModelSerializer):
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
rpj = validated_data['rpj']
|
rpj = validated_data['rpj']
|
||||||
if rpj.state in [Rpj.RPJ_DONE, Rpj.RPJ_CLOSE]:
|
if rpj.state in [Rpj.RPJ_DONE, Rpj.RPJ_CLOSE]:
|
||||||
raise ParseError('成员该项目状态不可新增')
|
raise ParseError('该项目状态成员不可新增')
|
||||||
rcertificates = validated_data.pop('rcertificates')
|
rcertificates = validated_data.pop('rcertificates')
|
||||||
remployee = validated_data['remployee']
|
remployee = validated_data['remployee']
|
||||||
if remployee.phone and remployee.photo and remployee.id_number:
|
if remployee.phone and remployee.photo and remployee.id_number:
|
||||||
|
@ -268,7 +268,7 @@ class RpjmemberUpdateSerializer(CustomModelSerializer):
|
||||||
def update(self, instance, validated_data):
|
def update(self, instance, validated_data):
|
||||||
rpj = validated_data['rpj']
|
rpj = validated_data['rpj']
|
||||||
if rpj.state in [Rpj.RPJ_DONE, Rpj.RPJ_CLOSE]:
|
if rpj.state in [Rpj.RPJ_DONE, Rpj.RPJ_CLOSE]:
|
||||||
raise ParseError('成员该项目状态不可修改')
|
raise ParseError('该项目状态成员不可修改')
|
||||||
rcertificates = validated_data.pop('rcertificates')
|
rcertificates = validated_data.pop('rcertificates')
|
||||||
with transaction.atomic():
|
with transaction.atomic():
|
||||||
ins = super().update(instance, validated_data)
|
ins = super().update(instance, validated_data)
|
||||||
|
|
|
@ -205,7 +205,7 @@ class RpjViewSet(CustomModelViewSet):
|
||||||
if obj.state in [Rpj.RPJ_ENTER, Rpj.RPJ_DONE]:
|
if obj.state in [Rpj.RPJ_ENTER, Rpj.RPJ_DONE]:
|
||||||
raise ParseError('该项目不可删除')
|
raise ParseError('该项目不可删除')
|
||||||
elif obj.state == Rpj.RPJ_WORKING and Remployee.objects.filter(rpj=obj).exists():
|
elif obj.state == Rpj.RPJ_WORKING and Remployee.objects.filter(rpj=obj).exists():
|
||||||
raise ParseError('该项目人员在厂不可删除')
|
raise ParseError('该项目下有成员在厂不可删除')
|
||||||
if obj.ticket:
|
if obj.ticket:
|
||||||
obj.ticket.delete()
|
obj.ticket.delete()
|
||||||
obj.delete()
|
obj.delete()
|
||||||
|
@ -237,8 +237,8 @@ class RpjmemberViewSet(CustomModelViewSet):
|
||||||
"""
|
"""
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
rpj = obj.rpj
|
rpj = obj.rpj
|
||||||
if rpj.state != Rpj.RPJ_WORKING:
|
if rpj.state != [Rpj.RPJ_WORKING, Rpj.RPJ_ENTER]:
|
||||||
raise ParseError('成员非进行状态不可离厂')
|
raise ParseError('该项目状态成员不可离厂')
|
||||||
obj.note = '提前离厂'
|
obj.note = '提前离厂'
|
||||||
obj.save()
|
obj.save()
|
||||||
rpj_member_leave(obj)
|
rpj_member_leave(obj)
|
||||||
|
|
Loading…
Reference in New Issue