|  |  | 
 |  |  | 
 | 
 |  |  | def OnPlayerLogin(curPlayer):
 | 
 |  |  |     
 | 
 |  |  |     TransferPlayerActDBKeyValue(curPlayer)
 | 
 |  |  |      | 
 |  |  |     for actInfo in PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_TotalRecharge, {}).values():
 | 
 |  |  |         actNum = actInfo.get(ShareDefine.ActKey_ActNum, 0)
 | 
 |  |  |         isReset = __CheckPlayerTotalRechargeAction(curPlayer, actNum)
 | 
 |  |  | 
 |  |  |                 Sync_TotalRechargeActionInfo(curPlayer, actNum)
 | 
 |  |  |                 Sync_TotalRechargeInfo(curPlayer, actNum)
 | 
 |  |  |                 
 | 
 |  |  |     return
 | 
 |  |  | 
 | 
 |  |  | def TransferPlayerActDBKeyValue(curPlayer):
 | 
 |  |  |     ## 玩家登录时调用,旧版本玩家活动数据转移到新版本字典,线上版本维护之后的版本可删除此代码,线上版本分支 gt_1.100.4
 | 
 |  |  |      | 
 |  |  |     # 原: 1-常规单日;2-常规多日;3-节日多日
 | 
 |  |  |     # 新:10            11        31
 | 
 |  |  |     transferActNumDict = {1:10, 2:11, 3:31}
 | 
 |  |  |     for actNumOld, actNumNew in transferActNumDict.items():
 | 
 |  |  |         actID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeID % actNumOld)
 | 
 |  |  |         if not actID:
 | 
 |  |  |             continue
 | 
 |  |  |          | 
 |  |  |         templateID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeTemplateID % actNumOld)
 | 
 |  |  |         rechargeGold = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeGold % actNumOld)
 | 
 |  |  |         awardRecord = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeAwardRecord % actNumOld)
 | 
 |  |  |         worldLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeWorldLV % actNumOld)
 | 
 |  |  |          | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeID % actNumNew, actID)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeTemplateID % actNumNew, templateID)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeGold % actNumNew, rechargeGold)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeAwardRecord % actNumNew, awardRecord)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeWorldLV % actNumNew, worldLV)
 | 
 |  |  |          | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeID % actNumOld, 0)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeTemplateID % actNumOld, 0)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeGold % actNumOld, 0)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeAwardRecord % actNumOld, 0)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalRechargeWorldLV % actNumOld, 0)
 | 
 |  |  |          | 
 |  |  |         GameWorld.Log("累计充值转移玩家活动字典记录: actNumOld=%s,actNumNew=%s,actID=%s,templateID=%s,rechargeGold=%s,awardRecord=%s,worldLV=%s"  | 
 |  |  |                       % (actNumOld, actNumNew, actID, templateID, rechargeGold, awardRecord, worldLV), curPlayer.GetPlayerID())
 | 
 |  |  |          | 
 |  |  |     return
 | 
 |  |  | 
 | 
 |  |  | def RefreshTotalRechargeActionInfo(actNum):
 | 
 |  |  | 
 |  |  |         return
 | 
 |  |  |     
 | 
 |  |  |     needGold = CommFunc.RMBToCoin(awardIpyData.GetNeedGold())
 | 
 |  |  |     actWorldLV = actInfo.get(ShareDefine.ActKey_WorldLV, 0)
 | 
 |  |  |     actWorldLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeWorldLV % actNum)
 | 
 |  |  |     awardItemList = __GetItemList(ipyData.GetAwardItem(), curPlayer.GetJob(), actWorldLV)
 | 
 |  |  |     
 | 
 |  |  |     curRechargeGold = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeGold % actNum)
 | 
 |  |  | 
 |  |  |     if not templateIDList:
 | 
 |  |  |         return
 | 
 |  |  |     job = curPlayer.GetJob()
 | 
 |  |  |     actWorldLV = actInfo.get(ShareDefine.ActKey_WorldLV, 0)
 | 
 |  |  |     actWorldLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalRechargeWorldLV % actNum)
 | 
 |  |  |     startDateStr, endDateStr = GameWorld.GetOperationActionDateStr(ipyData)
 | 
 |  |  |     actInfo = ChPyNetSendPack.tagMCActTotalRechargeInfo()
 | 
 |  |  |     actInfo.ActNum = actNum
 |