From 78eba407c2b7d68096500e9013add9141b13f52c Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 21 九月 2018 23:37:11 +0800
Subject: [PATCH] 3798 【后端】运营活动时间优化,开服日常限时活动定制时间优化

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py |   36 +++++++++++++++++++++++++++++++-----
 1 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
index 2dbdcdb..6992c9c 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
@@ -477,11 +477,9 @@
 def GetPlayerMainServerID(accIDPlatform):
     # 玩家合服后所属主服ID
     # @param accIDPlatform: 玩家账号所属的平台
-    #===========================================================================
-    # mainServerID = ToIntDef(ReadChConfig.GetPyMongoConfig("platform", "%sMainServerID" % accIDPlatform), None)
-    # if mainServerID != None:
-    #    return mainServerID
-    #===========================================================================
+    mainServerID = ToIntDef(ReadChConfig.GetPyMongoConfig("platform", "%sMainServerID" % accIDPlatform), None)
+    if mainServerID != None:
+        return mainServerID
     return GetServerID()
 
 ##获取玩家所属平台
@@ -537,6 +535,19 @@
     return tagPlayer.GetRealMapID()
 
 #---------------------------------------------------------------------
+
+def GetOperationActionDateStr(dateInfo, openServerDay):
+    '''获取运营活动对应日期,存数字代表开服天配置,需要转化为对应的日期
+    @param dateInfo: 运营活动表配置的日期信息, 如果是纯数字代表开服天
+    @param openServerDay: 当前开服天
+    '''
+    if not dateInfo.isdigit():
+        return dateInfo
+    actionServerDay = int(dateInfo)
+    curDateTime = datetime.datetime.today()
+    actionDateTime = curDateTime + datetime.timedelta(days=(actionServerDay-openServerDay))
+    return "%d-%d-%d" % (actionDateTime.year, actionDateTime.month, actionDateTime.day)
+
 ##获得系统时间
 # @param 无意义
 # @return 系统时间
@@ -987,4 +998,19 @@
     except:
         return inputText
     
+    return inputText
+
+# 服务器默认GBK,转配置编码如UTF8,一般用于与显示层交互,不判断是否base64
+def CodeToGBK(inputText):
+    encodingList = ReadChConfig.GetEvalChConfig("EncodingTex")
+    
+    if len(encodingList) != 2:
+        ErrLog("EncodingTex.txt Error len != 2")
+        return inputText
+    
+    try:
+        return inputText.decode(GetCharacterEncoding()).encode(ShareDefine.Def_Game_Character_Encoding)
+    except:
+        return inputText
+    
     return inputText
\ No newline at end of file

--
Gitblit v1.8.0