瀏覽代碼

商城购买券,如果被其他线程抢占了,则另外查找一张券

lcl 10 月之前
父節點
當前提交
316e0938ac
共有 1 個文件被更改,包括 5 次插入1 次删除
  1. 5 1
      AppStart/Helper/AlipayPayBack2Service.cs

+ 5 - 1
AppStart/Helper/AlipayPayBack2Service.cs

@@ -196,7 +196,11 @@ namespace MySystem
                             }
                             foreach (var coupon in coupons) // TODO: 数量多的话,会慢
                             {
-                                PosCoupons item = db.PosCoupons.FirstOrDefault(m => m.Id == coupon.Id);
+                                PosCoupons item = db.PosCoupons.FirstOrDefault(m => m.Id == coupon.Id && m.IsLock == 0 && m.IsUse == 0 && m.Sort == 0 && m.UserId == 0 && m.QueryCount == Kind);
+                                if(item == null) //如果被其他线程抢占了,则另外查找一张券
+                                {
+                                    item = db.PosCoupons.FirstOrDefault(m => m.IsLock == 0 && m.IsUse == 0 && m.Sort == 0 && m.UserId == 0 && m.QueryCount == Kind);
+                                }
                                 if (item != null)
                                 {
                                     item.CreateDate = DateTime.Now;