Browse Source

ghi log và chỉnh ngôn ngữ pick 10

student 14 hours ago
parent
commit
af72b0fe74

+ 50 - 16
website/Areas/LotteryV2/Controllers/HomeController.cs

@@ -683,29 +683,28 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
         {
             try
             {
+                log.Info($"[ConfirmTicketData] START - Request: {JsonConvert.SerializeObject(request)}");
                 var token = HttpContext.Session.GetComplexData<string>("token");
                 var msisdn = HttpContext.Session.GetComplexData<string>("msisdn");
-                if (string.IsNullOrEmpty(token)) return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                if (string.IsNullOrEmpty(token))
+                {
+                    log.Info("[ConfirmTicketData] Session expired");
+                    return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                }
 
                 request.token = token;
                 request.msisdn = msisdn;
                 request.language = CultureInfo.CurrentCulture.Name.StartsWith("en") ? "0" : "1";
                 request.requestId = Guid.NewGuid().ToString();
 
-                // DEBUG: Log request data
-                var ticketDebug = request.ticket != null ? string.Join("; ", request.ticket.Select(t => $"code={t.code}, money={t.money}")) : "NULL";
-                log.Info($"[ConfirmTicketData] gameId={request.gameId}, msisdn={request.msisdn}, tickets=[{ticketDebug}]");
-
                 ConfirmTicketDataResponse response = api.ConfirmTicketDataApi(configuration, request);
-                
-                // DEBUG: Log response
-                log.Info($"[ConfirmTicketData] Response: code={response.responseCode}, msg={response.responseMessage}, transId={response.transId}");
+                log.Info($"[ConfirmTicketData] Call ConfirmTicketDataApi Response: {JsonConvert.SerializeObject(response)}");
                 
                 return Json(response);
             }
             catch (Exception ex)
             {
-                log.Error(ex);
+                log.Error("[ConfirmTicketData] EXCEPTION: ", ex);
                 return Json(new { responseCode = Code.ERROR, responseMessage = ex.Message });
             }
         }
@@ -715,19 +714,25 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
         {
             try
             {
+                log.Info($"[ConfirmOTP] START - Request: {JsonConvert.SerializeObject(request)}");
                 var token = HttpContext.Session.GetComplexData<string>("token");
                 var msisdn = HttpContext.Session.GetComplexData<string>("msisdn");
-                if (string.IsNullOrEmpty(token)) return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                if (string.IsNullOrEmpty(token))
+                {
+                    log.Info("[ConfirmOTP] Session expired");
+                    return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                }
 
                 request.token = token;
                 request.msisdn = msisdn;
 
                 ConfirmOTPResponse response = api.ConfirmOTPApi(configuration, request);
+                log.Info($"[ConfirmOTP] Call ConfirmOTPApi Response: {JsonConvert.SerializeObject(response)}");
                 return Json(response);
             }
             catch (Exception ex)
             {
-                log.Error(ex);
+                log.Error("[ConfirmOTP] EXCEPTION: ", ex);
                 return Json(new { responseCode = Code.ERROR, responseMessage = ex.Message });
             }
         }
@@ -737,9 +742,14 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
         {
             try
             {
+                log.Info("[SendOTP] START");
                 var token = HttpContext.Session.GetComplexData<string>("token");
                 var msisdn = HttpContext.Session.GetComplexData<string>("msisdn");
-                if (string.IsNullOrEmpty(token)) return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                if (string.IsNullOrEmpty(token))
+                {
+                    log.Info("[SendOTP] Session expired");
+                    return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                }
 
                 SendOTPRequest request = new SendOTPRequest
                 {
@@ -748,13 +758,15 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
                     language = CultureInfo.CurrentCulture.Name.StartsWith("en") ? "0" : "1",
                     channel = configuration.GetSection("channel").Value
                 };
+                log.Info($"[SendOTP] Call SendOTPApi Request: {JsonConvert.SerializeObject(request)}");
 
                 SendOTPResponse response = api.SendOTPApi(configuration, request);
+                log.Info($"[SendOTP] Call SendOTPApi Response: {JsonConvert.SerializeObject(response)}");
                 return Json(response);
             }
             catch (Exception ex)
             {
-                log.Error(ex);
+                log.Error("[SendOTP] EXCEPTION: ", ex);
                 return Json(new { responseCode = Code.ERROR, responseMessage = ex.Message });
             }
         }
@@ -764,9 +776,14 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
         {
             try
             {
+                log.Info($"[ConfirmBuyingTicketV2] START - Request: {JsonConvert.SerializeObject(request)}");
                 var token = HttpContext.Session.GetComplexData<string>("token");
                 var msisdn = HttpContext.Session.GetComplexData<string>("msisdn");
-                if (string.IsNullOrEmpty(token)) return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                if (string.IsNullOrEmpty(token))
+                {
+                    log.Info("[ConfirmBuyingTicketV2] Session expired");
+                    return Json(new { responseCode = Code.SESSION_EXPIRED, responseMessage = "Session expired" });
+                }
 
                 // Step 1: Verify OTP first
                 ConfirmOTPRequest otpRequest = new ConfirmOTPRequest
@@ -777,10 +794,14 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
                     language = CultureInfo.CurrentCulture.Name.StartsWith("en") ? "0" : "1",
                     channel = configuration.GetSection("channel").Value
                 };
+                log.Info($"[ConfirmBuyingTicketV2] Call ConfirmOTPApi Request: {JsonConvert.SerializeObject(otpRequest)}");
+
                 ConfirmOTPResponse otpResponse = api.ConfirmOTPApi(configuration, otpRequest);
+                log.Info($"[ConfirmBuyingTicketV2] Call ConfirmOTPApi Response: {JsonConvert.SerializeObject(otpResponse)}");
 
                 if (otpResponse.responseCode != Code.SUCCESS)
                 {
+                    log.Info($"[ConfirmBuyingTicketV2] OTP Verification Failed: {otpResponse.responseMessage}");
                     return Json(new { responseCode = otpResponse.responseCode, responseMessage = otpResponse.responseMessage });
                 }
 
@@ -791,16 +812,23 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
                 request.language = CultureInfo.CurrentCulture.Name.StartsWith("en") ? "0" : "1";
                 request.channel = configuration.GetSection("channel").Value;
 
+                log.Info($"[ConfirmBuyingTicketV2] Call ConfirmBuyingTicketApi Request: {JsonConvert.SerializeObject(request)}");
+
                 ConfirmBuyingTicketResponse response = api.ConfirmBuyingTicketApi(configuration, request);
+                log.Info($"[ConfirmBuyingTicketV2] Call ConfirmBuyingTicketApi Response: {JsonConvert.SerializeObject(response)}");
+
                 if (response.responseCode == Code.SUCCESS)
                 {
+                    log.Info($"[ConfirmBuyingTicketV2] Payment Success. Updating user status for {msisdn}");
                     UpdateUserStatus(msisdn, token);
                 }
+
+                log.Info($"[ConfirmBuyingTicketV2] END - Result: {JsonConvert.SerializeObject(response)}");
                 return Json(response);
             }
             catch (Exception ex)
             {
-                log.Error(ex);
+                log.Error("[ConfirmBuyingTicketV2] EXCEPTION: ", ex);
                 return Json(new { responseCode = Code.ERROR, responseMessage = ex.Message });
             }
         }
@@ -993,16 +1021,22 @@ namespace LotteryWebApp.Areas.LotteryV2.Controllers
         {
             try
             {
+                log.Info($"[UpdateUserStatus] START - msisdn: {msisdn}");
                 UserStatusRequest userStatusRequest = new UserStatusRequest { users = msisdn, token = token };
+                log.Info($"[UpdateUserStatus] Call GetUserStatusApi Request: {JsonConvert.SerializeObject(userStatusRequest)}");
+                
                 UserStatus userStatusGet = api.GetUserStatusApi(configuration, userStatusRequest);
+                log.Info($"[UpdateUserStatus] Call GetUserStatusApi Response: {JsonConvert.SerializeObject(userStatusGet)}");
+                
                 if (userStatusGet != null)
                 {
                     HttpContext.Session.SetComplexData("userStatus", userStatusGet);
                 }
+                log.Info("[UpdateUserStatus] END");
             }
             catch (Exception ex)
             {
-                log.Error("UpdateUserStatus Error: " + ex.Message);
+                log.Error("[UpdateUserStatus] EXCEPTION: ", ex);
             }
         }
 

+ 1 - 1
website/Languages/Lang.Designer.cs

@@ -1252,7 +1252,7 @@ namespace LotteryWebApp.Languages {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to 100.000 HTG jodia  !.
+        ///   Looks up a localized string similar to 1000.000 HTG jodia  !.
         /// </summary>
         public static string jackpot_today_htg {
             get {

+ 1 - 1
website/Languages/Lang.fr.resx

@@ -1188,7 +1188,7 @@ We’ll help you create an account in a few easy steps.</value>
     <value>Une erreur est survenue lors de la mise à jour de votre profil.</value>
   </data>
   <data name="jackpot_today_htg" xml:space="preserve">
-    <value>100.000 HTG today !</value>
+    <value>1000.000 HTG today !</value>
   </data>
   <data name="no_results_found" xml:space="preserve">
     <value>No results found</value>

+ 2 - 2
website/Languages/Lang.resx

@@ -1092,7 +1092,7 @@ We’ll help you create an account in a few easy steps.</value>
     <value>Tike ki genyen yo resevwa 2 fwa kantite lajan yo te parye a.</value>
   </data>
   <data name="rule_example_bet_50" xml:space="preserve">
-    <value></value>
+    <value />
   </data>
   <data name="rule_how_result_determined" xml:space="preserve">
     <value>Kijan yo detemine rezilta gayan an</value>
@@ -1190,7 +1190,7 @@ Rezilta ofisyel la se &lt;span class="text-[#A236C8]"&gt;ODD&lt;/span&gt;.</valu
     <value>Gen yon ere. Nan mizajou pwofil la</value>
   </data>
   <data name="jackpot_today_htg" xml:space="preserve">
-    <value>100.000 HTG jodia  !</value>
+    <value>1000.000 HTG jodia  !</value>
   </data>
   <data name="no_results_found" xml:space="preserve">
     <value>Pagen rezilta</value>