Beispiel #1
0
 def patch(self, request):
     form, error = JsonParser(
         Argument('old_password', required=False),
         Argument('new_password', required=False),
         Argument('nickname', required=False),
     ).parse(request.body, True)
     if error is None:
         if form.get('old_password') and form.get('new_password'):
             if len(form.new_password) < 6:
                 return json_response(error='请设置至少6位的新密码')
             if request.user.verify_password(form.old_password):
                 request.user.password_hash = User.make_password(
                     form.new_password)
                 request.user.token_expired = 0
                 request.user.save()
             else:
                 return json_response(error='原密码错误,请重新输入')
         if form.get('nickname'):
             request.user.nickname = form.nickname
             request.user.save()
     return json_response(error=error)
Beispiel #2
0
 def patch(self, request):
     form, error = JsonParser(
         Argument('id', type=int, help='请指定操作对象'),
         Argument('username', required=False),
         Argument('password', required=False),
         Argument('nickname', required=False),
         Argument('role_id', required=False),
         Argument('is_active', type=bool, required=False),
     ).parse(request.body, True)
     if error is None:
         if form.get('password'):
             form.token_expired = 0
             form.password_hash = User.make_password(form.pop('password'))
         User.objects.filter(pk=form.pop('id')).update(**form)
     return json_response(error=error)
Beispiel #3
0
 def patch(self, request):
     form, error = JsonParser(
         Argument('id', type=int, help='请指定操作对象'),
         Argument('is_active', type=bool, required=False)
     ).parse(request.body, True)
     if error is None:
         Detection.objects.filter(pk=form.id).update(**form)
         if form.get('is_active') is not None:
             if form.is_active:
                 task = Detection.objects.filter(pk=form.id).first()
                 message = {'id': form.id, 'action': 'add'}
                 message.update(task.to_dict(selects=('addr', 'extra', 'rate', 'type')))
             else:
                 message = {'id': form.id, 'action': 'remove'}
             rds_cli = get_redis_connection()
             rds_cli.rpush(settings.MONITOR_KEY, json.dumps(message))
     return json_response(error=error)
Beispiel #4
0
 def patch(self, request):
     form, error = JsonParser(
         Argument('id', type=int, help='请指定操作对象'),
         Argument('is_active', type=bool, required=False)
     ).parse(request.body, True)
     if error is None:
         task = Task.objects.get(pk=form.id)
         if form.get('is_active') is not None:
             task.is_active = form.is_active
             task.latest_id = None
             if form.is_active:
                 message = {'id': form.id, 'action': 'add'}
                 message.update(task.to_dict(selects=('trigger', 'trigger_args', 'command', 'targets')))
             else:
                 message = {'id': form.id, 'action': 'remove'}
             rds_cli = get_redis_connection()
             rds_cli.lpush(settings.SCHEDULE_KEY, json.dumps(message))
         task.save()
     return json_response(error=error)
Beispiel #5
0
 def patch(self, request):
     form, error = JsonParser(
         Argument('id', type=int, help='请指定操作对象'),
         Argument('username', required=False),
         Argument('password', required=False),
         Argument('nickname', required=False),
         Argument('role_id', required=False),
         Argument('is_active', type=bool, required=False),
     ).parse(request.body, True)
     if error is None:
         if form.get('password'):
             form.token_expired = 0
             form.password_hash = User.make_password(form.pop('password'))
         if User.objects.filter(
                 username=form.username,
                 deleted_by_id__isnull=True).exclude(id=form.id).exists():
             return json_response(error=f'已存在登录名为【{form.username}】的用户')
         User.objects.filter(pk=form.pop('id')).update(**form)
     return json_response(error=error)