Exemplo n.º 1
0
def pu_add(ip, html, product_id="", product_name=""):
    try:
        session = get_session()
        current_month = datetime.datetime.now().strftime('%Y-%m-%d')+" 00:00:00"
        query = api.model_query(session, "Product_PU", {"ip": [ip], "html": [html], "visit_date": [current_month]})
        if query.count() == 0:
            data = {
                "ip": ip,
                "html": html,
                "product_id": product_id,
                "product_name": product_name,
                "pu_count": 1,
                "visit_date": current_month
            }
            data = api.convert_model("Product_PU", data)
            session.add(data)
        else:
            current_pu = query.first()
            current_pu.pu_count += 1
            #query.update({
            #    models.Product_PU.pu_count: current_pu.pu_count +1
            #})
        session.commit()
        return True
    except Exception as ex:
        gen_log.error("pu add error:%r" % ex)
        return False
    finally:
        session.close()
Exemplo n.º 2
0
def add_product(productinfo):
    try:
        name = productinfo.get("name", "")
        session = get_session()
        _ = verify_product(session, name)
        if _ != 0:
            return False
        sort_num = productinfo.get("sort_num", 10000)
        if sort_num <= 0:
            productinfo.update({"sort_num": 10000})
        if sort_num > 0 and sort_num < 10000:
            api.set_product_sort_num(session, sort_num)
        model_user = api.convert_model("Product", productinfo)
        session.add(model_user)
        session.commit()
        return True
    except Exception as ex:
        gen_log.error("add user error:%r" % ex)
        raise ex
    finally:
        session.close()
Exemplo n.º 3
0
def add_keyword(keywordinfo):
    try:
        name = keywordinfo.get("name", "")
        session = get_session()
        _ = verify_keyword(session, name)
        if _ != 0:
            return False
        sort_num = keywordinfo.get("sort_num", 10000)
        if sort_num == 0:
            keywordinfo.update({"sort_num": 10000})
        if sort_num > 0 and sort_num < 10000:
            api.set_keyword_sort_num(session, sort_num)

        model_keyword = api.convert_model("ProductKeyword", keywordinfo)
        session.add(model_keyword)
        session.commit()
        return True
    except Exception as ex:
        gen_log.error("add keyword error:%r" % ex)
        raise ex
    finally:
        session.close()
Exemplo n.º 4
0
def add_user(userinfo):
    """
    添加用户
    :param userinfo: 字典,key必须和models.User匹配
    :return:
    """
    try:
        email = userinfo.get("email", "")
        name = userinfo.get("name", "")
        telephone = userinfo.get("telephone", "")
        session = get_session()
        _ = verify_user(session, name, email, telephone)
        if _ != 0:
            return False
        model_user = api.convert_model("User", userinfo)
        session.add(model_user)
        session.commit()
        return True
    except Exception as ex:
        gen_log.error("add user error:%r" % ex)
        return False
    finally:
        session.close()
Exemplo n.º 5
0
def like_product(product_id, user_name):
    try:
        session = get_session()
        query = api.model_query(session, "User_Like", {"product_id": [product_id], "user_name": [user_name]})
        if query.count() > 0:
            gen_log.log("The user has already clicked.")
            return False
        query = api.model_query(session, "Product", {"id": [product_id]})
        if query.count() == 0:
            gen_log.log("Product id no exist.")
            return False
        data = {
            "user_name": user_name,
            "product_id": product_id
        }
        model_like = api.convert_model("User_Like", data)
        session.add(model_like)
        session.commit()
        return True
    except Exception as ex:
        gen_log.error("like product error:%r" % ex)
        return False
    finally:
        session.close()