Просмотр исходного кода

收支明细分表数据提交

lcl 2 лет назад
Родитель
Сommit
c48fb54b29

+ 15 - 12
AppStart/ExcelHelper.cs

@@ -1114,7 +1114,7 @@ namespace MySystem
                                                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                                                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                                                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                                        db.UserAccountRecord.Add(new UserAccountRecord()
+                                                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                                                         {
                                                             CreateDate = DateTime.Now,
                                                             UpdateDate = DateTime.Now,
@@ -1128,9 +1128,10 @@ namespace MySystem
                                                             AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
                                                             BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                                             AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                                        });
+                                                        }).Entity;
                                                         db.SaveChanges();
                                                         RedisDbconn.Instance.Set("UserAccount:" + edit.UserId, account);
+                                                        PublicFunction.SplitUserAccountRecord(add);
                                                     }
                                                 }
                                                 db.SaveChanges();
@@ -1158,7 +1159,7 @@ namespace MySystem
                                                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                                                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                                                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                                        db.UserAccountRecord.Add(new UserAccountRecord()
+                                                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                                                         {
                                                             CreateDate = DateTime.Now,
                                                             UpdateDate = DateTime.Now,
@@ -1172,8 +1173,8 @@ namespace MySystem
                                                             AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
                                                             BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                                             AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                                        });
-                                                        db.UserAccountRecord.Add(new UserAccountRecord()
+                                                        }).Entity;
+                                                        UserAccountRecord add1 = db.UserAccountRecord.Add(new UserAccountRecord()
                                                         {
                                                             CreateDate = DateTime.Now,
                                                             UpdateDate = DateTime.Now,
@@ -1187,8 +1188,8 @@ namespace MySystem
                                                             AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
                                                             BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                                             AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                                        });
-                                                        db.UserAccountRecord.Add(new UserAccountRecord()
+                                                        }).Entity;
+                                                        UserAccountRecord add2 = db.UserAccountRecord.Add(new UserAccountRecord()
                                                         {
                                                             CreateDate = DateTime.Now,
                                                             UpdateDate = DateTime.Now,
@@ -1202,9 +1203,11 @@ namespace MySystem
                                                             AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
                                                             BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                                             AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                                        });
+                                                        }).Entity;
                                                         db.SaveChanges();
-                                                        RedisDbconn.Instance.Set("UserAccount:" + edit.UserId, account);
+                                                        PublicFunction.SplitUserAccountRecord(add);
+                                                        PublicFunction.SplitUserAccountRecord(add1);
+                                                        PublicFunction.SplitUserAccountRecord(add2);
                                                     }
                                                 }
                                                 else if (Status == 2)
@@ -1227,7 +1230,7 @@ namespace MySystem
                                                             decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                                                             decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                                                             decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                                            db.UserAccountRecord.Add(new UserAccountRecord()
+                                                            UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                                                             {
                                                                 CreateDate = DateTime.Now,
                                                                 UpdateDate = DateTime.Now,
@@ -1241,9 +1244,9 @@ namespace MySystem
                                                                 AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
                                                                 BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                                                 AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                                            });
+                                                            }).Entity;
                                                             db.SaveChanges();
-                                                            RedisDbconn.Instance.Set("UserAccount:" + edit.UserId, account);
+                                                            PublicFunction.SplitUserAccountRecord(add);
                                                         }
                                                     }
                                                 }

+ 3 - 1
AppStart/Helper/PreStoreApplyQueue.cs

@@ -77,7 +77,7 @@ public class PreStoreApplyHelper
                             decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                             decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                             decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                            UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                            UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                             {
                                 CreateDate = DateTime.Now,
                                 UpdateDate = DateTime.Now,
@@ -91,6 +91,8 @@ public class PreStoreApplyHelper
                                 BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                                 AfterBalanceAmount = AfterBalanceAmount, //变更后余额
                             }).Entity;
+                            db.SaveChanges();
+                            PublicFunction.SplitUserAccountRecord(add);
                         }
                     }
                     db.SaveChanges();

+ 2 - 1
AppStart/Helper/SycnHelpProfitService.cs

@@ -108,7 +108,7 @@ namespace MySystem
                     decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                     decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                    UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
@@ -127,6 +127,7 @@ namespace MySystem
                     db.SaveChanges();
                     tran.Commit();
                     op = true;
+                    PublicFunction.SplitUserAccountRecord(add);
                 }
                 catch (Exception ex)
                 {

+ 6 - 3
AppStart/Helper/SycnProfitService.cs

@@ -121,7 +121,7 @@ namespace MySystem
                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                        UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                         {
                             CreateDate = DateTime.Now,
                             UpdateDate = DateTime.Now,
@@ -138,6 +138,7 @@ namespace MySystem
                             Remark = ProfitType == 1 ? "直拓商户分润" : "品牌推广服务费",
                         }).Entity;
                         db.SaveChanges();
+                        PublicFunction.SplitUserAccountRecord(add);
                     }
                     tran.Commit();
                 }
@@ -183,7 +184,7 @@ namespace MySystem
                     decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                     decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                    UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
@@ -200,6 +201,7 @@ namespace MySystem
                     }).Entity;
                     db.SaveChanges();
                     tran.Commit();
+                    PublicFunction.SplitUserAccountRecord(add);
                 }
                 catch (Exception ex)
                 {
@@ -266,7 +268,7 @@ namespace MySystem
                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                        UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                         {
                             CreateDate = DateTime.Now,
                             UpdateDate = DateTime.Now,
@@ -283,6 +285,7 @@ namespace MySystem
                             Remark = "直拓商户补贴",
                         }).Entity;
                         db.SaveChanges();
+                        PublicFunction.SplitUserAccountRecord(add);
                     }
                     tran.Commit();
                 }

+ 6 - 3
AppStart/Helper/SycnProfitServiceV2.cs

@@ -140,7 +140,7 @@ namespace MySystem
                             decimal AfterTotalAmount = account.TotalAmount + ProfitAmount; //变更后总金额
                             decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                             decimal AfterBalanceAmount = account.BalanceAmount + ProfitAmount; //变更后余额
-                            UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                            UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                             {
                                 CreateDate = DateTime.Now,
                                 UpdateDate = DateTime.Now,
@@ -173,6 +173,7 @@ namespace MySystem
                                 UserIds.Add(UserId);
                             }
                             tran.Commit();
+                            PublicFunction.SplitUserAccountRecord(add);
                         }
                         catch (Exception ex)
                         {
@@ -276,7 +277,7 @@ namespace MySystem
                             decimal AfterTotalAmount = account.TotalAmount + ProfitMoney; //变更后总金额
                             decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                             decimal AfterBalanceAmount = account.BalanceAmount + ProfitMoney; //变更后余额
-                            UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                            UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                             {
                                 CreateDate = DateTime.Now,
                                 UpdateDate = DateTime.Now,
@@ -305,6 +306,7 @@ namespace MySystem
                             profit.ProfitRate += ProfitMoney;
                             db.SaveChanges();
                             tran.Commit();
+                            PublicFunction.SplitUserAccountRecord(add);
                         }
                         catch (Exception ex)
                         {
@@ -375,7 +377,7 @@ namespace MySystem
                     decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                     decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                    UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
@@ -393,6 +395,7 @@ namespace MySystem
                     }).Entity;
                     db.SaveChanges();
                     tran.Commit();
+                    PublicFunction.SplitUserAccountRecord(add);
                 }
                 catch (Exception ex)
                 {

+ 2 - 1
AppStart/Helper/SycnProfitServiceV3.cs

@@ -218,7 +218,7 @@ namespace MySystem
                     decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                     decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                    UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
@@ -236,6 +236,7 @@ namespace MySystem
                     }).Entity;
                     db.SaveChanges();
                     tran.Commit();
+                    PublicFunction.SplitUserAccountRecord(add);
                 }
                 catch (Exception ex)
                 {

+ 24 - 0
AppStart/PublicFunction.cs

@@ -595,5 +595,29 @@ namespace MySystem
         public static Dictionary<string, Dictionary<string, string>> OpTables = new Dictionary<string, Dictionary<string, string>>();//运营中心数据模型
 
         #endregion
+    
+    
+        #region 发送分表数据
+
+        public static void SplitTradeRecord(TradeRecord obj, string TradeMonth = "")
+        {
+            if(string.IsNullOrEmpty(TradeMonth))
+            {
+                TradeMonth = DateTime.Now.ToString("yyyyMM");
+            }
+            RedisDbconn.Instance.AddList("AddTradeRecordQueue", Newtonsoft.Json.JsonConvert.SerializeObject(obj) + "#cut#" + TradeMonth);
+        }
+
+        public static void SplitUserAccountRecord(UserAccountRecord obj, string TradeMonth = "")
+        {
+            if(string.IsNullOrEmpty(TradeMonth))
+            {
+                TradeMonth = DateTime.Now.ToString("yyyyMM");
+            }
+            RedisDbconn.Instance.AddList("AddUserAccountRecordQueue", Newtonsoft.Json.JsonConvert.SerializeObject(obj) + "#cut#" + TradeMonth);
+        }
+
+        #endregion
+    
     }
 }

+ 2 - 2
Areas/Admin/Controllers/MainServer/OrdersController.cs

@@ -1416,7 +1416,7 @@ namespace MySystem.Areas.Admin.Controllers
                                 decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                                 decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                                 decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                                UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                                 {
                                     CreateDate = DateTime.Now,
                                     UpdateDate = DateTime.Now,
@@ -1432,7 +1432,7 @@ namespace MySystem.Areas.Admin.Controllers
                                     QueryCount = order.Id,
                                 }).Entity;
                                 db.SaveChanges();
-                                RedisDbconn.Instance.Set("UserAccount:" + ParentUserId, account);
+                                PublicFunction.SplitUserAccountRecord(add);
 
                                 //推荐下单上级获得30天的机具循环天数
                                 var posList = db.PosMachinesTwo.Select(m => new { m.Id, m.UserId, m.BindingState, m.RecycEndDate }).Where(m => m.UserId == ParentUserId && m.BindingState == 0 && m.RecycEndDate != null).ToList();

+ 4 - 2
Areas/Admin/Controllers/MainServer/ProfitRewardRecordController.cs

@@ -636,7 +636,7 @@ namespace MySystem.Areas.Admin.Controllers
                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                        UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                         {
                             CreateDate = DateTime.Now,
                             UpdateDate = DateTime.Now,
@@ -653,6 +653,7 @@ namespace MySystem.Areas.Admin.Controllers
                             Remark = ProfitType == 1 ? "直拓商户分润" : "品牌推广服务费",
                         }).Entity;
                         db.SaveChanges();
+                        PublicFunction.SplitUserAccountRecord(add);
                         RedisDbconn.Instance.Clear("UserAccount:" + UserId);
                         RedisDbconn.Instance.Clear("UserAccount:Income:" + UserId + ":" + DateTime.Now.ToString("yyyyMM"));
                     }
@@ -712,7 +713,7 @@ namespace MySystem.Areas.Admin.Controllers
                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                        UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                         {
                             CreateDate = DateTime.Now,
                             UpdateDate = DateTime.Now,
@@ -729,6 +730,7 @@ namespace MySystem.Areas.Admin.Controllers
                             Remark = "直拓商户补贴",
                         }).Entity;
                         db.SaveChanges();
+                        PublicFunction.SplitUserAccountRecord(add);
                         RedisDbconn.Instance.Clear("UserAccount:" + UserId);
                         RedisDbconn.Instance.Clear("UserAccount:Income:" + UserId + ":" + DateTime.Now.ToString("yyyyMM"));
                     }

+ 4 - 2
Areas/Admin/Controllers/MainServer/SysRechargeRecordController.cs

@@ -494,7 +494,7 @@ namespace MySystem.Areas.Admin.Controllers
                     decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                     decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    db.UserAccountRecord.Add(new UserAccountRecord()
+                    UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
@@ -509,7 +509,9 @@ namespace MySystem.Areas.Admin.Controllers
                         BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                         AfterBalanceAmount = AfterBalanceAmount, //变更后余额
                         Remark = edit.SeoDescription, //备注
-                    });
+                    }).Entity;
+                    db.SaveChanges();
+                    PublicFunction.SplitUserAccountRecord(add);
                 }
             }
             db.SaveChanges();

+ 7 - 5
Areas/Admin/Controllers/MainServer/SysToolsController.cs

@@ -1002,7 +1002,7 @@ namespace MySystem.Areas.Admin.Controllers
                                 decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                                 decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                                 decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                                UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                                 {
                                     CreateDate = DateTime.Now,
                                     UpdateDate = DateTime.Now,
@@ -1018,7 +1018,7 @@ namespace MySystem.Areas.Admin.Controllers
                                     AfterBalanceAmount = AfterBalanceAmount, //变更后余额
                                 }).Entity;
                                 db.SaveChanges();
-                                RedisDbconn.Instance.Set("UserAccount:" + GetUserId, account);
+                                PublicFunction.SplitUserAccountRecord(add);
 
                                 string dateString = pos.ActivationTime.Value.ToString("yyyyMMdd");
                                 string monthString = pos.ActivationTime.Value.ToString("yyyyMM");
@@ -1046,7 +1046,7 @@ namespace MySystem.Areas.Admin.Controllers
                                 RedisDbconn.Instance.AddNumber("ActiveRewardAmt:mer:" + pos.BindMerchantId + ":" + pos.BrandId + ":" + dateString, prize);
 
                                 //收支明细
-                                RedisDbconn.Instance.AddList("UserAccountRecord:" + GetUserId + ":1:" + monthString, userAccountRecord);
+                                RedisDbconn.Instance.AddList("UserAccountRecord:" + GetUserId + ":1:" + monthString, add);
                                 RedisDbconn.Instance.AddNumber("UserAccount:" + GetUserId + ":1:" + monthString, prize);
                             }
                         }
@@ -3217,7 +3217,7 @@ namespace MySystem.Areas.Admin.Controllers
             decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
             decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
             decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-            UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+            UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
             {
                 CreateDate = DateTime.Now,
                 UpdateDate = DateTime.Now,
@@ -3233,6 +3233,7 @@ namespace MySystem.Areas.Admin.Controllers
                 QueryCount = OrderId,
             }).Entity;
             db.SaveChanges();
+            PublicFunction.SplitUserAccountRecord(add);
         }
         #endregion
 
@@ -3556,7 +3557,7 @@ namespace MySystem.Areas.Admin.Controllers
                         decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
                         decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
                         decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                        UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                        UserAccountRecord add = db.UserAccountRecord.Add(new UserAccountRecord()
                         {
                             CreateDate = DateTime.Now,
                             UpdateDate = DateTime.Now,
@@ -3574,6 +3575,7 @@ namespace MySystem.Areas.Admin.Controllers
                         db.SaveChanges();
                         spdb.Dispose();
                         db.Dispose();
+                        PublicFunction.SplitUserAccountRecord(add);
                         return "发放成功";
                     }
                 }