Ejemplo n.º 1
0
def valid_fech(value):
    from apps.user.models import User
    fec_val = datetime.strptime(str(value), "%Y-%m-%d")
    fec_may = datetime.strptime(User().my_age(), "%Y-%m-%d")
    fec_err = datetime.strptime(User().my_age(edad=False), "%Y-%m-%d")

    if fec_val > fec_may:
        raise ValidationError(_('18+'))

    if fec_val < fec_err:
        raise ValidationError(_('99+'))
Ejemplo n.º 2
0
    def post(self, request):
        data = request.data
        user_type = ''
        return_data = dict()

        return_data['status'] = 'Success'

        dup_data = User.objects.all().filter(
            username=data['username']).values()
        if len(dup_data) > 0:
            return_data['status'] = 'Failure'
            return_data['message'] = 'username already exists'

        # dup_data = User.objects.all().filter(email = data['email']).values()
        # if len(dup_data) > 0:
        #     return_data['status'] = 'Failure'
        #     return_data['message'] = 'email already exists'

        user_type = data['user_type']

        try:
            if return_data['status'] == 'Success':
                if user_type == 'Farmer':
                    register = User(username=data['username'],
                                    password=hashlib.sha256(
                                        data['username'].encode()).hexdigest(),
                                    firstname=data['first_name'],
                                    lastname=data['last_name'],
                                    email=data['email'],
                                    user_type=User.Farmer,
                                    facebook_account=True,
                                    verify=True)
                elif user_type == 'Factory':
                    register = User(username=data['username'],
                                    password=hashlib.sha256(
                                        data['username'].encode()).hexdigest(),
                                    firstname=data['first_name'],
                                    lastname=data['last_name'],
                                    factory_name=data['first_name'] + " " +
                                    data['last_name'],
                                    email=data['email'],
                                    user_type=User.Factory,
                                    verify=True,
                                    facebook_account=True)
                register.save()
                return_data['data'] = User.objects.filter(
                    username=data['username'],
                    facebook_account=True).values()[0]
        except Exception as e:
            return_data['status'] = 'Failure'
            return_data['message'] = str(e)

        return Response(return_data)
Ejemplo n.º 3
0
def init_database():
    app.db.create_all()

    user1 = User("bob3", "bob", "dylan", "emprendedor", "123")
    user2 = User("bob4", "bob", "esponja", "cocinero", "123")

    app.db.session.add(user1)
    app.db.session.add(user2)

    app.db.session.commit()

    yield app.db

    app.db.drop_all()
Ejemplo n.º 4
0
def init_database():
    app.db.create_all()

    user1 = User("bob3", "bob", "dylan", "Scrum Team", "123")
    user2 = User("bob4", "bob", "esponja", "Product Owner", "123")
    user2 = User("bob5", "bob", "esponja", "Product Owner", "123")

    app.db.session.add(user1)
    app.db.session.add(user2)

    app.db.session.commit()

    yield app.db

    app.db.drop_all()
Ejemplo n.º 5
0
    def post(self, request, *args, **kwargs):
        email_address = request.data["email"]
        username = email_address.split("@")
        code = code_generator()

        try:
            new_user = User(email=email_address,
                            username=username[0],
                            is_active=False)
            new_user.save()
            registration_profile = RegistrationProfile(user=new_user,
                                                       code=code)
            registration_profile.save()
        except IntegrityError:
            return Response(
                f"The email address '{email_address}' is already taken.")

        # TODO uncomment for production
        # send_mail(
        #     'Motion Registration Code',
        #     f"Here is your registration code {registration_profile.code}",
        #     '*****@*****.**',
        #     [new_user.email],
        #     fail_silently=False,
        # )
        serializer = self.get_serializer(new_user)
        return Response(serializer.data)
Ejemplo n.º 6
0
    def post(self, request, *args, **kwargs):
        email_address = request.data["email"]
        username = email_address.split("@")
        code = code_generator()

        try:
            new_user = User(email=email_address,
                            username=username[0],
                            is_active=False)
            new_user.save()
            registration_profile = RegistrationProfile(user=new_user,
                                                       code=code)
            registration_profile.save()
        except IntegrityError:
            return Response(
                f"The email address '{email_address}' is already taken.")

        send_mail(
            'Fresh Garden Registration Code',
            f"Here is your registration code {registration_profile.code}",
            '*****@*****.**',
            [new_user.email],
            fail_silently=False,
        )
        serializer = self.get_serializer(new_user)
        return Response(serializer.data)
Ejemplo n.º 7
0
def register(req):

    if req.method == "GET":
        return render(req, 'register.html')
    elif req.method == 'POST':
        username = req.POST.get('username')
        password = req.POST.get('password')
        confirm_password = req.POST.get('confirm_password')
        email = req.POST.get('email')
        phone = req.POST.get('phone')
        if password and username and email and password == confirm_password:
            users = User.objects.filter(username=username)
            if users:
                return render(req, 'register.html', {'msg': "账号存在"})
            else:
                user = User(username=username,
                            password=password,
                            email=email,
                            phone=phone)
                user.save()
                return render(req, 'register.html')
        else:
            return render(req, 'register.html', {'msg': "参数不正确"})
    else:
        return render(req, 'register.html', {'msg': "不支持该方式传送"})
Ejemplo n.º 8
0
    def post(self, request, *args, **kwargs):
        email_data = self.request.data
        email_address = email_data.__getitem__("email")
        length = 5
        numbers = '0123456789'
        validation_code = ''.join(
            random.choice(numbers) for _ in range(length))
        subject = 'Welcome to Luna'
        message = 'Here is your validation code ' + validation_code
        recipient = email_address
        send_mail(subject,
                  message,
                  EMAIL_HOST_USER, [recipient],
                  fail_silently=False)

        try:
            new_user = User(email=email_address,
                            username=email_address,
                            is_active=False)
            new_user.save()
            registration_profile = RegistrationProfile(user=new_user,
                                                       code=validation_code)
            registration_profile.save()
            return Response(status=status.HTTP_200_OK)
        except IntegrityError:
            return Response(data="This email is already taken.", status=400)
Ejemplo n.º 9
0
    def add_user(self, validated_data):
        result = dict()
        print(validated_data)
        # 新增用户
        try:
            new_user = User(
                user_guid=validated_data['user_guid'],
                user_name=validated_data['user_name'],
                real_name=validated_data['real_name'],
                mobile=validated_data['mobile'],
                balance=validated_data['balance'],
                available_balance=validated_data['available_balance'])
            new_user.save()

        except Exception as ex:
            print('--------------------')
            print(ex)
            print('--------------------')
            result["error_code"] = ErrorCode.用户不存在.value
            result["error"] = ''
            return result

        result["error_code"] = ErrorCode.正确.value
        result["error"] = ""
        return result
Ejemplo n.º 10
0
 def post(self, req, **kwargs):
     data = UserSerializer(data=req.data)
     if data.is_valid():
         User(**data.data).save()
         return HttpResponseRedirect('/user/signup/')
     else:
         return Response({'res':'Не пройдена валидация'})
Ejemplo n.º 11
0
    def test_email_case_insensivity(self):
        u1 = User(
            email='*****@*****.**',
            password='******',
        )
        u1.save()

        with self.assertRaises(ValidationError) as context:
            u2 = User(
                email='*****@*****.**',
                password='******',
            )
            u2.full_clean()

        self.assertEqual(str(context.exception.message_dict['__all__'][0]),
                         'Email not unique')
Ejemplo n.º 12
0
    def signup_user(self, validated_data):
        oid = validated_data['oid']
        oid = oid.lower()
        username = validated_data['username']
        access_token = validated_data['access_token']
        try:
            phone = get_phone(access_token)
        except Exception as e:
            raise ValidationError(detail='Invalid phone token!')

        if check_oid_exists(oid):
            raise PermissionDenied(detail='Organization exists!')
        if check_username_exists(oid=oid, username=username):
            raise PermissionDenied(detail='Username exists!')

        org = Organization.objects.create(oid=oid)
        usage = Usage(org=org, exp_date=trial_cycle())
        usage.save()
        subscription = Subscription(org=org,
                                    current_usage=usage,
                                    _is_trial=True)
        subscription.save()

        user = User(
            username=create_username(oid=oid, username=username),
            phone=phone,
            is_active=True,
            role=ROLE_DICT['Organizer'],
            org=org,
        )
        user.set_unusable_password()
        user.save()
        userstate = UserState.objects.create(user=user)
        jwt_token = jwt_encode_handler(jwt_payload_handler(user))
        return user, jwt_token
Ejemplo n.º 13
0
def register(req):
    """
    注册
    """
    print("############")
    is_verified = req.session.get("verified")
    if req.method == 'POST' and is_verified:
        urf = UserRegisterForm(req.POST)
        if urf.is_valid():
            try:
                user = User(
                    username=urf.cleaned_data['username'],
                    first_name=urf.cleaned_data['first_name'],
                    last_name=urf.cleaned_data['last_name'],
                    email=urf.cleaned_data['email'],
                    phone=urf.cleaned_data['phone'],
                    mac=urf.cleaned_data['mac'],
                    is_teacher=urf.cleaned_data['is_teacher'],
                )
                user.set_password(urf.cleaned_data['password'])
                user.save()
                return HttpResponse("User {0} Register success".format(
                    user.username))
            except IntegrityError as e:
                return HttpResponse("IntegrityError error: {0}".format(e))
        else:
            # TODO
            return HttpResponse(str(urf.cleaned_data))
    return HttpResponse(status=403)
Ejemplo n.º 14
0
 def post(self):
     try:
         args = request.get_json()
         name = args.get('data').get('name')
         password = args.get('data').get('password')
         repassword = args.get('data').get('repassword')
         phone = args.get('data').get('phone')
         email = args.get('data').get('email')
         get_phone = User.query.filter(User.phone == phone).first()
         ret = re.match('1[3-9]\d{9}', phone)
         if ret:
             if password == repassword:
                 if not get_phone:
                     user = User(username=name,
                                 password=password,
                                 phone=ret.group(),
                                 email=email)
                     db.session.add(user)
                     db.session.commit()
                 else:
                     return jsonify({'msg': '手机号码已存在!'})
             else:
                 return jsonify({'msg': '两次密码输入不一致!'})
         else:
             return jsonify({'code': 400, 'msg': '请输入合法的手机号码!'})
     except Exception as e:
         return jsonify({'code': 404, 'msg': '操作失败!'})
     return jsonify({'code': 200, 'msg': '操作成功!'})
Ejemplo n.º 15
0
def read_xls(self, request, obj, change):
    print(obj.file)
    df = pandas.read_excel(obj.file)
    print(df)
    # df.drop([0],inplace=True)
    # df.columns = ['username','sex','age']
    for i in range(0, len(df['学工号'])):
        username = df.iloc[i, 0]
        email = df.iloc[i, 1]
        professor = df.iloc[i, 2]
        jidian = df.iloc[i, 3]
        password = 123456
        role_id = df.iloc[i, 4]
        #导入用户信息
        role = Role.objects.get(id=role_id)
        user = User()
        user.username = username
        user.role = role
        user.professor = professor
        user.email = email
        user.set_password(password)
        user.is_active = 1
        user.save()
        #导入绩点信息
        rate_jidians = Work_rate_jidian.objects.get(pro_name=professor)
        id = User.objects.get(username=username).id
        Work_count.objects.create(usernum=id,
                                  count_jidians=jidian,
                                  rate_jidians=rate_jidians)
    return 'success'
Ejemplo n.º 16
0
def register2():
    if request.method == 'POST':
        email = request.form.get('email')
        username = request.form.get('username')
        password = request.form.get('password')
        re_password = request.form.get('password2')
        if password == re_password and len(password) >= 8:
            i = 6
            b = []
            while i >= 1:
                a = random.randint(0, 9)
                i -= 1

                b.append(str(a))
            print(b)
            ve_num = ''.join(b)
            en_num = generate_password_hash(ve_num)
            senmail('verify', '*****@*****.**', 'verify', ve_num)
            ip = input('verify:')
            if check_password_hash(en_num, ip):
                user = User()
                user.email = email
                user.username = username
                # user.password = hashlib.sha256(password.encode('utf-8')).hexdigest()  # encrypted
                # 需要加密密碼
                user.set_password(password)
                db.session.add(user)
                db.session.commit()
                return 'content'
            else:
                print('code is wrong')
        else:
            pass
            return 'fail'
Ejemplo n.º 17
0
def add_user():
    if request.method == 'GET':
        return render_template('add_user.html')
    elif request.method == 'POST':
        username = request.form.get('username')
        phone = request.form.get('phone')
        province = request.form.get('province')
        city = request.form.get('city')
        detail = request.form.get('detail')
        is_continue = request.form.get('continue')
        if username:
            user_ = User(username=username)
            db.session.add(user_)
            if None not in (phone, province, city, detail):
                db.session.add(
                    Address(uid=user_.uid,
                            phone=phone,
                            province=province,
                            city=city,
                            detail=detail))
                if is_continue:
                    return render_template('add_user.html')
                else:
                    return redirect(url_for('.index', page=1, size=3))
            else:
                return render_template('add_user.html', msg='所有选线为必填项,请补全!')
        else:
            return render_template('add_user.html', msg='昵称不能为空!')
Ejemplo n.º 18
0
def cliente_add(request):
    data = {}
    f = UserForm_cliente(request.POST)
    datos = request.POST
    if f.is_valid():
        with transaction.atomic():
            if verificar(f.data['cedula']):
                use = User()
                use.username = datos['cedula']
                use.cedula = datos['cedula']
                use.first_name = datos['first_name']
                use.last_name = datos['last_name']
                use.sexo = datos['sexo']
                use.email = datos['email']
                use.telefono = datos['telefono']
                use.celular = datos['celular']
                use.direccion = datos['direccion']
                use.tipo = 0
                use.password = make_password(datos['cedula'])
                use.save()
                permission = Permission.objects.get(codename='add_venta')
                permission2 = Permission.objects.get(codename='view_venta')
                use.user_permissions.add(permission)
                use.user_permissions.add(permission2)
                # venta.add_venta

                # u.user_permissions.add(permission)
                data['resp'] = 'error'
            else:
                f.add_error("cedula",
                            "Numero de Cedula no valido para Ecuador")
                data['error'] = f.errors
    else:
        data['error'] = f.errors
    return HttpResponse(json.dumps(data), content_type="application/json")
Ejemplo n.º 19
0
def register(request):
    r = json.loads(request.body)
    account = r['account']
    password = r['password']
    code = r['code']
    if judge_type(account) is None:
        return JsonResponse({'success': False, 'msg': "账号格式有误!"})
    # 从redis缓存中读取缓存信息 account唯一
    check_code = cache.get(account)
    print(check_code)
    # 验证验证码是否正确
    if check_code == code:
        # 新加用户
        user = User()
        user.username = '******' + shuffle_str(True)[0:6]
        # 判断账号类型
        if judge_type(account) == 'phone':
            user.phone = account
        else:
            user.email = account
        # 密码加密
        user.password = encrypt(password)
        print(user.password)
        # 保存
        user.save()
        return JsonResponse({'success': True, 'msg': "注册成功!"})
    else:
        return JsonResponse({'success': False, 'msg': "验证码错误!"})
Ejemplo n.º 20
0
 def post(self, request):
     form = RegisterForm(request.POST)
     if form.is_valid():
         username = form.cleaned_data.get('username', '')
         email = form.cleaned_data.get('email', '')
         password = form.cleaned_data.get('password', '')
         users = User()
         users.username = username
         users.password = make_password(password)
         users.email = email
         users.is_active = False
         users.save()
         token = token_confirm.generate_validate_token(username)
         # message = "\n".join([u'{0},欢迎加入我的博客'.format(username), u'请访问该链接,完成用户验证,该链接1个小时内有效',
         #                      '/'.join([settings.DOMAIN, 'activate', token])])
         #send_mail(u'注册用户验证信息', message, settings.EMAIL_HOST_USER, [email], fail_silently=False)
         send_register_email.delay(email=email,
                                   username=username,
                                   token=token,
                                   send_type="register")
         return JsonResponse({
             'valid': True,
             'status': 200,
             'message': u"请登录到注册邮箱中验证用户,有效期为1个小时"
         })
     return JsonResponse({
         'status': 400,
         'data': form.errors,
         'valid': False
     })
Ejemplo n.º 21
0
 def save_data(self, f, datos):
     data = {}
     if f.is_valid():
         use = User()
         use.username = datos['cedula']
         use.cedula = datos['cedula']
         use.first_name = datos['first_name']
         use.last_name = datos['last_name']
         use.sexo = datos['sexo']
         use.email = datos['email']
         use.telefono = datos['telefono']
         use.celular = datos['celular']
         use.direccion = datos['direccion']
         use.tipo = 0
         use.password = make_password(datos['cedula'])
         use.save()
         data['resp'] = True
         data['cliente'] = use.toJSON()
         grupo = Group.objects.get(name__icontains='cliente')
         usersave = User.objects.get(id=use.id)
         usersave.groups.add(grupo)
         usersave.save()
     else:
         data['error'] = f.errors
     return data
Ejemplo n.º 22
0
def register():
    resp = {'result': 'success', 'status': 200, 'msg': 'success'}
    data = json.loads(request.data)
    email = data['email'] if 'email' in data else ''
    password = data['password'] if 'password' in data else ''
    checkcode = data['checkcode'] if 'checkcode' in data else ''

    if checkcode.upper() != session['valicode'].upper():
        resp['result'] = 'failed'
        resp['msg'] = "验证码不正确"
        resp['status'] = 401
        return jsonify(resp)

    user = User.query.filter_by(email=email).first()
    if user:
        resp['result'] = 'failed'
        resp['msg'] = "邮箱已注册"
        resp['status'] = 401
        return jsonify(resp)

    new_user = User()
    new_user.email = email
    new_user.password_hash = generate_password_hash(password)
    db.session.add(new_user)
    db.session.commit()

    login_user(new_user, True)

    return jsonify(resp)
Ejemplo n.º 23
0
def bindingQQ(request):
    """
    QQ 注册账号
    :param request:
    :return:
    """
    if request.method == 'POST':
        openid = request.POST.get('openid')
        figureurl_qq_1 = request.POST.get('figureurl_qq_1')
        nickname = request.POST.get('nickname')
        password = request.POST.get('password')
        password1 = request.POST.get('password1')
        email = request.POST.get('email')
        if password != password1:
            return render(
                request, 'pc/qqregister.html', {
                    'openid': openid,
                    'figureurl_qq_1': figureurl_qq_1,
                    'nickname': nickname,
                    'error': '两次密码不一致'
                })
        else:
            User.objects.filter(email=email).exists()
            if User.objects.filter(email=email).exists():
                return render(
                    request, 'pc/qqregister.html', {
                        'openid': openid,
                        'figureurl_qq_1': figureurl_qq_1,
                        'nickname': nickname,
                        'error': '邮箱已存在'
                    })
            else:
                user = User()
                user.username = nickname
                user.email = email
                user.user_image = figureurl_qq_1
                user.is_staff = False
                user.is_superuser = False
                user.is_active = True
                user.password = make_password(password1)
                user.save()
                qq = OAuthQQ()
                user_id = get_object_or_404(User, email=email).id
                qq.user_id = user_id
                msg = UserMessage()
                msg.user_id = user_id
                msg.to_user = User.objects.get(is_superuser=True)
                msg.message = '欢迎加入本站,在使用过程中有什么疑问,请联系管理员,Email: <a target="_blank" href="http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=iuzv5O3g4_T748rs7_Tt4OPk__Ok6eXn" style="text-decoration:none;">[email protected]</a>'
                msg.has_read = False
                msg.is_supper = True
                msg.save()
                qq.qq_openid = openid
                qq.nickname = nickname
                qq.figureurl_qq = figureurl_qq_1
                qq.save()
                user = authenticate(request, username=email, password=password)
                login(request, user)
                return HttpResponseRedirect(reverse('home'))
Ejemplo n.º 24
0
def register(request):
    """
    注册
    :param request:
    :return:
    """
    if request.session.get('is_login', False):
        redirect('/lianjia/')
    if request.method == 'POST':
        message = '请检查填写的内容!'

        # 通过表单验证提交的数据是否合规
        # registerForm = RegisterForm(request.POST)
        # if registerForm.is_valid():
        #     pass
        username = request.POST.get('username', '')
        nickname = request.POST.get('nickname', '')
        password = request.POST.get('password', '')
        mobile = password
        guid = 'u' + datetime.now().strftime('%Y%m%d%H%M%S') + str(
            random.randrange(1000, 9999))

        try:
            print('-' * 10)
            new_user = User()
            new_user.user_guid = guid
            new_user.user_name = username
            new_user.real_name = nickname
            new_user.mobile = mobile
            new_user.balance = 100
            new_user.all_balance = 80
            new_user.available_balance = 50
            new_user.create_date = datetime.now(pytz.utc)
            new_user.last_login_date = datetime.now(pytz.utc)
            new_user.gender = 1
            new_user.province = '河南'
            new_user.save()

            request.session['is_login'] = True
            request.session['user_guid'] = new_user.user_guid
            request.session['user_name'] = new_user.user_name
            return redirect('/lianjia/')

        except Exception as ex:
            message = '注册失败!'

        return render(request, 'lianjia/login.html', {
            'title': '注册',
            'year': datetime.now().year,
            'message': message,
        })

    return render(request, 'lianjia/register.html', {
        'title': '注册',
        'year': datetime.now().year,
    })
Ejemplo n.º 25
0
def init_database():
    app.db.create_all()

    user1 = User("bob3", "bob", "dylan", "Scrum Team", "123")
    user2 = User("bob4", "bob", "esponja", "Product Owner", "123")

    project1 = Project("description1", 1, ProjectStatus.active)
    project2 = Project("description2", 1, ProjectStatus.active)

    app.db.session.add(user1)
    app.db.session.add(user2)
    app.db.session.add(project1)
    app.db.session.add(project2)

    app.db.session.commit()

    yield app.db

    app.db.drop_all()
Ejemplo n.º 26
0
def bindingQQ(request):
    """
    QQ 注册账号
    :param request:
    :return:
    """
    if request.method == 'POST':
        openid = request.POST.get('openid')
        figureurl_qq_1 = request.POST.get('figureurl_qq_1')
        nickname = request.POST.get('nickname')
        password = request.POST.get('password')
        password1 = request.POST.get('password1')
        email = request.POST.get('email')
        if password != password1:
            return render(
                request, 'pc/qqregister.html', {
                    'openid': openid,
                    'figureurl_qq_1': figureurl_qq_1,
                    'nickname': nickname,
                    'error': '两次密码不一致'
                })
        else:
            User.objects.filter(email=email).exists()
            if User.objects.filter(email=email).exists():
                return render(
                    request, 'pc/qqregister.html', {
                        'openid': openid,
                        'figureurl_qq_1': figureurl_qq_1,
                        'nickname': nickname,
                        'error': '邮箱已存在'
                    })
            else:
                user = User()
                user.username = nickname
                user.email = email
                user.user_image = figureurl_qq_1
                user.password = make_password(password1)
                user.save()
                qq = OAuthQQ()
                user_id = get_object_or_404(User, email=email).id
                qq.user_id = user_id
                msg = UserMessage()
                msg.user_id = user_id
                msg.to_user = User.objects.get(username='******')
                msg.message = '欢迎加入本站,在使用过程中有什么疑问,请联系管理员'
                msg.has_read = False
                msg.is_supper = True
                msg.save()
                qq.qq_openid = openid
                qq.nickname = nickname
                qq.figureurl_qq = figureurl_qq_1
                qq.save()
                user = authenticate(request, username=email, password=password)
                login(request, user)
                return HttpResponseRedirect(reverse('home'))
Ejemplo n.º 27
0
    def post(self, request):
        data = request.data
        user_type = ''
        return_data = dict()

        return_data['status'] = 'Success'

        dup_data = User.objects.all().filter(email=data['phone']).values()
        if len(dup_data) > 0:
            return_data['status'] = 'Failure'
            return_data['message'] = 'phone already exists'

        if 'factory_name' in data:
            user_type = 'Factory'
        else:
            user_type = 'Farmer'

        if return_data['status'] == 'Success':
            if user_type == 'Farmer':
                register = User(
                    username=data['phone'],
                    password=hashlib.sha256(
                        data['password'].encode()).hexdigest(),
                    firstname=data.get('first_name', ''),
                    lastname=data.get('last_name', ''),
                    email=data.get('email', ''),
                    phone=data['phone'],
                    user_type=User.Farmer,
                    verify=False,
                )
            elif user_type == 'Factory':
                register = User(username=data.get('phone', ''),
                                password=hashlib.sha256(
                                    data['password'].encode()).hexdigest(),
                                factory_name=data.get('factory_name', ''),
                                email=data.get('email', ''),
                                phone=data.get('phone', ''),
                                user_type=User.Factory,
                                verify=False)
            register.save()

        return Response(return_data)
Ejemplo n.º 28
0
def authentication(token: str) -> Union[User, object]:
    url = f'{settings.AUTH_HOST}/api/v1.0/system/users/decode-token'
    try:
        resp = requests.get(url=url, headers={'Authorization': token}, timeout=settings.REQUEST_TIMEOUT)
        if resp.status_code == 200:
            data = resp.json()
            return User(**data['data'])
        return
    except (requests.ReadTimeout, requests.Timeout) as err:
        logger.error(f'error response from auth. {err}')
        return
Ejemplo n.º 29
0
def register(request, useremail: str, username: str, password: str):
    email = useremail
    user = User.objects.get(email=email)
    if user is not None:
        return HttpResponse(json.dumps({"status": 201, "msg": "邮箱已被注册"}))
    user = User.objects.get(username=username)
    if user is not None:
        return HttpResponse(json.dumps({"status": 202, "msg": "用户名已存在"}))
    user = User(username=username, email=useremail, password=password)
    user.save()
    return HttpResponse(json.dumps({"status": 200, "msg": "注册成功"}))
Ejemplo n.º 30
0
def store_data_user(data):
    detail = UserDetail(
        fullname=data['fullname'],
        phone_number=data['phone_number'],
    )

    user = User(username=data['username'],
                email=data['email'],
                password=data['password'],
                user_detail=detail)
    # try:
    user.commit()
    return user