コード例 #1
0
def select_dir_page(count, page, _id):
    """
    根据page值获取前后页数据
    :param count: 每页数量
    :param page: 当前页与目标页之差,page > 0 为向后, page < 0 为向前
    :param _id: 当前页第一条数据的_id
    :return: list or None
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        if page > 0:
            skip_count = (page - 1) * count
            for item in mongo.card.find({"_id": {"$gt": ObjectId(_id)}, "delete": False}).skip(skip_count).limit(count):
                result.insert(0, item)
            success = result
        elif page < 0:
            skip_count = abs(page) * count - 1
            for item in mongo.card.find({"_id": {"$lt": ObjectId(_id)}, "delete": False}).sort("_id", -1).skip(skip_count).limit(count):
                result.append(item)
            success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #2
0
ファイル: user.py プロジェクト: Dontcampy/BusinessCard
def insert_account(username, pwd):
    """
    插入新用户
    :param username: 用户名 str
    :param pwd: 密码 str
    :return: 是否成功 None or ObjectId
    """
    success = None
    mongo = Mongo()
    try:
        data = {
            "username": username,
            "pwd": pwd,
            "admin": False,
            "favor": [],
            "vip": True,
            "avatar": "",
            "section": "",
            "position": ""
        }
        success = mongo.user.insert(data)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #3
0
ファイル: company.py プロジェクト: Dontcampy/BcPanel
def select_pre_page(count, page, _id):
    """
    获取前页数据
    :param count: 每页数量
    :param page: 当前页与目标页之差,应该大于0
    :param _id: 当前页第一条数据的_id
    :return: list or None
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        skip_count = (page - 1) * count
        for item in mongo.company.find({
                "_id": {
                    "$gt": ObjectId(_id)
                },
                "delete": False
        }).skip(skip_count).limit(count):
            result.insert(0, item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #4
0
ファイル: company.py プロジェクト: Dontcampy/BcPanel
def select_next_page(count, page, _id):
    """
    获取后页数据
    :param count: 每页数量
    :param page: 当前页与目标页之差,应该小于0
    :param _id: 当前页第一条数据的_id
    :return: list or None
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        skip_count = abs(page) * count - 1
        for item in mongo.company.find({
                "_id": {
                    "$lt": ObjectId(_id)
                },
                "delete": False
        }).sort("_id", -1).skip(skip_count).limit(count):
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #5
0
def insert_account(username, pwd):
    """
    插入新用户
    :param username: 用户名 str
    :param pwd: 密码 str
    :return: 是否成功 None or ObjectId
    """
    success = None
    mongo = Mongo()
    try:
        if mongo.user.find_one({"username": username}) is None:
            data = {
                "username": username,
                "pwd": pwd,
                "admin": False,
                "vip": True,
                "delete": False,
                "system": False
            }
            success = mongo.user.insert(data)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #6
0
ファイル: company.py プロジェクト: Dontcampy/BcPanel
def count():
    """
    返回企业数量
    :return: int
    """
    result = 0
    mongo = Mongo()
    try:
        result = mongo.company.find({"delete": False}).count()
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return result
コード例 #7
0
def insert(data):
    """
    插入名片
    :param data: 名片数据 dict
    :return: None or ObjectId
    """
    success = None
    mongo = Mongo()
    try:
        success = mongo.card.insert(data)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #8
0
ファイル: user.py プロジェクト: Dontcampy/BusinessCard
def del_account(username):
    """
    :param username: 用户名 str
    :return: 是否成功 boolean
    """
    success = False
    mongo = Mongo()
    try:
        result = mongo.user.remove({"username": username})
        success = True
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #9
0
def insert_login(username):
    """
    登录事件log
    :param username: 用户名
    :return: ObjectId
    """
    success = None
    mongo = Mongo()
    try:
        log_data = {"uuid": None, "username": username, "date": get_13ts(), "oper": "login"}
        success = mongo.log.insert_one(log_data)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #10
0
def select_id(_id):
    """
    通过id查询
    :param _id: str
    :return: None or dict
    """
    success = None
    mongo = Mongo()
    try:
        result = mongo.card.find_one({"_id": ObjectId(_id)})
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #11
0
ファイル: user.py プロジェクト: Dontcampy/BusinessCard
def select_username(username):
    """
    通过username查找用户信息
    :param username: 用户名 str
    :return: 用户信息 list<dict> if 不为空 else ()
    """
    success = None
    mongo = Mongo()
    try:
        result = mongo.user.find_one({"username": username})
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #12
0
def select_all():
    """
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.visit.find():
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #13
0
def delete(uuid):
    """
    删除名片
    :param uuid: 名片id str
    :return: boolean
    """
    success = False
    mongo = Mongo()
    try:
        result = mongo.card.remove({"uuid": uuid})
        success = True
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #14
0
ファイル: user.py プロジェクト: Dontcampy/BusinessCard
def select_id(_id):
    """
    通过uid查找用户信息
    :param _id: 用户id str
    :return: 用户信息 list<dict> if 不为空 else ()
    """
    success = None
    mongo = Mongo()
    try:
        result = mongo.user.find_one({"_id": ObjectId(_id)})
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #15
0
def update(uuid, new_data):
    """
    更新名片
    :param uuid: 名片id str
    :param new_data: 新数据 dict
    :return: boolean
    """
    success = False
    mongo = Mongo()
    try:
        result = mongo.card.update_one({"uuid": uuid}, {"$set": new_data}, upsert=True)
        success = True
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #16
0
def insert_modify(uuid, username):
    """
    修改事件log记录
    :param uuid: uuid
    :param username: 用户名
    :return: ObjectId
    """
    success = None
    mongo = Mongo()
    try:
        log_data = {"uuid": uuid, "username": username, "date": get_13ts(), "oper": "modify"}
        success = mongo.log.insert_one(log_data)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #17
0
def select_login():
    """
    查询所有登录记录
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.log.find({"oper": "login"}).sort('_id', -1):
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #18
0
def select_company(company):
    """
    通过company_name查询
    :param name: str
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.card.find({"company_name": company}):
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #19
0
def select_first_page(count):
    """
    获取第一页数据
    :param count: int 每页条数
    :return: list or None
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.card.find({"delete": False}).sort("_id", -1).limit(count):
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #20
0
def select_all():
    """
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.visit.find({"delete": False}):
            if item is not None:
                del item["_id"]
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #21
0
def select_uuid(uuid):
    """
    通过id查询
    :param uuid: str
    :return: None or dict
    """
    success = None
    mongo = Mongo()
    try:
        result = mongo.visit.find_one({"uuid": uuid})
        if result is not None:
            del result["_id"]
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #22
0
def select_newest(timestamp):
    """
    将上次用户同步后的新数据uuid返回
    :param timestamp: 时间戳timestamp
    :return: list or None
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.card.find({"create_time": {"$gt": timestamp}}, {"_id": 0, "uuid": 1}):
            result.append(item["uuid"])
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #23
0
def select_username(username):
    """
    通过username查询记录
    :param username: username
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.log.find({"username": username}).sort('_id', -1):
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #24
0
ファイル: company.py プロジェクト: Dontcampy/BcPanel
def update(uuid, new_data):
    """
    更新
    :param uuid: id str
    :param new_data: 新数据 dict
    :return: boolean
    """
    success = False
    mongo = Mongo()
    try:
        if "_id" in new_data:
            del new_data["id"]
        result = mongo.company.update_one({"uuid": uuid}, {"$set": new_data})
        success = bool(True)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #25
0
ファイル: company.py プロジェクト: Dontcampy/BcPanel
def delete(uuid):
    """
    删除
    :param uuid: id str
    :return: boolean
    """
    success = False
    mongo = Mongo()
    try:
        result = mongo.company.update_one({"uuid": uuid},
                                          {"$set": {
                                              "delete": True
                                          }})
        success = bool(True)
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #26
0
ファイル: user.py プロジェクト: Dontcampy/BusinessCard
def set_admin(username):
    """
    修改用户组
    :param username: 用户名 str
    :return: 是否成功 boolean
    """
    success = False
    mongo = Mongo()
    try:
        result = mongo.user.update({"username": username},
                                   {"$set": {
                                       "admin": True
                                   }})
        success = True
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success
コード例 #27
0
def select_name(name):
    """
    通过name查询
    :param name: str
    :return: None or list
    """
    success = None
    result = []
    mongo = Mongo()
    try:
        for item in mongo.card.find({"name": name}):
            if item is not None:
                del item["_id"]
            result.append(item)
        success = result
    except Exception as e:
        traceback.print_exc()
    finally:
        mongo.close()
        return success