Example #1
0
    def post(self, request, *args, **kwargs):
        action = request.query_params.get('action')
        if action == 'register':
            staff_name = request.data.get('staff_name')
            password = request.data.get('password')
            email = request.data.get('email')
            department = request.data.get('department')
            dp = Department.objects.get(pk=department)
            is_leader = request.data.get('is_leader')
            staff = Staff()
            staff.staff_name = staff_name
            staff.password = password
            staff.email = email
            staff.department = dp
            if is_leader:
                staff.is_leader = is_leader
            staff.save()

            data = {
                'status': 200,
                'msg': 'create staff success',
                'staff': {
                    'id': staff.id,
                    'staff_name': staff.staff_name,
                    'email': staff.email,
                    'department': staff.department.dp_name,
                    'is_leader': staff.is_leader,
                    'is_delete': staff.is_delete
                }
            }
            return Response(data)
        elif action == 'login':
            return self.login(request, *args, **kwargs)
        else:
            raise ValidationError(detail='请提供正确的请求动作')