فهرست منبع

助力包每月最大固定额度调整

lcl 9 ماه پیش
والد
کامیت
9a6b320293
1فایلهای تغییر یافته به همراه53 افزوده شده و 26 حذف شده
  1. 53 26
      AppStart/Helper/StatHelpProfitService.cs

+ 53 - 26
AppStart/Helper/StatHelpProfitService.cs

@@ -543,7 +543,7 @@ namespace MySystem
         {
             while (true)
             {
-                if (DateTime.Now.Day == 1 && DateTime.Now.Hour > 0 && DateTime.Now.Hour < 3)
+                if (DateTime.Now.Day == 1 && DateTime.Now.Hour > 0 && DateTime.Now.Hour < 3 && DateTime.Now < DateTime.Parse("2025-10-02 00:00:00"))
                 {
                     string TradeMonth = DateTime.Now.ToString("yyyyMM");
                     ResetMaxTradeAmountGo(TradeMonth);
@@ -568,34 +568,61 @@ namespace MySystem
                         int UserId = int.Parse(user["UserId"].ToString());
                         int MonthCount = db.HelpProfitAmountSummary.Count(m => m.UserId == UserId) + 1;
                         int Month = MonthCount;
-                        List<int> MerCounts = new List<int>(); //每月台数,包含当月
-                        List<decimal> MaxTradeAmounts = new List<decimal>(); //每月最大固定额度
-                        List<HelpProfitAmountSummary> Summarys = db.HelpProfitAmountSummary.Where(m => m.UserId == UserId && Convert.ToInt32(m.TradeMonth) <= Convert.ToInt32(TradeMonth)).OrderByDescending(m => m.TradeMonth).Take(36).ToList();
-                        int MonthNum = 0;
-                        foreach(HelpProfitAmountSummary Summary in Summarys)
-                        {
-                            MonthNum += 1;
-                            MerCounts.Add(Summary.MerCount);
-                            MaxTradeAmounts.Add(EveryMonthFixedVal()[MonthNum]);
-                        }
-                        decimal MaxTradeAmount = 0;
-                        for (int i = 0; i < MerCounts.Count; i++)
-                        {
-                            MaxTradeAmount += MerCounts[i] * MaxTradeAmounts[i];
-                        }
-                        HelpProfitAmountSummary selfStat = db.HelpProfitAmountSummary.FirstOrDefault(m => m.UserId == UserId && m.TradeMonth == TradeMonth);
-                        if(selfStat == null)
+                        // List<int> MerCounts = new List<int>(); //每月台数,包含当月
+                        // List<decimal> MaxTradeAmounts = new List<decimal>(); //每月最大固定额度
+                        // List<HelpProfitAmountSummary> Summarys = db.HelpProfitAmountSummary.Where(m => m.UserId == UserId && Convert.ToInt32(m.TradeMonth) <= Convert.ToInt32(TradeMonth)).OrderByDescending(m => m.TradeMonth).Take(36).ToList();
+                        // int MonthNum = 0;
+                        // foreach(HelpProfitAmountSummary Summary in Summarys)
+                        // {
+                        //     MonthNum += 1;
+                        //     MerCounts.Add(Summary.MerCount);
+                        //     MaxTradeAmounts.Add(EveryMonthFixedVal()[MonthNum]);
+                        // }
+                        // decimal MaxTradeAmount = 0;
+                        // for (int i = 0; i < MerCounts.Count; i++)
+                        // {
+                        //     MaxTradeAmount += MerCounts[i] * MaxTradeAmounts[i];
+                        // }
+                        // HelpProfitAmountSummary selfStat = db.HelpProfitAmountSummary.FirstOrDefault(m => m.UserId == UserId && m.TradeMonth == TradeMonth);
+                        // if(selfStat == null)
+                        // {
+                        //     selfStat = db.HelpProfitAmountSummary.Add(new HelpProfitAmountSummary()
+                        //     {
+                        //         UserId = UserId,
+                        //         TradeMonth = TradeMonth,
+                        //         QueryCount = MonthCount,
+                        //     }).Entity;
+                        //     db.SaveChanges();
+                        // }
+                        // selfStat.MaxAmount = MaxTradeAmount;
+                        // function.WriteLog("update HelpProfitAmountSummary set MaxAmount=" + MaxTradeAmount + " where UserId=" + UserId + " and TradeMonth='" + TradeMonth + "';", "重置助利宝最大交易额");
+                        HelpProfitAmountSummary rootStat = db.HelpProfitAmountSummary.FirstOrDefault(m => m.UserId == UserId && m.TradeMonth == "202501");
+                        if(rootStat != null)
                         {
-                            selfStat = db.HelpProfitAmountSummary.Add(new HelpProfitAmountSummary()
+                            decimal amt = rootStat.MaxAmount / 9;
+                            decimal min = amt * 0.08M;
+                            decimal max = amt * 1.02M;
+                            amt = function.get_Random((int)min, (int)max);
+                            HelpProfitAmountSummary selfStat = db.HelpProfitAmountSummary.FirstOrDefault(m => m.UserId == UserId && m.TradeMonth == TradeMonth);
+                            if(selfStat == null)
                             {
-                                UserId = UserId,
-                                TradeMonth = TradeMonth,
-                                QueryCount = MonthCount,
-                            }).Entity;
-                            db.SaveChanges();
+                                selfStat = db.HelpProfitAmountSummary.Add(new HelpProfitAmountSummary()
+                                {
+                                    UserId = UserId,
+                                    TradeMonth = TradeMonth,
+                                    QueryCount = MonthCount,
+                                }).Entity;
+                                db.SaveChanges();
+                            }
+                            if(TradeMonth == "202510")
+                            {
+                                selfStat.MaxAmount = amt;
+                            }
+                            else
+                            {
+                                selfStat.MaxAmount = rootStat.MaxAmount - amt * (int.Parse(TradeMonth.Substring(4,2)) - 1);
+                            }
                         }
-                        selfStat.MaxAmount = MaxTradeAmount;
-                        // function.WriteLog("update HelpProfitAmountSummary set MaxAmount=" + MaxTradeAmount + " where UserId=" + UserId + " and TradeMonth='" + TradeMonth + "';", "重置助利宝最大交易额");
                     }
                     db.SaveChanges();
                     db.Dispose();