Explorar o código

优化坏机换新

独孤洋\DuGuYang %!s(int64=3) %!d(string=hai) anos
pai
achega
dc714af815
Modificáronse 1 ficheiros con 21 adicións e 17 borrados
  1. 21 17
      Areas/Admin/Controllers/MainServer/SysToolsController.cs

+ 21 - 17
Areas/Admin/Controllers/MainServer/SysToolsController.cs

@@ -1597,30 +1597,30 @@ namespace MySystem.Areas.Admin.Controllers
                     string OldSnNum = OldSnList[i];
                     string NewSnNum = NewSnList[i];
                     UserForMakerCode userForMakerCode = db.UserForMakerCode.FirstOrDefault(m => m.MakerCode == MakerCode) ?? new UserForMakerCode();
-                    StoreForCode storeForCodeFrom = db.StoreForCode.FirstOrDefault(m => m.Code == FromStoreNo) ?? new StoreForCode();
-                    if (storeForCodeFrom.StoreId == 0)
+                    StoreForCode storeForCodeFrom = db.StoreForCode.Any(m => m.Code == FromStoreNo);
+                    if (!storeForCodeFrom)
                     {
                         return "您输入的新机发货仓库编号不存在";
                     }
-                    StoreForCode storeForCodeBack = db.StoreForCode.FirstOrDefault(m => m.Code == BackStoreNo) ?? new StoreForCode();
-                    if (storeForCodeBack.StoreId == 0)
+                    StoreForCode storeForCodeBack = db.StoreForCode.Any(m => m.Code == BackStoreNo);
+                    if (!storeForCodeBack)
                     {
                         return "您输入的坏机退回仓库编号不存在";
                     }
                     MachineForSnNo oldForSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == OldSnNum) ?? new MachineForSnNo();
                     MachineForSnNo newForSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == NewSnNum) ?? new MachineForSnNo();
-                    PosMachinesTwo oldpos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == oldForSnNo.SnId && m.BindingState == 0 && m.BuyUserId == userForMakerCode.UserId) ?? new PosMachinesTwo();
-                    if (oldpos.Id == 0)
+                    PosMachinesTwo oldpos = db.PosMachinesTwo.Any(m => m.Id == oldForSnNo.SnId && m.BindingState == 0 && m.BuyUserId == userForMakerCode.UserId);
+                    if (!oldpos)
                     {
                         return "您输入的坏机SN不存在或者不在" + MakerCode + "名下";
                     }
-                    PosMachinesTwo newpos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == newForSnNo.SnId && m.BindingState == 0) ?? new PosMachinesTwo();
-                    if (newpos.Id == 0)
+                    PosMachinesTwo newpos = db.PosMachinesTwo.Any(m => m.Id == newForSnNo.SnId && m.BindingState == 0);
+                    if (!newpos)
                     {
                         return "您输入的新机SN不存在";
                     }
                     StoreHouse storeFrom = db.StoreHouse.FirstOrDefault(m => m.Id == storeForCodeFrom.StoreId);
-                    if (Convert.ToInt32(storeFrom.BrandId) != Convert.ToInt32(oldpos.BrandId))
+                    if (Convert.ToInt32(storeFrom.BrandId) != Convert.ToInt32(newpos.BrandId))
                     {
                         return "您输入的新机发货仓库不符新机机具对应品牌";
                     }
@@ -1633,6 +1633,10 @@ namespace MySystem.Areas.Admin.Controllers
                     {
                         return "您输入的坏机退回仓库不符坏机机具对应品牌";
                     }
+                    if (Convert.ToInt32(storeBack.BrandId) != Convert.ToInt32(storeFrom.BrandId))
+                    {
+                        return "您输入的新机发货仓库和坏机退回仓库品牌类型不同";
+                    }
                     var brandInfo = db.KqProducts.FirstOrDefault(m => m.Id == oldpos.BrandId) ?? new KqProducts();
                     if (brandInfo.Name.Contains("大POS"))
                     {
@@ -1763,25 +1767,25 @@ namespace MySystem.Areas.Admin.Controllers
                     {
                         store = db.StoreHouse.FirstOrDefault(m => m.Id == storeForBadCode.StoreId);
                     }
-                    StoreForCode storeForCodeFrom = db.StoreForCode.FirstOrDefault(m => m.Code == FromStoreNo) ?? new StoreForCode();
-                    if (storeForCodeFrom.StoreId == 0)
+                    StoreForCode storeForCodeFrom = db.StoreForCode.Any(m => m.Code == FromStoreNo);
+                    if (!storeForCodeFrom)
                     {
                         return "您输入的新机发货仓库编号不存在";
                     }
-                    StoreForCode storeForCodeBack = db.StoreForCode.FirstOrDefault(m => m.Code == BackStoreNo) ?? new StoreForCode();
-                    if (storeForCodeBack.StoreId == 0)
+                    StoreForCode storeForCodeBack = db.StoreForCode.Any(m => m.Code == BackStoreNo);
+                    if (!storeForCodeBack)
                     {
                         return "您输入的坏机退回仓库编号不存在";
                     }
                     MachineForSnNo oldForSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == OldSnNum) ?? new MachineForSnNo();
                     MachineForSnNo newForSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == NewSnNum) ?? new MachineForSnNo();
-                    PosMachinesTwo oldpos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == oldForSnNo.SnId && m.BindingState == 0 && m.StoreId == storeForBadCode.StoreId) ?? new PosMachinesTwo();
-                    if (oldpos.Id == 0)
+                    PosMachinesTwo oldpos = db.PosMachinesTwo.Any(m => m.Id == oldForSnNo.SnId && m.BindingState == 0 && m.StoreId == storeForBadCode.StoreId);
+                    if (!oldpos)
                     {
                         return "您输入的坏机SN不存在或者不在仓库" + StoreCode + "中";
                     }
-                    PosMachinesTwo newpos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == newForSnNo.SnId && m.BindingState == 0) ?? new PosMachinesTwo();
-                    if (newpos.Id == 0)
+                    PosMachinesTwo newpos = db.PosMachinesTwo.Any(m => m.Id == newForSnNo.SnId && m.BindingState == 0);
+                    if (!newpos)
                     {
                         return "您输入的新机SN不存在";
                     }