From bdd84cc48ba7b2527584c44d174da8e7d20c5375 Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期三, 18 九月 2024 16:37:13 +0800
Subject: [PATCH] 增加对申请入库时对平库库位的校验

---
 Wms/Wms/Controllers/BllCheckController.cs |  222 +++++++++++++++++--------------------------------------
 1 files changed, 68 insertions(+), 154 deletions(-)

diff --git a/Wms/Wms/Controllers/BllCheckController.cs b/Wms/Wms/Controllers/BllCheckController.cs
index 27ff38b..c3ea448 100644
--- a/Wms/Wms/Controllers/BllCheckController.cs
+++ b/Wms/Wms/Controllers/BllCheckController.cs
@@ -16,6 +16,8 @@
 using Model.ModelVm.BllSoVm;
 using Wms.Tools;
 using System.Collections;
+using Utility;
+using SqlSugar;
 
 namespace Wms.Controllers
 {
@@ -33,6 +35,7 @@
 
         private readonly IWarehouseOutsidePalletsServer _stockPallet; //搴撳鎵樼洏
         private readonly IStockFreectSetve _freect; //瑙e喕\鍐荤粨
+        private readonly UserManager _userManager;
 
         /// <summary>
         /// 鏋勯�犲嚱鏁�
@@ -43,7 +46,7 @@
         /// <param name="logSvc">搴撳唴鎿嶄綔鏃ュ織Svc</param>
         /// <param name="stockPallet">搴撳鎵樼洏</param>
         /// <param name="freect">瑙e喕\鍐荤粨</param>
-        public BllCheckController(IOptions<ApiUrlConfig> setting, IStockCheckServer stockCheckSvc, IStockCheckLogServer stockCheckLogSvc, ITaskServer taskSvc, IOperationCRServer logSvc, IWarehouseOutsidePalletsServer stockPallet, IStockFreectSetve freect)
+        public BllCheckController(IOptions<ApiUrlConfig> setting, IStockCheckServer stockCheckSvc, IStockCheckLogServer stockCheckLogSvc, ITaskServer taskSvc, IOperationCRServer logSvc, IWarehouseOutsidePalletsServer stockPallet, IStockFreectSetve freect, UserManager userManager)
         {
             _config = setting.Value;
             _stockCheckSvc = stockCheckSvc;
@@ -52,6 +55,7 @@
             _logSvc = logSvc;
             _stockPallet = stockPallet;
             _freect = freect;
+            _userManager = userManager;
         }
 
         #region 鐩樼偣鍗曟嵁
@@ -62,18 +66,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetStockCheckList(GetStockCheckVm model)
+        public async Task<IActionResult> GetStockCheckList(GetStockCheckVm model)
         {
-            try
-            {
-                var bolls = _stockCheckSvc.GetStockCheckList(model.CrNo, model.Status, model.PalletNo, model.SkuNo, model.SkuName, model.LotNo, model.StartTime, model.EndTime, model.Page, model.Limit, out int count);
-
-                return Ok(new { code = 0, count, msg = "鐩樼偣鍗曚俊鎭�", data = bolls });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = e.Message });
-            }
+            RefAsync<int> count = new RefAsync<int>();
+            var bolls = await _stockCheckSvc.GetStockCheckList(model.CrNo, model.Status, model.PalletNo, model.SkuNo, model.SkuName, model.LotNo, model.StartTime, model.EndTime, model.Page, model.Limit, count);
+            return Ok(new { code = 0, count = count.Value, msg = "鐩樼偣鍗曚俊鎭�", data = bolls });
         }
 
         /// <summary>
@@ -82,18 +79,12 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetStockCheckDetailList(GetStockCheckVm model)
+        public async Task<IActionResult> GetStockCheckDetailList(GetStockCheckVm model)
         {
-            try
-            {
-                var bolls = _stockCheckSvc.GetStockCheckDetailList(model.CrNo, model.Page, model.Limit, out int count);
+            RefAsync<int> count = new RefAsync<int>();
+            var bolls = await _stockCheckSvc.GetStockCheckDetailList(model.CrNo, model.Page, model.Limit, count);
 
-                return Ok(new { code = 0, count, msg = "鐩樼偣鍗曟槑缁嗕俊鎭�", data = bolls });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = e.Message });
-            }
+            return Ok(new { code = 0, count = count.Value, msg = "鐩樼偣鍗曟槑缁嗕俊鎭�", data = bolls });
         }
         /// <summary>
         /// 鑾峰彇搴撳瓨鏄庣粏淇℃伅锛堢洏鐐归�夋嫨鏄庣粏鏁版嵁婧愶級
@@ -101,18 +92,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetCheckStockDetailList(GetStockDetailVm model)
+        public async Task<IActionResult> GetCheckStockDetailList(GetStockDetailVm model)
         {
-            try
-            {
-                var bolls = _stockCheckSvc.GetCheckStockDetailList(model.HouseNo, model.RoadwayNo, model.LocateNo, model.Msg, model.Page, model.Limit, out int count);
-
-                return Ok(new { code = 0, count, msg = "鑾峰彇搴撳瓨鏄庣粏淇℃伅", data = bolls });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = e.Message });
-            }
+            RefAsync<int> count = new RefAsync<int>();
+            var bolls = await _stockCheckSvc.GetCheckStockDetailList(model.HouseNo, model.RoadwayNo, model.LocateNo, model.Msg, model.Page, model.Limit, count);
+            return Ok(new { code = 0, count = count.Value, msg = "鑾峰彇搴撳瓨鏄庣粏淇℃伅", data = bolls });
         }
 
         /// <summary>
@@ -121,18 +105,10 @@
         /// <param name="soNo"></param>
         /// <returns></returns>
         [HttpGet]
-        public IActionResult GetStockCheckDetailById(string crNo)
+        public async Task<IActionResult> GetStockCheckDetailById(string crNo)
         {
-            try
-            {
-                var bolls = _stockCheckSvc.GetStockCheckDetailById(crNo);
-
-                return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曠紪杈戜俊鎭�", data = bolls });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = e.Message });
-            }
+            var bolls = await _stockCheckSvc.GetStockCheckDetailById(crNo);
+            return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曠紪杈戜俊鎭�", data = bolls });
         }
 
         /// <summary>
@@ -141,29 +117,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult AddEditStockCheck(AddEditStockCheckVm model)
+        [UnitOfWork]
+        public async Task<IActionResult> AddEditStockCheck(AddEditStockCheckVm model)
         {
-            try
-            {
-                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
-                var claimsIdentity = this.User.Identity as ClaimsIdentity;
-                if (claimsIdentity == null)
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
-                if (string.IsNullOrWhiteSpace(userId))
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                _stockCheckSvc.AddEditStockCheck(model, int.Parse(userId));
-
-                return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曟搷浣滄垚鍔�", data = "" });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = "鎿嶄綔澶辫触" + e.Message });
-            }
+            await _stockCheckSvc.AddEditStockCheck(model);
+            return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曟搷浣滄垚鍔�", data = "" });
         }
 
         /// <summary>
@@ -172,29 +130,12 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult DelStockCheck(IdVm model)
+        [UnitOfWork]
+        public async Task<IActionResult> DelStockCheck(IdVm model)
         {
-            try
-            {
-                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
-                var claimsIdentity = this.User.Identity as ClaimsIdentity;
-                if (claimsIdentity == null)
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
-                if (string.IsNullOrWhiteSpace(userId))
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                _stockCheckSvc.DelStockCheck(model.Id, int.Parse(userId));
+            await _stockCheckSvc.DelStockCheck(model.Id);
 
-                return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曞垹闄ゆ垚鍔�" });
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = "鍒犻櫎澶辫触" + e.Message });
-            }
+            return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曞垹闄ゆ垚鍔�" });
         }
 
         /// <summary>
@@ -204,31 +145,11 @@
         /// <param name="demo"></param>
         /// <returns></returns>
         [HttpGet]
-        public IActionResult EditNoticeDemo(int id, string demo)
+        [UnitOfWork]
+        public async Task<IActionResult> EditNoticeDemo(int id, string demo)
         {
-            try
-            {
-                var claimsIdentity = this.User.Identity as ClaimsIdentity;
-                if (claimsIdentity == null)
-                {
-                    throw new Exception("鏈幏鍙栧埌鐢ㄦ埛淇℃伅");
-                }
-                string userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
-                if (string.IsNullOrWhiteSpace(userId))
-                {
-                    throw new Exception("鏈幏鍙栧埌鐢ㄦ埛淇℃伅");
-                }
-
-                _stockCheckSvc.EditNoticeDemo(id, demo, int.Parse(userId));
-
-
-                return Ok(new { code = 0, msg = "缂栬緫澶囨敞鎴愬姛" });
-
-            }
-            catch (Exception e)
-            {
-                return Ok(new { code = 1, msg = e.Message });
-            }
+            await _stockCheckSvc.EditNoticeDemo(id, demo);
+            return Ok(new { code = 0, msg = "缂栬緫澶囨敞鎴愬姛" });
         }
         #endregion
 
@@ -240,13 +161,14 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetStockCheckLogList(GetCheckLogVm model)
+        public async Task<IActionResult> GetStockCheckLogList(GetCheckLogVm model)
         {
             try
             {
-                var list = _stockCheckLogSvc.GetStockCheckLogList(model.CrNo, model.Status, model.PalletNo, model.BoxNo, model.SkuNo, model.SkuName, model.LotNo, model.Page, model.Limit, out int count);
+                RefAsync<int> count = new RefAsync<int>();
+                var list = await _stockCheckLogSvc.GetStockCheckLogList(model.CrNo, model.Status, model.PalletNo, model.BoxNo, model.SkuNo, model.SkuName, model.LotNo, model.Page, model.Limit, count);
 
-                return Ok(new { code = 0, count, msg = "鐩樼偣璁板綍", data = list });
+                return Ok(new { code = 0, count = count.Value, msg = "鐩樼偣璁板綍", data = list });
             }
             catch (Exception e)
             {
@@ -264,14 +186,15 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetCrTaskList(GetTaskVm model)
+        public async Task<IActionResult> GetCrTaskList(GetTaskVm model)
         {
             try
             {
-                var type = new List<string>() { "2", "3", "4" };
-                var bolls = _taskSvc.GetTaskList(type, model.Type, model.Status, model.TaskNo, model.IsSuccess, model.PalletNo, model.Msg, model.Page, model.Limit, out int count);
+                var type = new List<string>() { "2", "3", "4", "6" };
+                RefAsync<int> count = new RefAsync<int>();
+                var bolls = await _taskSvc.GetTaskList(type, model.Type, model.Status, model.TaskNo, model.IsSuccess, model.PalletNo, model.Msg, model.Page, model.Limit, count);
 
-                return Ok(new { code = 0, count, msg = "搴撳唴浠诲姟淇℃伅", data = bolls });
+                return Ok(new { code = 0, count = count.Value, msg = "搴撳唴浠诲姟淇℃伅", data = bolls });
             }
             catch (Exception e)
             {
@@ -285,13 +208,14 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetLogOperationCrList(GetOperationVm model)
+        public async Task<IActionResult> GetLogOperationCrList(GetOperationVm model)
         {
             try
             {
-                var bolls = _logSvc.GetLogOperationCrList(model.MenuName, model.Type, model.Msg, model.StartTime, model.EndTime, model.Page, model.Limit, out int count);
+                RefAsync<int> count = new RefAsync<int>();
+                var bolls = await _logSvc.GetLogOperationCrList(model.MenuName, model.Type, model.Msg, model.StartTime, model.EndTime, model.Page, model.Limit, count);
 
-                return Ok(new { code = 0, count, msg = "鍑哄簱鎿嶄綔鏃ュ織淇℃伅", data = bolls });
+                return Ok(new { code = 0, count = count.Value, msg = "鍑哄簱鎿嶄綔鏃ュ織淇℃伅", data = bolls });
             }
             catch (Exception e)
             {
@@ -320,7 +244,7 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
                 }
-                _stockCheckSvc.AgainSendCheckTask(model.taskNo, int.Parse(userId), _config.WcsHost + _config.IssueComApiUrl);
+                //_stockCheckSvc.AgainSendCheckTask(model.taskNo, int.Parse(userId), _config.WcsHost + _config.IssueComApiUrl);
 
                 return Ok(new { code = 0, msg = "鎴愬姛涓嬪彂浠诲姟", data = "" });
             }
@@ -335,7 +259,7 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult CancelCheckTask(CheckTaskVm model)
+        public async Task<IActionResult> CancelCheckTask(CheckTaskVm model)
         {
             try
             {
@@ -350,7 +274,7 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
                 }
-                _stockCheckSvc.CancelCheckTask(model.taskNo, int.Parse(userId));
+                await _stockCheckSvc.CancelCheckTask(model.taskNo);
 
                 return Ok(new { code = 0, msg = "鎴愬姛鍙栨秷浠诲姟", data = "" });
             }
@@ -365,7 +289,7 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult FinishCheckTask(CheckTaskVm model)
+        public async Task<IActionResult> FinishCheckTask(CheckTaskVm model)
         {
             try
             {
@@ -380,7 +304,7 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
                 }
-                _stockCheckSvc.CheckSuccess(model.taskNo, int.Parse(userId));
+                await _stockCheckSvc.CheckSuccess(model.taskNo, int.Parse(userId));
 
                 return Ok(new { code = 0, msg = "鎴愬姛瀹屾垚浠诲姟", data = "" });
 
@@ -401,10 +325,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetPalletsOutside(PalletsOutVm model)
+        public async Task<IActionResult> GetPalletsOutside(PalletsOutVm model)
         {
-            List<MateDataStockDto> mateDataStockDtos = _stockPallet.GetPalletsOutside(model.SkuNo, model.SkuName, model.LotNo, model.PalletNo, model.Page, model.Limit, out int count);
-            return Ok(new { code = 0, count, msg = "鑾峰彇搴撳鎵樼洏淇℃伅鎴愬姛", data = mateDataStockDtos });
+            RefAsync<int> count = new RefAsync<int>();
+            List<MateDataStockDto> mateDataStockDtos = await _stockPallet.GetPalletsOutside(model.SkuNo, model.SkuName, model.LotNo, model.PalletNo, model.Page, model.Limit, count);
+            return Ok(new { code = 0, count = count.Value, msg = "鑾峰彇搴撳鎵樼洏淇℃伅鎴愬姛", data = mateDataStockDtos });
         }
 
         /// <summary>
@@ -413,7 +338,7 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult SaveAppointSlot(SaveAppointSlotVm model)
+        public async Task<IActionResult> SaveAppointSlot(SaveAppointSlotVm model)
         {
             try
             {
@@ -428,7 +353,7 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
                 }
-                _stockPallet.SaveAppointSlot(model.StockDetailId,model.LocateId, int.Parse(userId));
+                await _stockPallet.SaveAppointSlot(model.StockDetailId, model.LocateId);
 
                 return Ok(new { code = 0, count = 0, msg = "鎸囧畾鍌ㄤ綅鎴愬姛", data = "" });
             }
@@ -448,22 +373,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult FinishMoveTask(CheckTaskVm model)
+        public async Task<IActionResult> FinishMoveTask(CheckTaskVm model)
         {
             try
             {
-                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
-                var claimsIdentity = this.User.Identity as ClaimsIdentity;
-                if (claimsIdentity == null)
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
-                if (string.IsNullOrWhiteSpace(userId))
-                {
-                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
-                }
-                _stockCheckSvc.MoveSuccess(model.taskNo, int.Parse(userId));
+                await _stockCheckSvc.MoveSuccess(model.taskNo);
 
                 return Ok(new { code = 0, msg = "鎴愬姛瀹屾垚浠诲姟", data = "" });
             }
@@ -478,7 +392,7 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult CancelMoveTask(CheckTaskVm model)
+        public async Task<IActionResult> CancelMoveTask(CheckTaskVm model)
         {
             try
             {
@@ -493,7 +407,7 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
                 }
-                _stockCheckSvc.CancelMoveTask(model.taskNo, int.Parse(userId));
+                await _stockCheckSvc.CancelMoveTask(model.taskNo);
 
                 return Ok(new { code = 0, msg = "鎴愬姛鍙栨秷浠诲姟", data = "" });
             }
@@ -513,11 +427,11 @@
         /// <param name="type">0锛氳幏鍙栧彲鍐荤粨搴撳瓨 1锛氳幏鍙栧彲瑙e喕鏁版嵁</param>
         /// <returns></returns>
         [HttpGet]
-        public IActionResult ByTypeGetDataStockType(string SkuNo,int type)
+        public async Task<IActionResult> ByTypeGetDataStockType(string SkuNo, int type)
         {
             try
             {
-                var models = _freect.ByTypeGetDataStockType(SkuNo,type);
+                var models = await _freect.ByTypeGetDataStockType(SkuNo, type);
 
                 return Ok(new
                 {
@@ -542,11 +456,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetDataFreezeList(FreezeUnfreezeInfoDto model)
+        public async Task<IActionResult> GetDataFreezeList(FreezeUnfreezeInfoDto model)
         {
             try
             {
-                var models = _freect.GetDataFreezeList(model);
+                var models = await _freect.GetDataFreezeList(model);
 
                 return Ok(new
                 {
@@ -571,11 +485,11 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult GetDataUnFreezeList(FreezeUnfreezeInfoDto model)
+        public async Task<IActionResult> GetDataUnFreezeList(FreezeUnfreezeInfoDto model)
         {
             try
             {
-                var models = _freect.GetDataUnFreezeList(model);
+                var models = await _freect.GetDataUnFreezeList(model);
 
                 return Ok(new
                 {
@@ -600,7 +514,7 @@
         /// <param name="model"></param>
         /// <returns></returns>
         [HttpPost]
-        public IActionResult InsertDataFreezeInfo(FreezeUnfreezeInfoDto model)
+        public async Task<IActionResult> InsertDataFreezeInfo(FreezeUnfreezeInfoDto model)
         {
             try
             {
@@ -616,7 +530,7 @@
                 }
 
                 model.CreateUser = int.Parse(UserId);
-                string strMesage = _freect.InsertDataFreezeInfo(model);
+                string strMesage = await _freect.InsertDataFreezeInfo(model);
                 //var arr = strMesage.Split(':');
                 if (!strMesage.Contains("-1"))
                 {

--
Gitblit v1.8.0