Browse Source

盟主奖励和运营中心奖励判断是否重发

lcl 1 year ago
parent
commit
cdb86c946b
2 changed files with 95 additions and 89 deletions
  1. 40 37
      AppStart/Helper/LeaderPrizeService.cs
  2. 55 52
      AppStart/Helper/OperatePrizeService.cs

+ 40 - 37
AppStart/Helper/LeaderPrizeService.cs

@@ -33,49 +33,52 @@ namespace MySystem
                     {
                         int PosId = int.Parse(function.CheckInt(data));
                         WebCMSEntities db = new WebCMSEntities();
-                        PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == PosId);
-                        if (pos != null)
+                        if(!db.UserAccountRecord.Any(m => m.QueryCount == PosId && m.ChangeType == 116))
                         {
-                            decimal ChangeAmount = 10;
-                            if(pos.BrandId == 14)
+                            PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == PosId);
+                            if (pos != null)
                             {
-                                ChangeAmount = 19 * 0.15M;
-                            }
-                            int LeaderUserId = pos.LeaderUserId;
-                            UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == LeaderUserId);
-                            if (account == null)
-                            {
-                                account = db.UserAccount.Add(new UserAccount()
+                                decimal ChangeAmount = 10;
+                                if(pos.BrandId == 14)
+                                {
+                                    ChangeAmount = 19 * 0.15M;
+                                }
+                                int LeaderUserId = pos.LeaderUserId;
+                                UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == LeaderUserId);
+                                if (account == null)
                                 {
-                                    Id = LeaderUserId,
-                                    UserId = LeaderUserId,
+                                    account = db.UserAccount.Add(new UserAccount()
+                                    {
+                                        Id = LeaderUserId,
+                                        UserId = LeaderUserId,
+                                    }).Entity;
+                                    db.SaveChanges();
+                                }
+                                decimal BeforeTotalAmount = account.TotalAmount; //变更前总金额
+                                decimal BeforeFreezeAmount = account.FreezeAmount; //变更前冻结金额
+                                decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
+                                account.BalanceAmount += ChangeAmount;
+                                account.TotalAmount += ChangeAmount;
+                                decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
+                                decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
+                                decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
+                                UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                                {
+                                    CreateDate = DateTime.Now,
+                                    UpdateDate = DateTime.Now,
+                                    UserId = LeaderUserId, //创客
+                                    ChangeType = 116, //变动类型
+                                    ChangeAmount = ChangeAmount, //变更金额
+                                    BeforeTotalAmount = BeforeTotalAmount, //变更前总金额
+                                    AfterTotalAmount = AfterTotalAmount, //变更后总金额
+                                    BeforeFreezeAmount = BeforeFreezeAmount, //变更前冻结金额
+                                    AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
+                                    BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
+                                    AfterBalanceAmount = AfterBalanceAmount, //变更后余额
+                                    QueryCount = PosId,
                                 }).Entity;
                                 db.SaveChanges();
                             }
-                            decimal BeforeTotalAmount = account.TotalAmount; //变更前总金额
-                            decimal BeforeFreezeAmount = account.FreezeAmount; //变更前冻结金额
-                            decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
-                            account.BalanceAmount += ChangeAmount;
-                            account.TotalAmount += ChangeAmount;
-                            decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
-                            decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
-                            decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                            UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
-                            {
-                                CreateDate = DateTime.Now,
-                                UpdateDate = DateTime.Now,
-                                UserId = LeaderUserId, //创客
-                                ChangeType = 116, //变动类型
-                                ChangeAmount = ChangeAmount, //变更金额
-                                BeforeTotalAmount = BeforeTotalAmount, //变更前总金额
-                                AfterTotalAmount = AfterTotalAmount, //变更后总金额
-                                BeforeFreezeAmount = BeforeFreezeAmount, //变更前冻结金额
-                                AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
-                                BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
-                                AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                QueryCount = PosId,
-                            }).Entity;
-                            db.SaveChanges();
                         }
                         db.Dispose();
                     }

+ 55 - 52
AppStart/Helper/OperatePrizeService.cs

@@ -33,72 +33,75 @@ namespace MySystem
                     {
                         int PosId = int.Parse(function.CheckInt(data));
                         WebCMSEntities db = new WebCMSEntities();
-                        PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == PosId);
-                        if (pos != null)
+                        if(!db.UserAccountRecord.Any(m => m.QueryCount == PosId && m.ChangeType == 121))
                         {
-                            int OpId = 0;
-                            int UserId = pos.BuyUserId;
-                            while(UserId > 0)
+                            PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == PosId);
+                            if (pos != null)
                             {
-                                Users user = db.Users.FirstOrDefault(m => m.Id == UserId);
-                                if(user != null)
+                                int OpId = 0;
+                                int UserId = pos.BuyUserId;
+                                while(UserId > 0)
                                 {
-                                    if(user.UserType >= 1)
+                                    Users user = db.Users.FirstOrDefault(m => m.Id == UserId);
+                                    if(user != null)
                                     {
-                                        OpId = user.Id;
-                                        UserId = 0;
+                                        if(user.UserType >= 1)
+                                        {
+                                            OpId = user.Id;
+                                            UserId = 0;
+                                        }
+                                        else
+                                        {
+                                            UserId = user.ParentUserId;
+                                        }
                                     }
                                     else
                                     {
-                                        UserId = user.ParentUserId;
+                                        UserId = 0;
                                     }
                                 }
-                                else
+                                if(OpId > 0)
                                 {
-                                    UserId = 0;
-                                }
-                            }
-                            if(OpId > 0)
-                            {
-                                decimal ChangeAmount = 5;
-                                if(pos.BrandId == 14)
-                                {
-                                    ChangeAmount = 19 * 0.05M;
-                                }
-                                UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == OpId);
-                                if (account == null)
-                                {
-                                    account = db.UserAccount.Add(new UserAccount()
+                                    decimal ChangeAmount = 5;
+                                    if(pos.BrandId == 14)
+                                    {
+                                        ChangeAmount = 19 * 0.05M;
+                                    }
+                                    UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == OpId);
+                                    if (account == null)
                                     {
-                                        Id = OpId,
-                                        UserId = OpId,
+                                        account = db.UserAccount.Add(new UserAccount()
+                                        {
+                                            Id = OpId,
+                                            UserId = OpId,
+                                        }).Entity;
+                                        db.SaveChanges();
+                                    }
+                                    decimal BeforeTotalAmount = account.TotalAmount; //变更前总金额
+                                    decimal BeforeFreezeAmount = account.FreezeAmount; //变更前冻结金额
+                                    decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
+                                    account.BalanceAmount += ChangeAmount;
+                                    account.TotalAmount += ChangeAmount;
+                                    decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
+                                    decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
+                                    decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
+                                    UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
+                                    {
+                                        CreateDate = DateTime.Now,
+                                        UpdateDate = DateTime.Now,
+                                        UserId = OpId, //创客
+                                        ChangeType = 121, //变动类型
+                                        ChangeAmount = ChangeAmount, //变更金额
+                                        BeforeTotalAmount = BeforeTotalAmount, //变更前总金额
+                                        AfterTotalAmount = AfterTotalAmount, //变更后总金额
+                                        BeforeFreezeAmount = BeforeFreezeAmount, //变更前冻结金额
+                                        AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
+                                        BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
+                                        AfterBalanceAmount = AfterBalanceAmount, //变更后余额
+                                        QueryCount = PosId,
                                     }).Entity;
                                     db.SaveChanges();
                                 }
-                                decimal BeforeTotalAmount = account.TotalAmount; //变更前总金额
-                                decimal BeforeFreezeAmount = account.FreezeAmount; //变更前冻结金额
-                                decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
-                                account.BalanceAmount += ChangeAmount;
-                                account.TotalAmount += ChangeAmount;
-                                decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
-                                decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
-                                decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                                UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
-                                {
-                                    CreateDate = DateTime.Now,
-                                    UpdateDate = DateTime.Now,
-                                    UserId = OpId, //创客
-                                    ChangeType = 121, //变动类型
-                                    ChangeAmount = ChangeAmount, //变更金额
-                                    BeforeTotalAmount = BeforeTotalAmount, //变更前总金额
-                                    AfterTotalAmount = AfterTotalAmount, //变更后总金额
-                                    BeforeFreezeAmount = BeforeFreezeAmount, //变更前冻结金额
-                                    AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
-                                    BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
-                                    AfterBalanceAmount = AfterBalanceAmount, //变更后余额
-                                    QueryCount = PosId,
-                                }).Entity;
-                                db.SaveChanges();
                             }
                         }
                         db.Dispose();