Ejemplo n.º 1
0
def register_request(**kwargs):
    """
    账号注册
    :param kwargs: {"numbers": "18688982240", "password": "******", "password_md5": "c56d0e9a7ccec67b4ea131655038d604"}
    :return: (10200, "yes")/成功,(>10210, "errmsg")/失败
    """
    try:
        # 检查要创建的用户numbers
        numbers = kwargs.get("numbers", "")
        if not account_is_valid(numbers):
            g_log.warning("invalid account %s", numbers)
            return 10211, "invalid account"

        # TODO... 检查密码字符
        password = kwargs.get("password", "")
        password_md5 = kwargs.get("password_md5", "")

        # password_md5 = md5(md5(md5(password)))
        if 1 == check_md5(password, numbers, password_md5, 3):
            g_log.warning("password_md5 != md5(md5(md5(password)))")
            return 10212, "invalid password"

        value = {"numbers": numbers, "password": password, "password_md5": password_md5,
                 "deleted": 0, "time": datetime.now(), "update_time": datetime.now()}
        # 存入数据库
        collection = get_mongo_collection("account")
        if not collection:
            g_log.error("get collection account failed")
            return 10214, "get collection account failed"
        account = collection.find_one_and_update({"numbers": numbers}, {"$set": value})

        # 第一次更新,则插入一条
        if not account:
            g_log.debug("register new account")
            account = collection.insert_one(value)
        if not account:
            g_log.error("register account %s failed", numbers)
            return 10215, "register account failed"
        g_log.debug("register succeed")

        # 增加客户资料信息
        consumer_create(numbers=numbers)

        return 10200, "yes"
    except Exception as e:
        g_log.error("%s", e)
        return 10216, "exception"
Ejemplo n.º 2
0
def change_password_request(**kwargs):
    """
    重置密码
    :param kwargs: {"numbers": "18688982240", "password": "******", "password_md5": "c56d0e9a7ccec67b4ea131655038d604"}
    :return: (10300, "yes")/成功,(>10310, "errmsg")/失败
    """
    try:
        # 检查要创建的用户numbers
        numbers = kwargs.get("numbers", "")
        if not account_is_valid(numbers):
            g_log.warning("invalid account %s", numbers)
            return 10311, "invalid account"

        password = kwargs.get("password", "")
        password_md5 = kwargs.get("password_md5", "")

        # password_md5 = md5(md5(md5(password)))
        if 1 == check_md5(password, numbers, password_md5, 3):
            g_log.warning("password_md5 != md5(md5(md5(password)))")
            return 10312, "invalid password"

        value = {"numbers": numbers, "password": password, "password_md5": password_md5,
                 "deleted": 0, "update_time": datetime.now()}
        # 更新数据库
        collection = get_mongo_collection("account")
        if not collection:
            g_log.error("get collection account failed")
            return 10314, "get collection account failed"
        account = collection.find_one_and_update({"numbers": numbers}, {"$set": value})
        if not account:
            g_log.error("account %s change password failed", numbers)
            return 10315, "change password failed"
        g_log.debug("change password succeed")

        return 10300, "yes"
    except Exception as e:
        g_log.error("%s", e)
        return 10316, "exception"