hxp
2025-03-17 e2bdf780855c28fc5a29a2c5b7130341832779c3
Server/eventdata/PlayerList.py
@@ -21,15 +21,33 @@
    col = dboper.db["tagDBPlayer"]
    TotalCount = col.count()
    spec = {}
    fields = {'_id':0, "AccID":1, "PlayerName":1, "LV":1, "CreateRoleTime":1, "ChangeCoinPointTotal":1, "VIPLv":1}
    fields = {'_id':0, "AccID":1, "PlayerName":1, "PlayerID":1, "LV":1, "CreateRoleTime":1, "ChangeCoinPointTotal":1, "VIPLv":1}
    Ret = col.find(spec, fields).sort([("LV", -1)]).limit(1000)
    # 关闭
    dboper.close()
    
    retData = []
    accIDList = []
    for dataInfo in Ret:
        retData.append(dataInfo)
        accIDList.append(dataInfo["AccID"])
    col = dboper.db["tagDSAccount"]
    spec = {"ACCID":{"$in":accIDList}}
    fields = {'_id':0, "ACCID":1, "ClientVersion":1}
    accRet = col.find(spec, fields)
    # 关闭
    dboper.close()
    accountInfo = {} # 账号表的关联信息
    for ad in accRet:
        accID = ad.pop("ACCID", "")
        if accID:
            accountInfo[accID] = ad
    # 合并数据
    for dataInfo in retData:
        accID = dataInfo["AccID"]
        dataInfo.update(accountInfo.get(accID, {}))
    ret = {"OK":1, "Data":retData, "TotalCount":TotalCount}
    logging.info("ret:%s" % ret)
    print json.dumps(ret, ensure_ascii=False, default=lambda obj: obj.__dict__)