From e5889e8e468247097ed9f1e9b2a5ef9cb88c6569 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 21 四月 2026 19:30:24 +0800
Subject: [PATCH] 609 新增累充活动

---
 Main/System/OpenServerActivity/OperationTimeHepler.cs |   72 ++++++++++++++++++++++++++++++++++++
 1 files changed, 72 insertions(+), 0 deletions(-)

diff --git a/Main/System/OpenServerActivity/OperationTimeHepler.cs b/Main/System/OpenServerActivity/OperationTimeHepler.cs
index 18a98ec..0738659 100644
--- a/Main/System/OpenServerActivity/OperationTimeHepler.cs
+++ b/Main/System/OpenServerActivity/OperationTimeHepler.cs
@@ -495,6 +495,76 @@
         operationTimeUpdateEvent?.Invoke(opreationType);
     }
 
+    public void UpdateActTotalRechargeInfo(HAA1D_tagSCActTotalRechargeInfo package)
+    {
+        OperationBase operationBase = null;
+        operationDict.TryGetValue(OperationType.TotalRecharge, out operationBase);
+        if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
+        {
+            ForceStopOperation(OperationType.TotalRecharge);
+        }
+        else
+        {
+            if (operationBase == null)
+            {
+                operationBase = new OperationTotalRechargeInfo();
+                operationDict.Add(OperationType.TotalRecharge, operationBase);
+            }
+            OperationTotalRechargeInfo operation = operationBase as OperationTotalRechargeInfo;
+            operation.Reset();
+            operation.startDate = ParseOperationDate(package.StartDate);
+            operation.endDate = ParseOperationDate(package.EndtDate);
+            operation.ActNum = package.ActNum;
+            operation.CfgID = package.CfgID;
+            
+            var config = ActTotalRechargeConfig.Get(package.CfgID);
+            if (config == null)
+            {
+                SysNotifyMgr.Instance.ShowTip("LoadConfigErr");
+                return;
+            }
+
+            if (operationTimeUpdateEvent != null)
+            {
+                operationTimeUpdateEvent(OperationType.TotalRecharge);
+            }
+        }
+    }
+
+    public void UpdateActTotDayRechargeInfo(HAA1B_tagSCActTotDayRechargeInfo package)
+    {
+        OperationBase operationBase = null;
+        operationDict.TryGetValue(OperationType.TotDayRecharge, out operationBase);
+        if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
+        {
+            ForceStopOperation(OperationType.TotDayRecharge);
+        }
+        else
+        {
+            if (operationBase == null)
+            {
+                operationBase = new OperationTotDayRechargeInfo();
+                operationDict.Add(OperationType.TotDayRecharge, operationBase);
+            }
+            OperationTotDayRechargeInfo operation = operationBase as OperationTotDayRechargeInfo;
+            operation.Reset();
+            operation.startDate = ParseOperationDate(package.StartDate);
+            operation.endDate = ParseOperationDate(package.EndtDate);
+            operation.ActNum = package.ActNum;
+            operation.CfgID = package.CfgID;
+
+            var config = ActTotalRechargeConfig.Get(package.CfgID);
+            if (config == null)
+            {
+                SysNotifyMgr.Instance.ShowTip("LoadConfigErr");
+                return;
+            }
+            
+            operation.dayReset = config.IsDayReset == 1;
+            operationTimeUpdateEvent?.Invoke(OperationType.TotDayRecharge);
+        }
+    }
+
     // public void UpdateActYunShiInfo(HAA87_tagMCActYunshiInfo package)
     // {
     //     Operation operationType = Operation.default48;
@@ -1085,5 +1155,7 @@
     TimeRush = 1,  //鏃ユ湡鍨嬫椿鍔� - 杞洖娈�
     HeroDebut = 2,  //鏃ユ湡鍨嬫椿鍔� - 姝﹀皢鐧诲満
     HeroReturn = 3, //鏃ユ湡鍨嬫椿鍔� - 姝﹀皢杩斿満
+    TotalRecharge = 4,//绱厖娲诲姩
+    TotDayRecharge = 5, //绱厖澶╂椿鍔�
     max,
 }
\ No newline at end of file

--
Gitblit v1.8.0