hxp
2024-10-31 402ed2e6a90a785d2fce3eca23cd324f350d54c5
eventreport/eventreport.php
@@ -153,6 +153,9 @@
         return;
      }
   }
   $ServerID = \CommFunc\GetServerIDBySid($RegionName);
   AddAccountFirstLogin($ServerID, $roleInfo);
   AddAccountDayActive($ServerID, $roleInfo);
   return true;
}
@@ -193,3 +196,60 @@
   }
   return true;
}
/**添加平台账号首登 */
function AddAccountFirstLogin($ServerID, $roleInfo)
{
   global $Channel, $Time;
   $AccountID = $_GET["AccountID"];
   $find = array("Channel" => $Channel, "AccountID" => $AccountID);
   if (!\DBOper\FindOne("AccountFirstLogin", $find, $findData, null, false)) {
      return;
   }
   if (isset($findData)) {
      // 已存在,不再重复添加
      return;
   }
   $CreateRoleTime = $Time;
   if (array_key_exists("CreateRoleTime", $roleInfo)) {
      $CreateRoleTime = $roleInfo["CreateRoleTime"];
   }
   $insArray = array(
      "Channel" => $Channel,
      "AccountID" => $AccountID,
      "CreateYMD" => substr($CreateRoleTime, 0, 10),
      "CreateTime" => $CreateRoleTime,
      "ServerID" => $ServerID,
      "PlayerID" => $roleInfo["PlayerID"],
      "PlayerName" => $roleInfo["PlayerName"],
      "Job" => $roleInfo["Job"],
      "IP" => $roleInfo["IP"],
   );
   \DBOper\Insert("AccountFirstLogin", $insArray);
}
/**添加平台账号日活 */
function AddAccountDayActive($ServerID, $roleInfo)
{
   global $Channel, $Time;
   $AccountID = $_GET["AccountID"];
   $curYMD = substr($Time, 0, 10);
   $find = array("Channel" => $Channel, "AccountID" => $AccountID, "ActiveYMD" => $curYMD);
   $roleInfo["ServerID"] = $ServerID;
   // 直接更新
   $actInfo = array(
      "Channel" => $Channel,
      "AccountID" => $AccountID,
      "ActiveYMD" => $curYMD,
      "ServerID" => $ServerID,
      "IP" => $roleInfo["IP"],
   );
   if (array_key_exists("LoginTime", $roleInfo)) {
      $actInfo["LoginTime"] = $roleInfo["LoginTime"];
   }
   if (array_key_exists("LogoffTime", $roleInfo)) {
      $actInfo["LogoffTime"] = $roleInfo["LogoffTime"];
   }
   \DBOper\Update("AccountDayActive", $find, $actInfo, false, true);
}