| using System.Collections;  | 
| using System.Collections.Generic;  | 
| using UnityEngine;  | 
| using System;  | 
| using vnxbqy.UI;  | 
| using LitJson;  | 
|   | 
|   | 
| public class OperationLogCollect : Singleton<OperationLogCollect>  | 
|   | 
| {  | 
|     const string url = "http://vncenter.daojmengxvn.com:11000/event_receiver?";  | 
|   | 
|     public void RecordLauchEvent(int _step)  | 
|     {  | 
|         return;  | 
| #if !UNITY_EDITOR  | 
|         if (VersionConfig.Get().versionAuthority == VersionAuthority.Release)  | 
|         {  | 
|             var tables = new Dictionary<string, string>();  | 
|             tables["OperatorID"] = VersionConfig.Get().appId;  | 
|             tables["RegionName"] = "data";  | 
|             tables["EventID"] = 9001.ToString();  | 
|             tables["ProductID"] = VersionConfig.Get().gameId;  | 
|             tables["Device"] = SystemInfo.deviceName;  | 
|             tables["DeviceFlag"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
|             tables["IP"] = DeviceUtility.GetIp();  | 
|             tables["DeviceFlag"] = DeviceUtility.GetDeviceUniquenessIdentify();  | 
|             tables["Flag"] = "1001";  | 
|             tables["Time"] = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|             tables["Step"] = _step.ToString();  | 
|   | 
|             HttpRequest.Instance.RequestHttpGet(StringUtility.Contact(url, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);  | 
|         }  | 
| #endif  | 
|     }  | 
|   | 
|     public void RecordEvent(int _step, uint coin = 0)  | 
|     {  | 
|         return;  | 
| #if !UNITY_EDITOR  | 
|         if (VersionConfig.Get().versionAuthority == VersionAuthority.Release)  | 
|         {  | 
|             var tables = new Dictionary<string, string>();  | 
|             tables["OperatorID"] = VersionConfig.Get().appId;  | 
|             tables["RegionName"] = "data";  | 
|             tables["AccountID"] = ynmbxxjUtil.Instance.FreePlatformInfo == null ? "" : ynmbxxjUtil.Instance.FreePlatformInfo.account;  | 
|             tables["EventID"] = 9001.ToString();  | 
|             tables["ProductID"] = VersionConfig.Get().gameId;  | 
|             tables["Device"] = SystemInfo.deviceName;  | 
|             tables["IP"] = DeviceUtility.GetIp();  | 
|             tables["DeviceFlag"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
|             tables["Flag"] = VersionConfig.Get().clientPackageFlag;  | 
|             tables["Time"] = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|             tables["Step"] = _step.ToString();  | 
|   | 
|             if (coin != 0)  | 
|             {  | 
|                 tables["Level"] = coin.ToString();  | 
|             }  | 
|   | 
|             string _content = StringUtility.Contact(url, HttpRequest.HashtablaToString(tables));  | 
|             HttpRequest.Instance.RequestHttpGet(_content, HttpRequest.defaultHttpContentType);  | 
|         }  | 
| #endif  | 
|     }  | 
|   | 
|     bool recordedDeviceDetail = false;  | 
|     public void RecordDeviceDetails()  | 
|     {  | 
|         return;  | 
| #if !UNITY_EDITOR  | 
|         if (VersionConfig.Get().versionAuthority != VersionAuthority.Release)  | 
|         {  | 
|             return;  | 
|         }  | 
|   | 
|         if (!recordedDeviceDetail)  | 
|         {  | 
|             var tables = new Dictionary<string, string>();  | 
|             tables["OperatorID"] = VersionConfig.Get().appId;  | 
|             tables["RegionName"] = StringUtility.Contact("s" + ServerListCenter.Instance.currentServer.region_flag);  | 
|             tables["EventID"] = 1102.ToString();  | 
|             tables["ProductID"] = VersionConfig.Get().gameId;  | 
|             tables["Time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|             tables["IP"] = DeviceUtility.GetIp();  | 
|             tables["AccountID"] = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account;  | 
|             tables["SessionID"] = "";  | 
|   | 
|             var device = new Dictionary<string, string>();  | 
|             device["IMEI"] = DeviceUtility.GetDeviceUniquenessIdentify();  | 
|             device["DeviceFlag"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
| #if UNITY_ANDROID  | 
|             device["IMEI2"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
| #endif  | 
|             device["Brand"] = DeviceUtility.GetDeviceName();  | 
|             device["MI5"] = DeviceUtility.GetDeviceModel();  | 
|             tables["Device"] = JsonMapper.ToJson(device);  | 
|   | 
|             var runtime = new Dictionary<string, string>();  | 
|             runtime["os_version"] = DeviceUtility.GetDeviceOSLevel();  | 
|             tables["Runtime"] = JsonMapper.ToJson(runtime);  | 
|             tables["Version"] = StringUtility.Contact(VersionConfig.Get().version, "_", VersionConfig.Get().buildIndex);  | 
|   | 
|             HttpRequest.Instance.RequestHttpGet(StringUtility.Contact(url, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);  | 
|         }  | 
|   | 
|         recordedDeviceDetail = true;  | 
| #endif  | 
|     }  | 
|   | 
|   | 
|     const string bugReportUrl = "http://vncenter.daojmengxvn.com:11000/center/eventreport.php?";  | 
|   | 
|     public void BugReport(string _title, string _content)  | 
|     {  | 
|         var tables = new Dictionary<string, string>();  | 
|         tables["OperatorID"] = VersionConfig.Get().appId;  | 
|         tables["RegionName"] = "data";  | 
|         tables["RegionID"] = ServerListCenter.Instance.currentServer.region_flag.ToString();  | 
|         tables["EventID"] = 9002.ToString();  | 
|         tables["ProductID"] = VersionConfig.Get().gameId;  | 
|         tables["Time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|         tables["IP"] = DeviceUtility.GetIp();  | 
|         tables["AccountID"] = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account;  | 
|         tables["Level"] = PlayerDatas.Instance.baseData.LV.ToString();  | 
|         tables["RoleID"] = PlayerDatas.Instance.baseData.PlayerName;  | 
|         tables["VIPLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString();  | 
|         tables["DeviceFlag"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
|   | 
|         var contentPrefix = StringUtility.Contact("IMEI:", DeviceUtility.GetDeviceUniquenessIdentify(), ";");  | 
|         contentPrefix = StringUtility.Contact(contentPrefix, "Version:", StringUtility.Contact(VersionConfig.Get().version, "_",   | 
|             VersionConfig.Get().buildIndex), Language.Id, ";");  | 
|         contentPrefix = StringUtility.Contact(contentPrefix, "Brand:", DeviceUtility.GetDeviceName(), ";");  | 
|         contentPrefix = StringUtility.Contact(contentPrefix, "MI5:", DeviceUtility.GetDeviceModel(), ";");  | 
|         contentPrefix = StringUtility.Contact(contentPrefix, "os_version:", DeviceUtility.GetDeviceOSLevel(), ";");  | 
|   | 
|         tables["Title"] = _title;  | 
|         tables["Content"] = _content;  | 
|         tables["ClientInfo"] = contentPrefix;  | 
|   | 
|         HttpRequest.Instance.RequestHttpGet(StringUtility.Contact(bugReportUrl, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);  | 
|   | 
|     }  | 
|   | 
|     public void BugReportSys( string _content)  | 
|     {  | 
|         try  | 
|         {  | 
|             var tables = new Dictionary<string, string>();  | 
|             tables["OperatorID"] = VersionConfig.Get().appId;  | 
|             tables["RegionName"] = "data";  | 
|             tables["RegionID"] = "10000";  | 
|             tables["EventID"] = 9002.ToString();  | 
|             tables["ProductID"] = VersionConfig.Get().gameId;  | 
|             tables["Time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|             tables["IP"] = DeviceUtility.GetIp();  | 
|             tables["AccountID"] = "system";  | 
|             tables["Level"] = "1";  | 
|             tables["RoleID"] = "system";  | 
|             tables["VIPLevel"] = "1";  | 
|             tables["DeviceFlag"] = ynmbxxjUtil.Instance.Device.uniqueID;  | 
|   | 
|             var contentPrefix = StringUtility.Contact("IMEI:", DeviceUtility.GetDeviceUniquenessIdentify(), ";");  | 
|             contentPrefix = StringUtility.Contact(contentPrefix, "Version:", StringUtility.Contact(VersionConfig.Get().version, "_",  | 
|                 VersionConfig.Get().buildIndex), Language.Id, ";");  | 
|             contentPrefix = StringUtility.Contact(contentPrefix, "Brand:", DeviceUtility.GetDeviceName(), ";");  | 
|             contentPrefix = StringUtility.Contact(contentPrefix, "MI5:", DeviceUtility.GetDeviceModel(), ";");  | 
|             contentPrefix = StringUtility.Contact(contentPrefix, "os_version:", DeviceUtility.GetDeviceOSLevel(), ";");  | 
|   | 
|             tables["Title"] = "system";  | 
|             _content = _content.Replace("0000", "");  | 
|             if (ConfigInitiator.done && DTC0102_tagCDBPlayer.playerIdBuf != 0 && ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult != null && !string.IsNullOrEmpty(ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account))  | 
|                 _content = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account + _content;  | 
|             tables["Content"] = _content.Substring(0, Math.Min(800, _content.Length));  | 
|             tables["ClientInfo"] = contentPrefix;  | 
|   | 
|             HttpRequest.Instance.RequestHttpGet(StringUtility.Contact(bugReportUrl, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);  | 
|         }  | 
|         catch (System.Exception ex)  | 
|         {  | 
|             Debug.LogError("BugReportSys error" + ex);  | 
|         }  | 
|   | 
|     }  | 
|   | 
|   | 
|     const string chatReportUrl = "http://vncenter.daojmengxvn.com:11000/center/eventreport.php?";  | 
|     public void ChatReport(string content, string channelName, string toPlayer, ChatInfoType chatType)  | 
|     {  | 
| #if !UNITY_EDITOR  | 
|         bool isFairy = chatType == ChatInfoType.Fairy;  | 
|         var tables = new Dictionary<string, string>();  | 
|         tables["ProductID"] = VersionConfig.Get().gameId;  | 
|         tables["OperatorID"] = VersionConfig.Get().appId;  | 
|         tables["OperatorName"] = string.Empty;  | 
|         tables["RegionName"] = StringUtility.Contact("s", ServerListCenter.Instance.currentServer.region_flag);  | 
|         tables["RegionID"] = ServerListCenter.Instance.currentServer.region_flag.ToString();  | 
|         tables["EventID"] = 9003.ToString();  | 
|         tables["Time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");  | 
|         tables["IP"] = DeviceUtility.GetIp();  | 
|         tables["ChatChannel"] = channelName;  | 
|         var sdkLoginResult = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult;  | 
|         tables["AccountID"] = sdkLoginResult == null ? string.Empty : sdkLoginResult.account;  | 
|         tables["RoleID"] = StringUtility.Contact(isFairy ? UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.FamilyName) : string.Empty,  | 
|            isFairy ? "-" : string.Empty, UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName));  | 
|         tables["ToRoleID"] = UIHelper.ServerStringTrim(toPlayer);  | 
|         tables["Level"] = PlayerDatas.Instance.baseData.LV.ToString();  | 
|         tables["VIPLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString();  | 
|         tables["Content"] = WWW.EscapeURL(UIHelper.TrimContentToServer(content));  | 
|         tables["DeviceFlag"] = ynmbxxjUtil.Instance.Device == null ? string.Empty : ynmbxxjUtil.Instance.Device.uniqueID;  | 
|   | 
|         HttpRequest.Instance.RequestHttpGet(StringUtility.Contact(chatReportUrl, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);  | 
| #endif  | 
|     }  | 
|   | 
| }  |