Эх сурвалжийг харах

调整助利宝分润奖励逻辑

lichunlei 2 жил өмнө
parent
commit
a35946a039

+ 56 - 4
AppStart/Helper/Profit/HelpProfitHelper.cs

@@ -53,6 +53,8 @@ namespace MySystem
                 {
                     int UserId = merchant.UserId;
                     PosMerchantInfo mer = db.PosMerchantInfo.FirstOrDefault(m => m.Id == MerchantId) ?? new PosMerchantInfo();
+                    MachineForMerNo merFor = db.MachineForMerNo.FirstOrDefault(m => m.MerNo == mer.KqMerNo) ?? new MachineForMerNo();
+                    PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == merFor.SnId) ?? new PosMachinesTwo();
                     string Name = mer.MerchantName;
                     if (mer.BrandId == 2)
                     {
@@ -70,6 +72,7 @@ namespace MySystem
                     Name = Name.Replace("企业户", "");
                     Name = Name.Replace("企业商户", "");
                     Users user = db.Users.FirstOrDefault(m => m.Id == UserId) ?? new Users();
+                    Users puser = db.Users.FirstOrDefault(m => m.Id == user.ParentUserId) ?? new Users();
                     decimal money = TradeAmount * 0.0005M;
                     decimal money2 = TradeAmount * 0.00005M;
                     UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == UserId);
@@ -85,19 +88,20 @@ namespace MySystem
                     decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
                     account.HelpProfitBalanceAmount += money;
                     decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    HelpProfitAccountRecord accountRecord = db.HelpProfitAccountRecord.Add(new HelpProfitAccountRecord()
+                    UserAccountRecord accountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
                         Sort = MerchantId,
                         UserId = UserId, //创客
-                        ProductType = mer.BrandId, //产品类型
+                        ProductType = 101, //产品类型
                         ChangeType = 1,
                         ChangeAmount = money, //变更金额
                         BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                         AfterBalanceAmount = AfterBalanceAmount, //变更后余额
                         Remark = Name.Substring(0, 1) + "**:" + DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + "交易" + TradeAmount.ToString("f2"),
                     }).Entity;
+                    AddProfitRecord(db, user, pos, mer, money, DateTime.Now.AddDays(-1), 1);
                     db.SaveChanges();
 
                     account = db.UserAccount.FirstOrDefault(m => m.Id == user.ParentUserId);
@@ -113,19 +117,20 @@ namespace MySystem
                     BeforeBalanceAmount = account.BalanceAmount; //变更前余额
                     account.HelpProfitBalanceAmount += money2;
                     AfterBalanceAmount = account.BalanceAmount; //变更后余额
-                    accountRecord = db.HelpProfitAccountRecord.Add(new HelpProfitAccountRecord()
+                    accountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
                     {
                         CreateDate = DateTime.Now,
                         UpdateDate = DateTime.Now,
                         Sort = MerchantId,
                         UserId = user.ParentUserId, //创客
-                        ProductType = mer.BrandId, //产品类型
+                        ProductType = 101, //产品类型
                         ChangeType = 112,
                         ChangeAmount = money2, //变更金额
                         BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
                         AfterBalanceAmount = AfterBalanceAmount, //变更后余额
                         Remark = Name.Substring(0, 1) + "**:" + DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + "交易" + TradeAmount.ToString("f2"),
                     }).Entity;
+                    AddProfitRecord(db, puser, pos, mer, money, DateTime.Now.AddDays(-1), 112);
                     db.SaveChanges();
 
                     string Month = Date.Substring(0, 6);
@@ -159,5 +164,52 @@ namespace MySystem
             }
             db.Dispose();
         }
+
+        private void AddProfitRecord(WebCMSEntities db, Users puser, PosMachinesTwo pos, PosMerchantInfo merchant, decimal Prize, DateTime yesterday, int RewardType)
+        {
+            string RewardDesc = "助利宝分润";
+            if(RewardType == 112)
+            {
+                RewardDesc = "助利宝推荐分润";
+            }
+            OpenRewardDetail detail = db.OpenRewardDetail.Add(new OpenRewardDetail()
+            {
+                CreateDate = DateTime.Now,
+                UpdateDate = DateTime.Now,
+                TradeMonth = yesterday.ToString("yyyyMM"), //交易月
+                TradeDate = yesterday, //达标日期
+                UserId = puser.Id, //创客
+                BrandId = pos.BrandId, //品牌
+                ProductName = RelationClass.GetKqProductsInfo(pos.BrandId), //产品名称
+                MerchantId = pos.BindMerchantId, //商户
+                DirectUserId = merchant.UserId, //商户直属人
+                SnNo = pos.PosSn, //SN号
+                MerNo = merchant.KqMerNo, //渠道商户号
+                SnType = pos.PosSnType, //机具类型
+                StandardDate = pos.ActivationTime, //商户的激活日期
+                SnStoreId = pos.StoreId, //SN仓库
+                MerBuddyType = puser.MerchantType, //商户创客类型
+                RewardType = RewardType, //奖励类型
+                RewardTips = RewardDesc, //奖励描述
+                CreditTradeAmt = pos.CreditTrade, //贷记卡交易总金额
+                DebitTradeAmt = pos.DebitCardTrade, //借记卡交易总金额
+                CreditRewardAmount = Prize, //贷记卡交易奖励金额
+                RewardDesc = RewardDesc, //奖励描述
+            }).Entity;
+            db.OpenReward.Add(new OpenReward()
+            {
+                CreateDate = DateTime.Now,
+                UpdateDate = DateTime.Now,
+                TradeMonth = yesterday.ToString("yyyyMM"), //交易月
+                TradeDate = DateTime.Now, //达标日期
+                UserId = puser.Id, //创客
+                BrandId = pos.BrandId, //品牌
+                RewardType = RewardType, //奖励类型
+                CreditTradeAmt = pos.CreditTrade, //贷记卡交易总金额
+                DebitTradeAmt = pos.DebitCardTrade, //借记卡交易总金额
+                CreditRewardAmount = Prize, //贷记卡交易奖励金额
+                RewardDesc = RewardDesc, //奖励描述
+            });
+        }
     }
 }