DuGuYang před 3 roky
rodič
revize
4d87fab460

+ 16 - 13
AppStart/Helper/TimeOutPosChargeReturnService.cs

@@ -42,21 +42,24 @@ namespace MySystem
                             {
                                 int Id = int.Parse(item["Id"].ToString());
                                 var toChargeBackRecord = db.ToChargeBackRecord.FirstOrDefault(m => m.Id == Id && m.Status == 1) ?? new ToChargeBackRecord();
-                                var userAccount = db.UserAccount.FirstOrDefault(m => m.Id == toChargeBackRecord.UserId) ?? new UserAccount();
-                                var userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord
+                                if (toChargeBackRecord.Id > 0)
                                 {
-                                    CreateDate = DateTime.Now,
-                                    UserId = toChargeBackRecord.UserId,
-                                    BeforeBalanceAmount = userAccount.BalanceAmount,
-                                    AfterBalanceAmount = userAccount.BalanceAmount + toChargeBackRecord.ChargeAmount,
-                                    ChangeAmount = toChargeBackRecord.ChargeAmount,
-                                    ChangeType = 126,//过期购买机具超过15天激活扣费退还
-                                    Remark = "机具货款退还",
+                                    var userAccount = db.UserAccount.FirstOrDefault(m => m.Id == toChargeBackRecord.UserId) ?? new UserAccount();
+                                    var userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord
+                                    {
+                                        CreateDate = DateTime.Now,
+                                        UserId = toChargeBackRecord.UserId,
+                                        BeforeBalanceAmount = userAccount.BalanceAmount,
+                                        AfterBalanceAmount = userAccount.BalanceAmount + toChargeBackRecord.ChargeAmount,
+                                        ChangeAmount = toChargeBackRecord.ChargeAmount,
+                                        ChangeType = 126,//过期购买机具超过15天激活扣费退还
+                                        Remark = "机具货款退还",
 
-                                }).Entity;
-                                toChargeBackRecord.Status = 2;//过期购买机具循环截止时间超过15天激活扣费退还标识
-                                userAccount.BalanceAmount += toChargeBackRecord.ChargeAmount;
-                                db.SaveChanges();
+                                    }).Entity;
+                                    toChargeBackRecord.Status = 2;//过期购买机具循环截止时间超过15天激活扣费退还标识
+                                    userAccount.BalanceAmount += toChargeBackRecord.ChargeAmount;
+                                    db.SaveChanges();
+                                }
                             }
                         }
                     }

+ 5 - 3
AppStart/Helper/TimeOutPosChargeService.cs

@@ -28,7 +28,7 @@ namespace MySystem
         {
             while (true)
             {
-                if (DateTime.Now.Hour < 18)
+                if (DateTime.Now.Hour < 20)
                 {
                     try
                     {
@@ -40,8 +40,8 @@ namespace MySystem
                             var date = DateTime.Now.AddDays(-15).ToString("yyyy-MM-dd 00:00:00");//过期限制时间
                             var time = DateTime.Parse(date);//过期限制时间
 
-                            DataTable dt = CustomerSqlConn.dtable("SELECT BuyUserId FROM PosMachinesTwo WHERE `Status`>-1 AND BuyUserId>0 AND BindingState=0 AND ActivationState=0 AND RecycEndDate <'" + date + "' GROUP BY BuyUserId", MysqlConn.connstr);//扣费创客
-                            var query = db.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId > 0 && m.BindingState == 0 && m.ActivationState == 0 && m.RecycEndDate < time).ToList();//循环过期超过15天机具
+                            DataTable dt = CustomerSqlConn.dtable("SELECT BuyUserId FROM PosMachinesTwo WHERE `Status`>-1 AND BuyUserId>0 AND BindingState=0 AND ActivationState=0 AND ScanQrTrade=0 AND RecycEndDate <'" + date + "' GROUP BY BuyUserId", MysqlConn.connstr);//扣费创客
+                            var query = db.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId > 0 && m.BindingState == 0 && m.ActivationState == 0 && m.ScanQrTrade == 0 && m.RecycEndDate < time).ToList();//循环过期超过15天机具
                             var brandInfo = db.KqProducts.ToList();
                             foreach (DataRow item in dt.Rows)
                             {
@@ -51,6 +51,8 @@ namespace MySystem
                                 var amount = 0;
                                 foreach (var pos in posInfo)
                                 {
+                                    var poss = db.PosMachinesTwo.FirstOrDefault(m => m.Id == pos.Id) ?? new PosMachinesTwo();
+                                    poss.ScanQrTrade = 999;
                                     var Brand = brandInfo.FirstOrDefault(m => m.Id == pos.BrandId);
                                     if (Brand.Name.Contains("电签"))
                                     {

+ 3 - 3
AppStart/Helper/TimeOutPosSendMessageService.cs

@@ -28,7 +28,7 @@ namespace MySystem
         {
             while (true)
             {
-                if (DateTime.Now.Hour < 18)
+                if (DateTime.Now.Hour < 20)
                 {
                     try
                     {
@@ -40,8 +40,8 @@ namespace MySystem
                             var date = DateTime.Now.AddDays(-10).ToString("yyyy-MM-dd 00:00:00");//过期限制时间
                             var time = DateTime.Parse(date);//过期限制时间
 
-                            DataTable dt = CustomerSqlConn.dtable("SELECT BuyUserId FROM PosMachinesTwo WHERE `Status`>-1 AND BuyUserId>0 AND BindingState=0 AND ActivationState=0 AND RecycEndDate <'" + date + "' GROUP BY BuyUserId", MysqlConn.connstr);//消息推送创客
-                            var query = db.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId > 0 && m.BindingState == 0 && m.ActivationState == 0 && m.RecycEndDate < time).ToList();//循环过期超过10天机具
+                            DataTable dt = CustomerSqlConn.dtable("SELECT BuyUserId FROM PosMachinesTwo WHERE `Status`>-1 AND BuyUserId>0 AND BindingState=0 AND ActivationState=0 AND ScanQrTrade=0 AND RecycEndDate <'" + date + "' GROUP BY BuyUserId", MysqlConn.connstr);//消息推送创客
+                            var query = db.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId > 0 && m.BindingState == 0 && m.ActivationState == 0 && m.ScanQrTrade == 0 && m.RecycEndDate < time).ToList();//循环过期超过10天机具
                             var brandInfo = db.KqProducts.ToList();
                             foreach (DataRow item in dt.Rows)
                             {

+ 2 - 2
Startup.cs

@@ -142,8 +142,8 @@ namespace MySystem
             OpExcelHelper.Instance.Start();
             TestHelper.Instance.Start();
             
-            // TimeOutPosSendMessageService.Instance.Start();//过期机具循环截止时间超过10天预扣费消息推送
-            // TimeOutPosChargeService.Instance.Start();//过期机具循环截止时间超过15天执行扣费
+            TimeOutPosSendMessageService.Instance.Start();//过期机具循环截止时间超过10天预扣费消息推送
+            TimeOutPosChargeService.Instance.Start();//过期机具循环截止时间超过15天执行扣费
             // TimeOutPosChargeReturnService.Instance.Start();//过期购买机具循环截止时间超过15天激活扣费退还
         }