Example #1
0
def get_activity_info(activity_id):
    dbsession = DBSession()
    try:
        actinfo = dbsession.query(FD_T_Activity.begin_time,
                                  FD_T_Activity.end_time,
                                  FD_T_Activity.act_content,
                                  FD_T_Activity.shop_id,
                                  FD_T_Shop.shop_name,
                                  FD_T_Shop.pic_url_list,
                                  FD_T_Activity.act_title).outerjoin(FD_T_Shop,
                                                                     FD_T_Shop.shop_id == FD_T_Activity.shop_id) \
            .filter(FD_T_Activity.act_id == activity_id).one()
        a = {
            'actID': activity_id,
            'err': 0,
            'bt': actinfo[0].strftime('%Y-%m-%d %H:%M:%S:%f'),
            'et': actinfo[1].strftime('%Y-%m-%d %H:%M:%S:%f'),
            'content': actinfo[2],
            'shopID': int(actinfo[3]),
            'shopName': actinfo[4],
            'shopPic': piclist_to_fulllist(actinfo[5]),
            'title': actinfo[6]
        }
    except:
        a = {'err': 1, 'des': sys.exc_info()[1]}
    return a
Example #2
0
def get_activity_info(activity_id):
    dbsession = DBSession()
    try:
        actinfo = dbsession.query(FD_T_Activity.begin_time,
                                  FD_T_Activity.end_time,
                                  FD_T_Activity.act_content,
                                  FD_T_Activity.shop_id,
                                  FD_T_Shop.shop_name,
                                  FD_T_Shop.pic_url_list,
                                  FD_T_Activity.act_title).outerjoin(FD_T_Shop,
                                                                     FD_T_Shop.shop_id == FD_T_Activity.shop_id) \
            .filter(FD_T_Activity.act_id == activity_id).one()
        a = {
            'actID': activity_id,
            'err': 0,
            'bt': actinfo[0].strftime('%Y-%m-%d %H:%M:%S:%f'),
            'et': actinfo[1].strftime('%Y-%m-%d %H:%M:%S:%f'),
            'content': actinfo[2],
            'shopID': int(actinfo[3]),
            'shopName': actinfo[4],
            'shopPic': piclist_to_fulllist(actinfo[5]),
            'title': actinfo[6]
        }
    except:
        a = {'err': 1, 'des': sys.exc_info()[1]}
    return a
Example #3
0
    def queryShopInfo(self, shop_id):
        conn = self._pool.connection()
        cursor = conn.cursor()

        try:
            sql = "select * from fd_t_shop t1 where shop_id = %s"
            paras = (shop_id,)

            row_count = cursor.execute(sql, paras)
            if row_count <= 0:
                user_log.error("Query shop info failed! No shop data. Shop id: %s", shop_id)
                return None

            row = cursor.fetchone()
            info = {}
            info["id"] = shop_id
            info["name"] = row["shop_name"]
            info["picList"] = piclist_to_fulllist(row["pic_url_list"])
            info["address"] = row["address"]
            info["long"] = row["longitude"]
            info["lat"] = row["latitude"]
            info["hours"] = row["business_hours"]
            info["phone"] = row["telephone_no"]
            info["intro"] = row["introduction"]
            return info

        except MySQLdb.Error, e:
            user_log.error("Query shop info failed! sql: %s, paras: %s, exception: %s", sql, paras, e)
            return None
Example #4
0
    def queryShopBriefInfo(self, shop_id_list):
        conn = self._pool.connection()
        cursor = conn.cursor()

        try:
            shop_list = []
            if not shop_id_list:
                return shop_list

            sql = "select shop_id, shop_name, pic_url_list, longitude, latitude from fd_t_shop where shop_id in (" + ','.join(
                map(str, shop_id_list)) + ")"

            row_count = cursor.execute(sql, None)
            if row_count <= 0:
                return shop_list

            rows = cursor.fetchall()
            for row in rows:
                shop = dict()
                shop["shop_id"] = row["shop_id"]
                shop["shop_name"] = row["shop_name"]
                shop["pic_url_list"] = piclist_to_fulllist(row["pic_url_list"])
                shop["longitude"] = row["longitude"]
                shop["latitude"] = row["latitude"]
                shop_list.append(shop)

            shop_list.sort(key=lambda _: shop_id_list.index(_['shop_id']))
            return shop_list
        except MySQLdb.Error, e:
            user_log.error("Query shop brief info failed! sql: %s, paras: %s, exception: %s", sql, None, e)
            return None
Example #5
0
def get_user_favorite_goods(user_id, offset, limit):
    dbsession = DBSession()
    goods = dbsession.query(FD_T_Favorite.goods_id, FD_T_Goods.description,
                            FD_T_Goods.price, FD_T_Goods.promotion_price,
                            FD_T_Goods.pic_url_list, FD_T_Goods.basic_info,
                            FD_T_Goods.status) \
        .join(FD_T_Goods, FD_T_Goods.goods_id == FD_T_Favorite.goods_id) \
        .filter(FD_T_Favorite.user_id == user_id).all()
    total_num = len(goods)
    return {
        'total_num': total_num,
        'goods': [{'id': i[0],
                   "desp": i[1],
                   "price": float(i[2]) if i[2] else None,
                   "promot": float(i[3]) if i[3] else None,
                   "picList": piclist_to_fulllist(i[4]),
                   "basic": i[5],
                   "status": i[6]
                   } for i in goods[offset: offset + limit]]}
Example #6
0
def query_favorite_goods_news(idlist):
    dbsession = DBSession()

    goods = dbsession.query(FD_T_Goods.goods_id,
                            FD_T_Goods.description,
                            FD_T_Goods.price, FD_T_Goods.promotion_price,
                            FD_T_Goods.pic_url_list, FD_T_Goods.basic_info,
                            FD_T_Goods.status) \
        .filter(FD_T_Goods.goods_id.in_(idlist)).all()

    return {
        'goods': [{'id': i[0],
                   "desp": i[1],
                   "price": float(i[2]) if i[2] else None,
                   "promot": float(i[3]) if i[3] else None,
                   "picList": piclist_to_fulllist(i[4]),
                   "basic": i[5],
                   "status": i[6]
                   } for i in goods]}
Example #7
0
    def queryGoodsDetail(self, goods_id, bar_code):
        conn = self._pool.connection()
        cursor = conn.cursor()

        try:
            if goods_id is not None:
                sql = "select * from fd_t_goods left join fd_t_goodsinfo on fd_t_goods.goods_id = fd_t_goodsinfo.goods_id where fd_t_goods.goods_id = %s"
                paras = (goods_id,)
            elif bar_code is not None:
                sql = "select * from fd_t_goods where bar_code = %s"
                paras = (bar_code,)
            else:
                user_log.error("Query goods detail failed! Goods is and barcode are none.")
                return None
            row_count = cursor.execute(sql, paras)
            if row_count <= 0:
                user_log.error("Query goods detail failed! No goods data. Goods id: %s", goods_id)
                return None

            row = cursor.fetchone()
            info = {}
            info["id"] = goods_id
            info["shop_id"] = row["shop_id"]
            info["desp"] = row["description"]
            info["price"] = row["price"]
            info["promot"] = row["promotion_price"]
            info["attention_count"] = row["attention_count"] if row["attention_count"] else 0
            pic_url_list_str = row["pic_url_list"]
            pic_url_list_prifix = piclist_to_fulllist(pic_url_list_str)
            # if pic_url_list_str:
            # pic_url_list = pic_url_list_str.split(",")
            # pic_url_list_prifix = map(lambda x:OSS_URL_PRIFIX+x, pic_url_list)
            info["picList"] = pic_url_list_prifix
            info["basic"] = row["basic_info"]
            info["detail"] = row["detail"]
            info["barcode"] = row["bar_code"]
            info["brandName"] = row["brand_name"]
            info["remark"] = row["remark"]
            return info
        except MySQLdb.Error, e:
            user_log.error("Query goods detail failed! sql: %s, paras: %s, exception: %s", sql, paras, e)
            return None
Example #8
0
def query_favorite_goods_news(idlist):
    dbsession = DBSession()

    goods = dbsession.query(FD_T_Goods.goods_id,
                            FD_T_Goods.description,
                            FD_T_Goods.price, FD_T_Goods.promotion_price,
                            FD_T_Goods.pic_url_list, FD_T_Goods.basic_info,
                            FD_T_Goods.status) \
        .filter(FD_T_Goods.goods_id.in_(idlist)).all()

    return {
        'goods': [{
            'id': i[0],
            "desp": i[1],
            "price": float(i[2]) if i[2] else None,
            "promot": float(i[3]) if i[3] else None,
            "picList": piclist_to_fulllist(i[4]),
            "basic": i[5],
            "status": i[6]
        } for i in goods]
    }
Example #9
0
def get_user_favorite_goods(user_id, offset, limit):
    dbsession = DBSession()
    goods = dbsession.query(FD_T_Favorite.goods_id, FD_T_Goods.description,
                            FD_T_Goods.price, FD_T_Goods.promotion_price,
                            FD_T_Goods.pic_url_list, FD_T_Goods.basic_info,
                            FD_T_Goods.status) \
        .join(FD_T_Goods, FD_T_Goods.goods_id == FD_T_Favorite.goods_id) \
        .filter(FD_T_Favorite.user_id == user_id).all()
    total_num = len(goods)
    return {
        'total_num':
        total_num,
        'goods': [{
            'id': i[0],
            "desp": i[1],
            "price": float(i[2]) if i[2] else None,
            "promot": float(i[3]) if i[3] else None,
            "picList": piclist_to_fulllist(i[4]),
            "basic": i[5],
            "status": i[6]
        } for i in goods[offset:offset + limit]]
    }
Example #10
0
def get_user_info_and_relationship(user_id, aim_id_list):
    dbsession = DBSession()
    return_info = {'issuccess': True, 'users': []}
    user_info = {
        'userId': None,
        'userName': None,
        'userImgUrl': None,
        'gender': 0,
        'mcode': None,
        'phoneNo': None,
        'cityId': None,
        'cityName': None,
        'userType': None,
        'isMyFriend': False,
        'remark': None
    }
    for id in aim_id_list:
        uinfo = {}
        try:
            type = dbsession.query(FD_T_Account.acc_type).filter(
                FD_T_Account.acc_id == id).one()[0]
        except NoResultFound:
            break
        else:
            if type == 4:
                type = 1
            elif type == 5:
                type = 2
            else:
                type = 0
            uinfo['userType'] = type
        if type == 1:
            try:
                user = dbsession \
                    .query(FD_T_User.user_id, FD_T_User.name, FD_T_User.portrait_url,
                           FD_T_User.gender, FD_T_User.mcode, FD_T_User.phone_no, FD_T_User.city_id,
                           FD_T_Citycode.city_name
                           ).distinct() \
                    .outerjoin(FD_T_Citycode, FD_T_Citycode.city_id == FD_T_User.city_id) \
                    .filter(FD_T_User.user_id == id).one()
            except NoResultFound:
                break
            else:
                uinfo['userId'] = user[0]
                uinfo['userName'] = user[1]
                uinfo['userImgUrl'] = piclist_to_fulllist(user[2])[0]
                uinfo['gender'] = user[3]
                uinfo['mcode'] = user[4]
                uinfo['phoneNo'] = user[5]
                uinfo['cityId'] = user[6]
                uinfo['cityName'] = user[7]
                try:
                    finfo = dbsession.query(FD_T_Friend.friend_name).filter(
                        FD_T_Friend.user_id == user_id,
                        FD_T_Friend.friend_id == id).one()
                except NoResultFound:
                    uinfo['isMyFriend'] = False
                else:
                    uinfo['isMyFriend'] = True
                    uinfo['remark'] = finfo[0]
        elif type == 2:
            shangjia = dbsession.query(FD_T_Shopaccount.shop_id, FD_T_Shopaccount.contact_name,
                                       FD_T_Shopaccount.portrait_url, FD_T_Shopaccount.contact_phone_no,
                                       FD_T_Citycode.city_id, FD_T_Citycode.city_name).distinct() \
                .outerjoin(FD_T_Shop, FD_T_Shopaccount.shop_id == FD_T_Shop.shop_id) \
                .outerjoin(FD_T_Citycode, FD_T_Shop.city_id == FD_T_Citycode.city_id) \
                .filter(FD_T_Shopaccount.shop_id == id).one()
            uinfo['userId'] = shangjia[0]
            uinfo['userName'] = shangjia[1]
            uinfo['userImgUrl'] = piclist_to_fulllist(shangjia[2])[0]
            uinfo['gender'] = 0
            uinfo['mcode'] = None
            uinfo['phoneNo'] = shangjia[3]
            uinfo['cityId'] = shangjia[4]
            uinfo['cityName'] = shangjia[5]
        else:
            pass

        return_info['users'].append(uinfo)

    return return_info
Example #11
0
                    is_success=False)
    if contact_name:
        merchantinfo.contact_name = contact_name
    if contact_phone_no:
        merchantinfo.contact_phone_no = contact_phone_no
    if contact_email:
        merchantinfo.contact_email = contact_email
    if contact_qq:
        merchantinfo.contact_qq = contact_qq
    if portrait_url:
        # 同步修改讨论组头像
        merchantinfo.portrait_url = portrait_url
        forums = session.query(FD_T_Forum).filter(
            FD_T_Forum.forum_id == 'shop_' + str(shop_id)).all()
        for forum in forums:
            forum.forum_pic = piclist_to_fulllist(portrait_url)
    session.commit()
    return dict(is_success=True, shop_id=merchantinfo.shop_id)


def get_merchant_serviceinfo(shop_id):
    session = DBSession()
    try:
        merchantinfo = session.query(FD_T_Shopaccount).filter(
            FD_T_Shopaccount.shop_id == shop_id).one()
    except MultipleResultsFound, e:
        return dict(error_code=MTERROR.MultipleResultsFound.code,
                    des=MTERROR.MultipleResultsFound.des,
                    is_success=False)
    except NoResultFound, e:
        return dict(error_code=MTERROR.NoResultFound.code,
Example #12
0
def get_user_info_and_relationship(user_id, aim_id_list):
    dbsession = DBSession()
    return_info = {'issuccess': True, 'users': []}
    user_info = {
        'userId': None,
        'userName': None,
        'userImgUrl': None,
        'gender': 0,
        'mcode': None,
        'phoneNo': None,
        'cityId': None,
        'cityName': None,
        'userType': None,

        'isMyFriend': False,
        'remark': None
    }
    for id in aim_id_list:
        uinfo = {}
        try:
            type = dbsession.query(FD_T_Account.acc_type).filter(FD_T_Account.acc_id == id).one()[0]
        except NoResultFound:
            break
        else:
            if type == 4:
                type = 1
            elif type == 5:
                type = 2
            else:
                type = 0
            uinfo['userType'] = type
        if type == 1:
            try:
                user = dbsession \
                    .query(FD_T_User.user_id, FD_T_User.name, FD_T_User.portrait_url,
                           FD_T_User.gender, FD_T_User.mcode, FD_T_User.phone_no, FD_T_User.city_id,
                           FD_T_Citycode.city_name
                           ).distinct() \
                    .outerjoin(FD_T_Citycode, FD_T_Citycode.city_id == FD_T_User.city_id) \
                    .filter(FD_T_User.user_id == id).one()
            except NoResultFound:
                break
            else:
                uinfo['userId'] = user[0]
                uinfo['userName'] = user[1]
                uinfo['userImgUrl'] = piclist_to_fulllist(user[2])[0]
                uinfo['gender'] = user[3]
                uinfo['mcode'] = user[4]
                uinfo['phoneNo'] = user[5]
                uinfo['cityId'] = user[6]
                uinfo['cityName'] = user[7]
                try:
                    finfo = dbsession.query(FD_T_Friend.friend_name).filter(FD_T_Friend.user_id == user_id,
                                                                            FD_T_Friend.friend_id == id).one()
                except NoResultFound:
                    uinfo['isMyFriend'] = False
                else:
                    uinfo['isMyFriend'] = True
                    uinfo['remark'] = finfo[0]
        elif type == 2:
            shangjia = dbsession.query(FD_T_Shopaccount.shop_id, FD_T_Shopaccount.contact_name,
                                       FD_T_Shopaccount.portrait_url, FD_T_Shopaccount.contact_phone_no,
                                       FD_T_Citycode.city_id, FD_T_Citycode.city_name).distinct() \
                .outerjoin(FD_T_Shop, FD_T_Shopaccount.shop_id == FD_T_Shop.shop_id) \
                .outerjoin(FD_T_Citycode, FD_T_Shop.city_id == FD_T_Citycode.city_id) \
                .filter(FD_T_Shopaccount.shop_id == id).one()
            uinfo['userId'] = shangjia[0]
            uinfo['userName'] = shangjia[1]
            uinfo['userImgUrl'] = piclist_to_fulllist(shangjia[2])[0]
            uinfo['gender'] = 0
            uinfo['mcode'] = None
            uinfo['phoneNo'] = shangjia[3]
            uinfo['cityId'] = shangjia[4]
            uinfo['cityName'] = shangjia[5]
        else:
            pass

        return_info['users'].append(uinfo)

    return return_info
Example #13
0
    except Exception, e:
        return dict(error_code=MTERROR.UnKnowError.code, des=str(e), is_success=False)
    if contact_name:
        merchantinfo.contact_name = contact_name
    if contact_phone_no:
        merchantinfo.contact_phone_no = contact_phone_no
    if contact_email:
        merchantinfo.contact_email = contact_email
    if contact_qq:
        merchantinfo.contact_qq = contact_qq
    if portrait_url:
        # 同步修改讨论组头像
        merchantinfo.portrait_url = portrait_url
        forums = session.query(FD_T_Forum).filter(FD_T_Forum.forum_id == 'shop_' + str(shop_id)).all()
        for forum in forums:
            forum.forum_pic = piclist_to_fulllist(portrait_url)
    session.commit()
    return dict(is_success=True, shop_id=merchantinfo.shop_id)


def get_merchant_serviceinfo(shop_id):
    session = DBSession()
    try:
        merchantinfo = session.query(FD_T_Shopaccount).filter(FD_T_Shopaccount.shop_id == shop_id).one()
    except MultipleResultsFound, e:
        return dict(error_code=MTERROR.MultipleResultsFound.code, des=MTERROR.MultipleResultsFound.des,
                    is_success=False)
    except NoResultFound, e:
        return dict(error_code=MTERROR.NoResultFound.code, des=MTERROR.NoResultFound.des, is_success=False)
    except Exception, e:
        return dict(error_code=MTERROR.UnKnowError.code, des=str(e), is_success=False)