Explorar el Código

Merge branch 'feature-dgy-后台优化' into feature-dgy-后台测试

DuGuYang hace 3 años
padre
commit
6cc6dfd915
Se han modificado 1 ficheros con 36 adiciones y 9 borrados
  1. 36 9
      Areas/Admin/Controllers/MainServer/StoreHouseController.cs

+ 36 - 9
Areas/Admin/Controllers/MainServer/StoreHouseController.cs

@@ -482,7 +482,14 @@ namespace MySystem.Areas.Admin.Controllers
             {
             {
                 return "您输入的仓库归属创客编号不存在,请重新输入正确的仓库归属创客编号";
                 return "您输入的仓库归属创客编号不存在,请重新输入正确的仓库归属创客编号";
             }
             }
+            var check = db.StoreHouse.Any(m => m.Sort == 0 && m.Status == 1 && m.UserId == user.UserId);
+            if (check)
+            {
+                return "创客" + MakerCode + "名下已存在分仓,不可再变更";
+            }
             Fields.Add("UserId", user.UserId); //仓库归属人
             Fields.Add("UserId", user.UserId); //仓库归属人
+            Fields.Add("ManagerEmail", data.ManagerEmail); //管理者邮箱
+            Fields.Add("ManageMobile", data.ManageMobile);
             Fields.Add("Areas", data.Areas); //所属地区
             Fields.Add("Areas", data.Areas); //所属地区
             Fields.Add("Address", data.Address); //仓库地址
             Fields.Add("Address", data.Address); //仓库地址
             UserForMakerCode manage = db.UserForMakerCode.FirstOrDefault(m => m.MakerCode == ManageMakerCode);
             UserForMakerCode manage = db.UserForMakerCode.FirstOrDefault(m => m.MakerCode == ManageMakerCode);
@@ -490,7 +497,8 @@ namespace MySystem.Areas.Admin.Controllers
             {
             {
                 return "您输入的仓库负责人编号不存在,请重新输入正确的仓库负责人编号";
                 return "您输入的仓库负责人编号不存在,请重新输入正确的仓库负责人编号";
             }
             }
-            var store = db.StoreHouse.Where(m => m.Sort == 0 && m.Status == 1 && m.UserId == user.UserId).ToList();
+            var sto = db.StoreHouse.FirstOrDefault(m => m.Id == data.Id);
+            var store = db.StoreHouse.Where(m => m.Sort == 0 && m.Status == 1 && m.UserId == sto.UserId).ToList();
             UserAccount userAccount = db.UserAccount.FirstOrDefault(m => m.Id == user.UserId);
             UserAccount userAccount = db.UserAccount.FirstOrDefault(m => m.Id == user.UserId);
             if (userAccount == null)
             if (userAccount == null)
             {
             {
@@ -506,7 +514,6 @@ namespace MySystem.Areas.Admin.Controllers
             // RedisDbconn.Instance.AddList("ResetStoreReserveQueue", user.UserId.ToString());
             // RedisDbconn.Instance.AddList("ResetStoreReserveQueue", user.UserId.ToString());
             decimal olddeposit = 0;//旧押金
             decimal olddeposit = 0;//旧押金
             decimal newdeposit = 0;//新押金
             decimal newdeposit = 0;//新押金
-            var sto = db.StoreHouse.FirstOrDefault(m => m.Id == data.Id);
             newdeposit = data.Deposit;
             newdeposit = data.Deposit;
             olddeposit = sto.Deposit;
             olddeposit = sto.Deposit;
             if (sto.OpId > 0)
             if (sto.OpId > 0)
@@ -544,15 +551,35 @@ namespace MySystem.Areas.Admin.Controllers
                 amount.ValidAmount += data.Deposit;
                 amount.ValidAmount += data.Deposit;
                 opdb.SaveChanges();
                 opdb.SaveChanges();
             }
             }
+            var oldUserInfo = db.Users.FirstOrDefault(m => m.Id == sto.UserId) ?? new Users();
+            var newUserInfo = db.Users.FirstOrDefault(m => m.Id == user.UserId) ?? new Users();
+            newUserInfo.CreateStoreDate = oldUserInfo.CreateStoreDate;
+            newUserInfo.StoreStock = oldUserInfo.StoreStock;
+            newUserInfo.ThisMonthSend = oldUserInfo.ThisMonthSend;
+            oldUserInfo.CreateStoreDate = null;
+            oldUserInfo.StoreStock = 0;
+            oldUserInfo.ThisMonthSend = 0;
             foreach (var item in store)
             foreach (var item in store)
             {
             {
                 var storeInfo = store.FirstOrDefault(m => m.Id == item.Id);
                 var storeInfo = store.FirstOrDefault(m => m.Id == item.Id);
+                var storeOp = opdb.StoreForOperate.FirstOrDefault(m => m.Sort == 0 && m.StoreId == item.Id && m.Status > -1) ?? new OpModels.StoreForOperate();
                 storeInfo.Deposit = data.Deposit;
                 storeInfo.Deposit = data.Deposit;
-                db.SaveChanges();
+                storeInfo.UserId = user.UserId;
+                storeInfo.ManageUserId = manage.UserId;
+                storeInfo.ManagerEmail = data.ManagerEmail;
+                storeInfo.ManageMobile = data.ManageMobile;
+                storeInfo.Address = data.Address;
+                storeInfo.Areas = data.Areas;
+                storeInfo.LimitTopUserId = data.LimitTopUserId;
+                storeInfo.FilePath = data.FilePath;
+                storeInfo.Deposit = data.Deposit;
+                storeInfo.Remark = data.Remark;
+                storeOp.UpdateDate = DateTime.Now;
+                storeOp.QueryCount = user.UserId;
             }
             }
+            db.SaveChanges();
+            opdb.SaveChanges();
             Fields.Add("ManageUserId", manage.UserId); //仓库管理员
             Fields.Add("ManageUserId", manage.UserId); //仓库管理员
-            Fields.Add("ManagerEmail", data.ManagerEmail); //管理者邮箱
-            Fields.Add("ManageMobile", data.ManageMobile);
             Fields.Add("Remark", data.Remark); //备注
             Fields.Add("Remark", data.Remark); //备注
             Fields.Add("LimitTopUserId", data.LimitTopUserId); //限制创客特殊仓库
             Fields.Add("LimitTopUserId", data.LimitTopUserId); //限制创客特殊仓库
             Fields.Add("StoreKind", data.StoreKind); //仓库归属类型
             Fields.Add("StoreKind", data.StoreKind); //仓库归属类型
@@ -1046,8 +1073,8 @@ namespace MySystem.Areas.Admin.Controllers
                                     AfterOutNum = toStore.OutNum, //操作后出库数
                                     AfterOutNum = toStore.OutNum, //操作后出库数
                                 }).Entity;
                                 }).Entity;
                                 db.SaveChanges();
                                 db.SaveChanges();
-                                
-                                if(!opData.Contains(posInfo.BuyUserId + ":" + posInfo.BrandId))
+
+                                if (!opData.Contains(posInfo.BuyUserId + ":" + posInfo.BrandId))
                                 {
                                 {
                                     opData.Add(posInfo.BuyUserId + ":" + posInfo.BrandId);
                                     opData.Add(posInfo.BuyUserId + ":" + posInfo.BrandId);
                                 }
                                 }
@@ -1141,7 +1168,7 @@ namespace MySystem.Areas.Admin.Controllers
                                 }).Entity;
                                 }).Entity;
                                 db.SaveChanges();
                                 db.SaveChanges();
 
 
-                                if(!opData.Contains(posInfo.BuyUserId + ":" + posInfo.BrandId))
+                                if (!opData.Contains(posInfo.BuyUserId + ":" + posInfo.BrandId))
                                 {
                                 {
                                     opData.Add(posInfo.BuyUserId + ":" + posInfo.BrandId);
                                     opData.Add(posInfo.BuyUserId + ":" + posInfo.BrandId);
                                 }
                                 }
@@ -1185,7 +1212,7 @@ namespace MySystem.Areas.Admin.Controllers
                 {
                 {
                     return "Warning|" + error;
                     return "Warning|" + error;
                 }
                 }
-                foreach(string sub in opData)
+                foreach (string sub in opData)
                 {
                 {
                     string[] datalist = sub.Split(":");
                     string[] datalist = sub.Split(":");
                     PublicFunction.SycnMachineCount(int.Parse(datalist[0]), int.Parse(datalist[1]));
                     PublicFunction.SycnMachineCount(int.Parse(datalist[0]), int.Parse(datalist[1]));