From 63e225ec8252ab8a54b7154a229ac651056f26c8 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 14 十一月 2022 18:21:43 +0800
Subject: [PATCH] 9749 【后台】增加查看付费留存(增加玩家真实付费相关记录: 首次时间、今日总付费、累计总付费)

---
 ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py |  124 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 122 insertions(+), 2 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index 27cfd99..1758c54 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -285,6 +285,7 @@
                         ("DWORD", "LimitLV", 0),
                         ("DWORD", "LimitMagicWeapon", 0),
                         ("WORD", "LimiRealmLV", 0),
+                        ("BYTE", "LimitVIPLV", 0),
                         ),
 
                 "ChinNPC":(
@@ -426,6 +427,19 @@
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
                         ("BYTE", "ResetType", 0),
+                        ),
+
+                "ActGodGift":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "IsDayReset", 0),
                         ),
 
                 "ActHorsePetFeast":(
@@ -797,6 +811,27 @@
                         ("list", "BaseAwardInfo", 0),
                         ("list", "RandAwardWeightInfo", 0),
                         ("list", "SuperItemWeightInfo", 0),
+                        ),
+
+                "CrossActAllRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("list", "TemplateIDList", 0),
+                        ),
+
+                "CrossActAllRechargeTemplate":(
+                        ("DWORD", "TemplateID", 1),
+                        ("DWORD", "CTGNeed", 0),
+                        ("WORD", "NeedPlayerCount", 0),
+                        ("BYTE", "AwardIndex", 0),
+                        ("list", "AwardItemList", 0),
                         ),
 
                 "CrossActCTGBillboard":(
@@ -1379,13 +1414,15 @@
         self.FuncId = 0
         self.LimitLV = 0
         self.LimitMagicWeapon = 0
-        self.LimiRealmLV = 0
+        self.LimiRealmLV = 0
+        self.LimitVIPLV = 0
         return
         
     def GetFuncId(self): return self.FuncId # 功能标识
     def GetLimitLV(self): return self.LimitLV # 开启等级
     def GetLimitMagicWeapon(self): return self.LimitMagicWeapon # 需要解锁法宝ID
-    def GetLimiRealmLV(self): return self.LimiRealmLV # 需要境界等级
+    def GetLimiRealmLV(self): return self.LimiRealmLV # 需要境界等级
+    def GetLimitVIPLV(self): return self.LimitVIPLV # 需要VIP等级
 
 # NPC表
 class IPY_ChinNPC():
@@ -1679,6 +1716,33 @@
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+
+# 天帝礼包活动时间表
+class IPY_ActGodGift():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
 # 骑宠盛宴活动
 class IPY_ActHorsePetFeast():
@@ -2456,6 +2520,50 @@
     def GetRandAwardWeightInfo(self): return self.RandAwardWeightInfo # 每次购买随机奖励权重信息 [[权重,物品ID,个数,是否拍品], ...]
     def GetSuperItemWeightInfo(self): return self.SuperItemWeightInfo # 大奖随机权重信息  [[权重,物品ID,个数,是否拍品,价值货币类型,货币值], ...]
 
+# 跨服全民充值时间表
+class IPY_CrossActAllRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActGroupName = ""
+        self.ZoneID = 0
+        self.ServerIDRangeList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.TemplateIDList = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActGroupName(self): return self.ActGroupName # 活动组名(同组活动的名字需相同)
+    def GetZoneID(self): return self.ZoneID # 组内分组编号
+    def GetServerIDRangeList(self): return self.ServerIDRangeList # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[循环分钟, 广播key, [广播参数列表可选]]
+    def GetTemplateIDList(self): return self.TemplateIDList # 模板ID列表
+
+# 跨服全民充值模板表
+class IPY_CrossActAllRechargeTemplate():
+    
+    def __init__(self):
+        self.TemplateID = 0
+        self.CTGNeed = 0
+        self.NeedPlayerCount = 0
+        self.AwardIndex = 0
+        self.AwardItemList = []
+        return
+        
+    def GetTemplateID(self): return self.TemplateID # 模板ID
+    def GetCTGNeed(self): return self.CTGNeed # 全民充值RMB
+    def GetNeedPlayerCount(self): return self.NeedPlayerCount # 所需充值达到该档玩家数
+    def GetAwardIndex(self): return self.AwardIndex # 奖励记录索引,从0开始,同个模板不可重复,不可变更
+    def GetAwardItemList(self): return self.AwardItemList # 奖励物品列表[[物品ID,个数,是否拍品], ...]
+
 # 跨服充值排行活动时间表
 class IPY_CrossActCTGBillboard():
     
@@ -2660,6 +2768,8 @@
         self.ipyActGarbageSortingLen = len(self.ipyActGarbageSortingCache)
         self.ipyActXianXiaMJCache = self.__LoadFileData("ActXianXiaMJ", IPY_ActXianXiaMJ)
         self.ipyActXianXiaMJLen = len(self.ipyActXianXiaMJCache)
+        self.ipyActGodGiftCache = self.__LoadFileData("ActGodGift", IPY_ActGodGift)
+        self.ipyActGodGiftLen = len(self.ipyActGodGiftCache)
         self.ipyActHorsePetFeastCache = self.__LoadFileData("ActHorsePetFeast", IPY_ActHorsePetFeast)
         self.ipyActHorsePetFeastLen = len(self.ipyActHorsePetFeastCache)
         self.ipyActBossRebornCache = self.__LoadFileData("ActBossReborn", IPY_ActBossReborn)
@@ -2728,6 +2838,10 @@
         self.ipyCrossActLuckyCloudBuyLen = len(self.ipyCrossActLuckyCloudBuyCache)
         self.ipyCrossActLuckyCloudBuyTemplateCache = self.__LoadFileData("CrossActLuckyCloudBuyTemplate", IPY_CrossActLuckyCloudBuyTemplate)
         self.ipyCrossActLuckyCloudBuyTemplateLen = len(self.ipyCrossActLuckyCloudBuyTemplateCache)
+        self.ipyCrossActAllRechargeCache = self.__LoadFileData("CrossActAllRecharge", IPY_CrossActAllRecharge)
+        self.ipyCrossActAllRechargeLen = len(self.ipyCrossActAllRechargeCache)
+        self.ipyCrossActAllRechargeTemplateCache = self.__LoadFileData("CrossActAllRechargeTemplate", IPY_CrossActAllRechargeTemplate)
+        self.ipyCrossActAllRechargeTemplateLen = len(self.ipyCrossActAllRechargeTemplateCache)
         self.ipyCrossActCTGBillboardCache = self.__LoadFileData("CrossActCTGBillboard", IPY_CrossActCTGBillboard)
         self.ipyCrossActCTGBillboardLen = len(self.ipyCrossActCTGBillboardCache)
         self.ipyCrossActCTGBillboardOrderCache = self.__LoadFileData("CrossActCTGBillboardOrder", IPY_CrossActCTGBillboardOrder)
@@ -2982,6 +3096,8 @@
     def GetActGarbageSortingByIndex(self, index): return self.ipyActGarbageSortingCache[index]
     def GetActXianXiaMJCount(self): return self.ipyActXianXiaMJLen
     def GetActXianXiaMJByIndex(self, index): return self.ipyActXianXiaMJCache[index]
+    def GetActGodGiftCount(self): return self.ipyActGodGiftLen
+    def GetActGodGiftByIndex(self, index): return self.ipyActGodGiftCache[index]
     def GetActHorsePetFeastCount(self): return self.ipyActHorsePetFeastLen
     def GetActHorsePetFeastByIndex(self, index): return self.ipyActHorsePetFeastCache[index]
     def GetActBossRebornCount(self): return self.ipyActBossRebornLen
@@ -3050,6 +3166,10 @@
     def GetCrossActLuckyCloudBuyByIndex(self, index): return self.ipyCrossActLuckyCloudBuyCache[index]
     def GetCrossActLuckyCloudBuyTemplateCount(self): return self.ipyCrossActLuckyCloudBuyTemplateLen
     def GetCrossActLuckyCloudBuyTemplateByIndex(self, index): return self.ipyCrossActLuckyCloudBuyTemplateCache[index]
+    def GetCrossActAllRechargeCount(self): return self.ipyCrossActAllRechargeLen
+    def GetCrossActAllRechargeByIndex(self, index): return self.ipyCrossActAllRechargeCache[index]
+    def GetCrossActAllRechargeTemplateCount(self): return self.ipyCrossActAllRechargeTemplateLen
+    def GetCrossActAllRechargeTemplateByIndex(self, index): return self.ipyCrossActAllRechargeTemplateCache[index]
     def GetCrossActCTGBillboardCount(self): return self.ipyCrossActCTGBillboardLen
     def GetCrossActCTGBillboardByIndex(self, index): return self.ipyCrossActCTGBillboardCache[index]
     def GetCrossActCTGBillboardOrderCount(self): return self.ipyCrossActCTGBillboardOrderLen

--
Gitblit v1.8.0