Browse Source

no message

student 3 tuần trước cách đây
mục cha
commit
503f34c5b1

+ 0 - 1
Kitty_Fall/Kitty_Fall/Kitty_Fall.Apis/Business/User/UserBusinessImpl.cs

@@ -320,7 +320,6 @@ namespace Kitty_Fall.Apis.Business.User
                     .RegInfos.AsNoTracking().Where(
                         x => x.Msisdn == msisdn
                             && x.Status == true
-                            && x.Renew == 1
                             
                     )
                     .OrderByDescending(x => x.RegisterTime)

+ 28 - 0
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/Language/Lang.Designer.cs

@@ -1294,5 +1294,33 @@ namespace Kitty_Fall.Website.Language {
                 return ResourceManager.GetString("AccountTotalLoyaltyPoints", resourceCulture);
             }
         }
+
+        public static string AccountTitle => ResourceManager.GetString("AccountTitle", resourceCulture);
+        public static string AccountCloseMenu => ResourceManager.GetString("AccountCloseMenu", resourceCulture);
+        public static string AccountPhoneNumber => ResourceManager.GetString("AccountPhoneNumber", resourceCulture);
+        public static string AccountDefaultDescription => ResourceManager.GetString("AccountDefaultDescription", resourceCulture);
+        public static string AccountTotalThisMonth => ResourceManager.GetString("AccountTotalThisMonth", resourceCulture);
+        public static string AccountPoints => ResourceManager.GetString("AccountPoints", resourceCulture);
+        public static string AccountTotalPoints => ResourceManager.GetString("AccountTotalPoints", resourceCulture);
+        public static string AccountDataMb => ResourceManager.GetString("AccountDataMb", resourceCulture);
+        public static string AccountTotalDataWon => ResourceManager.GetString("AccountTotalDataWon", resourceCulture);
+        public static string AccountMonthlySummary => ResourceManager.GetString("AccountMonthlySummary", resourceCulture);
+        public static string AccountCurrentPackage => ResourceManager.GetString("AccountCurrentPackage", resourceCulture);
+        public static string AccountActiveSubscription => ResourceManager.GetString("AccountActiveSubscription", resourceCulture);
+        public static string AccountNoActivePackage => ResourceManager.GetString("AccountNoActivePackage", resourceCulture);
+        public static string AccountDailyPackage => ResourceManager.GetString("AccountDailyPackage", resourceCulture);
+        public static string AccountPlaysPerDay => ResourceManager.GetString("AccountPlaysPerDay", resourceCulture);
+        public static string AccountExpires => ResourceManager.GetString("AccountExpires", resourceCulture);
+        public static string AccountAutoRenew => ResourceManager.GetString("AccountAutoRenew", resourceCulture);
+        public static string AccountSubscribedSince => ResourceManager.GetString("AccountSubscribedSince", resourceCulture);
+        public static string AccountSubscriptionUnavailable => ResourceManager.GetString("AccountSubscriptionUnavailable", resourceCulture);
+        public static string AccountHowToCancel => ResourceManager.GetString("AccountHowToCancel", resourceCulture);
+        public static string AccountCancelInstruction => ResourceManager.GetString("AccountCancelInstruction", resourceCulture);
+        public static string AccountCancelCommand => ResourceManager.GetString("AccountCancelCommand", resourceCulture);
+        public static string AccountFollowInstructions => ResourceManager.GetString("AccountFollowInstructions", resourceCulture);
+        public static string AccountLanguage => ResourceManager.GetString("AccountLanguage", resourceCulture);
+        public static string AccountEnglish => ResourceManager.GetString("AccountEnglish", resourceCulture);
+        public static string AccountMyanmar => ResourceManager.GetString("AccountMyanmar", resourceCulture);
+        public static string AccountSecurityNote => ResourceManager.GetString("AccountSecurityNote", resourceCulture);
     }
 }

+ 81 - 0
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/Language/Lang.resx

@@ -549,4 +549,85 @@
   <data name="AccountTotalLoyaltyPoints" xml:space="preserve">
     <value>Total loyalty points</value>
   </data>
+  <data name="AccountTitle" xml:space="preserve">
+    <value>ACCOUNT</value>
+  </data>
+  <data name="AccountCloseMenu" xml:space="preserve">
+    <value>Close account menu</value>
+  </data>
+  <data name="AccountPhoneNumber" xml:space="preserve">
+    <value>ACCOUNT (PHONE NUMBER)</value>
+  </data>
+  <data name="AccountDefaultDescription" xml:space="preserve">
+    <value>This is your default account.</value>
+  </data>
+  <data name="AccountTotalThisMonth" xml:space="preserve">
+    <value>TOTAL THIS MONTH</value>
+  </data>
+  <data name="AccountPoints" xml:space="preserve">
+    <value>POINTS</value>
+  </data>
+  <data name="AccountTotalPoints" xml:space="preserve">
+    <value>Total points</value>
+  </data>
+  <data name="AccountDataMb" xml:space="preserve">
+    <value>DATA (MB)</value>
+  </data>
+  <data name="AccountTotalDataWon" xml:space="preserve">
+    <value>Total data won</value>
+  </data>
+  <data name="AccountMonthlySummary" xml:space="preserve">
+    <value>Points, data and rewards are accumulated from {0} - {1} and reset monthly.</value>
+  </data>
+  <data name="AccountCurrentPackage" xml:space="preserve">
+    <value>CURRENT PACKAGE</value>
+  </data>
+  <data name="AccountActiveSubscription" xml:space="preserve">
+    <value>ACTIVE SUBSCRIPTION</value>
+  </data>
+  <data name="AccountNoActivePackage" xml:space="preserve">
+    <value>No active package</value>
+  </data>
+  <data name="AccountDailyPackage" xml:space="preserve">
+    <value>Daily Package</value>
+  </data>
+  <data name="AccountPlaysPerDay" xml:space="preserve">
+    <value>{0} plays per day</value>
+  </data>
+  <data name="AccountExpires" xml:space="preserve">
+    <value>Expires {0}</value>
+  </data>
+  <data name="AccountAutoRenew" xml:space="preserve">
+    <value>Auto renew</value>
+  </data>
+  <data name="AccountSubscribedSince" xml:space="preserve">
+    <value>Subscribed since {0}</value>
+  </data>
+  <data name="AccountSubscriptionUnavailable" xml:space="preserve">
+    <value>Subscription information is not available.</value>
+  </data>
+  <data name="AccountHowToCancel" xml:space="preserve">
+    <value>HOW TO CANCEL</value>
+  </data>
+  <data name="AccountCancelInstruction" xml:space="preserve">
+    <value>If you want to cancel the service, please send</value>
+  </data>
+  <data name="AccountCancelCommand" xml:space="preserve">
+    <value>{0} to {1}</value>
+  </data>
+  <data name="AccountFollowInstructions" xml:space="preserve">
+    <value>and follow the instructions.</value>
+  </data>
+  <data name="AccountLanguage" xml:space="preserve">
+    <value>LANGUAGE</value>
+  </data>
+  <data name="AccountEnglish" xml:space="preserve">
+    <value>ENGLISH</value>
+  </data>
+  <data name="AccountMyanmar" xml:space="preserve">
+    <value>MYANMAR</value>
+  </data>
+  <data name="AccountSecurityNote" xml:space="preserve">
+    <value>Your game experience and rewards are saved to this account securely.</value>
+  </data>
 </root>

+ 81 - 0
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/Language/Lang.vi.resx

@@ -549,4 +549,85 @@
   <data name="AccountTotalLoyaltyPoints" xml:space="preserve">
     <value>Total loyalty points</value>
   </data>
+  <data name="AccountTitle" xml:space="preserve">
+    <value>အကောင့်</value>
+  </data>
+  <data name="AccountCloseMenu" xml:space="preserve">
+    <value>အကောင့်မီနူး ပိတ်ရန်</value>
+  </data>
+  <data name="AccountPhoneNumber" xml:space="preserve">
+    <value>အကောင့် (ဖုန်းနံပါတ်)</value>
+  </data>
+  <data name="AccountDefaultDescription" xml:space="preserve">
+    <value>ဤအကောင့်သည် သင်၏ မူလအကောင့်ဖြစ်သည်။</value>
+  </data>
+  <data name="AccountTotalThisMonth" xml:space="preserve">
+    <value>ယခုလ စုစုပေါင်း</value>
+  </data>
+  <data name="AccountPoints" xml:space="preserve">
+    <value>အမှတ်များ</value>
+  </data>
+  <data name="AccountTotalPoints" xml:space="preserve">
+    <value>စုစုပေါင်းအမှတ်</value>
+  </data>
+  <data name="AccountDataMb" xml:space="preserve">
+    <value>ဒေတာ (MB)</value>
+  </data>
+  <data name="AccountTotalDataWon" xml:space="preserve">
+    <value>ရရှိသောဒေတာစုစုပေါင်း</value>
+  </data>
+  <data name="AccountMonthlySummary" xml:space="preserve">
+    <value>အမှတ်၊ ဒေတာနှင့် ဆုများကို {0} မှ {1} အထိ စုဆောင်းပြီး လစဉ် ပြန်လည်သတ်မှတ်ပါသည်။</value>
+  </data>
+  <data name="AccountCurrentPackage" xml:space="preserve">
+    <value>လက်ရှိပက်ကေ့ချ်</value>
+  </data>
+  <data name="AccountActiveSubscription" xml:space="preserve">
+    <value>အသုံးပြုနေသော စာရင်းသွင်းမှု</value>
+  </data>
+  <data name="AccountNoActivePackage" xml:space="preserve">
+    <value>လက်ရှိပက်ကေ့ချ်မရှိပါ</value>
+  </data>
+  <data name="AccountDailyPackage" xml:space="preserve">
+    <value>နေ့စဉ်ပက်ကေ့ချ်</value>
+  </data>
+  <data name="AccountPlaysPerDay" xml:space="preserve">
+    <value>တစ်ရက်လျှင် {0} ကြိမ်</value>
+  </data>
+  <data name="AccountExpires" xml:space="preserve">
+    <value>သက်တမ်းကုန်ဆုံးရက် {0}</value>
+  </data>
+  <data name="AccountAutoRenew" xml:space="preserve">
+    <value>အလိုအလျောက်သက်တမ်းတိုး</value>
+  </data>
+  <data name="AccountSubscribedSince" xml:space="preserve">
+    <value>စာရင်းသွင်းသည့်နေ့ {0}</value>
+  </data>
+  <data name="AccountSubscriptionUnavailable" xml:space="preserve">
+    <value>စာရင်းသွင်းမှုအချက်အလက် မရရှိနိုင်ပါ။</value>
+  </data>
+  <data name="AccountHowToCancel" xml:space="preserve">
+    <value>ပယ်ဖျက်နည်း</value>
+  </data>
+  <data name="AccountCancelInstruction" xml:space="preserve">
+    <value>ဝန်ဆောင်မှုကို ပယ်ဖျက်လိုပါက ပေးပို့ပါ</value>
+  </data>
+  <data name="AccountCancelCommand" xml:space="preserve">
+    <value>{0} ကို {1} သို့</value>
+  </data>
+  <data name="AccountFollowInstructions" xml:space="preserve">
+    <value>ပြီးနောက် ညွှန်ကြားချက်များကို လိုက်နာပါ။</value>
+  </data>
+  <data name="AccountLanguage" xml:space="preserve">
+    <value>ဘာသာစကား</value>
+  </data>
+  <data name="AccountEnglish" xml:space="preserve">
+    <value>အင်္ဂလိပ်</value>
+  </data>
+  <data name="AccountMyanmar" xml:space="preserve">
+    <value>မြန်မာ</value>
+  </data>
+  <data name="AccountSecurityNote" xml:space="preserve">
+    <value>သင့်ဂိမ်းအတွေ့အကြုံနှင့် ဆုများကို ဤအကောင့်တွင် လုံခြုံစွာ သိမ်းဆည်းထားပါသည်။</value>
+  </data>
 </root>

+ 32 - 1
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/Views/Shared/_Layout.cshtml

@@ -42,6 +42,12 @@
                 ? "Daily Package"
                 : packageNameRaw.Replace("_", " ");
     var packageTurns = (activeReg?["numberSpin"] ?? activeReg?["NumberSpin"])?.ToString() ?? "0";
+    var packageRegisterText = (activeReg?["registerTime"] ?? activeReg?["RegisterTime"])?.ToString();
+    var packageExpireText = (activeReg?["expireTime"] ?? activeReg?["ExpireTime"])?.ToString();
+    var packageRenewText = (activeReg?["renew"] ?? activeReg?["Renew"])?.ToString();
+    var hasPackageRegisterTime = DateTime.TryParse(packageRegisterText, out var packageRegisterTime);
+    var hasPackageExpireTime = DateTime.TryParse(packageExpireText, out var packageExpireTime);
+    var isPackageRenewing = byte.TryParse(packageRenewText, out var packageRenewValue) && packageRenewValue == 1;
     var cancelKeyword = Configuration["AccountMenu:CancelKeyword"] ?? "OFF";
     var cancelShortCode = Configuration["AccountMenu:CancelShortCode"] ?? "562";
     var monthStart = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
@@ -89,7 +95,32 @@
 
                 <section class="account-package-card">
                     <span class="account-section-icon">★</span>
-                    <div><small>CURRENT PACKAGE</small><strong>@packageName</strong><p>@packageTurns plays per day</p></div>
+                    <div class="account-package-info">
+                        <small>CURRENT PACKAGE @if (activeReg != null) { <b>ACTIVE SUBSCRIPTION</b> }</small>
+                        <strong>@packageName</strong>
+                        @if (activeReg != null)
+                        {
+                            <p>
+                                @packageTurns plays per day
+                                @if (hasPackageExpireTime)
+                                {
+                                    <span>• Expires @packageExpireTime.ToString("dd/MM/yyyy")</span>
+                                }
+                                else if (isPackageRenewing)
+                                {
+                                    <span>• Auto renew</span>
+                                }
+                            </p>
+                            @if (hasPackageRegisterTime)
+                            {
+                                <em>Subscribed since @packageRegisterTime.ToString("dd/MM/yyyy")</em>
+                            }
+                        }
+                        else
+                        {
+                            <p>Subscription information is not available.</p>
+                        }
+                    </div>
                 </section>
 
                 <section class="account-cancel-card">

+ 35 - 0
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/wwwroot/kitty/css/all.min.css

@@ -4652,3 +4652,38 @@ body.has-account-menu {
         width: 98px;
     }
 }
+
+
+.account-package-card {
+    min-height: 92px;
+}
+
+.account-package-info small {
+    display: flex;
+    align-items: center;
+    flex-wrap: wrap;
+    gap: 6px;
+}
+
+.account-package-info small b {
+    border-radius: 9px;
+    padding: 2px 7px;
+    background: #27ad47;
+    color: #fff;
+    font-size: 7px;
+    line-height: 1.2;
+    letter-spacing: .2px;
+}
+
+.account-package-info p span {
+    white-space: nowrap;
+}
+
+.account-package-info em {
+    display: block;
+    margin-top: 4px;
+    color: #5e7665;
+    font-size: 8px;
+    line-height: 1.1;
+    font-style: normal;
+}

+ 35 - 0
Kitty_Fall/Kitty_Fall/Kitty_Fall.Website/wwwroot/kitty/css/input.css

@@ -4652,3 +4652,38 @@ body.has-account-menu {
         width: 98px;
     }
 }
+
+
+.account-package-card {
+    min-height: 92px;
+}
+
+.account-package-info small {
+    display: flex;
+    align-items: center;
+    flex-wrap: wrap;
+    gap: 6px;
+}
+
+.account-package-info small b {
+    border-radius: 9px;
+    padding: 2px 7px;
+    background: #27ad47;
+    color: #fff;
+    font-size: 7px;
+    line-height: 1.2;
+    letter-spacing: .2px;
+}
+
+.account-package-info p span {
+    white-space: nowrap;
+}
+
+.account-package-info em {
+    display: block;
+    margin-top: 4px;
+    color: #5e7665;
+    font-size: 8px;
+    line-height: 1.1;
+    font-style: normal;
+}