From bffcad692dacdb875059d8daf7a657ecc29eaf9b Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期五, 27 六月 2025 16:41:11 +0800
Subject: [PATCH] Merge branch 'wxw'

---
 Wms/Wms/Controllers/UpApiController.cs |  290 +++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 238 insertions(+), 52 deletions(-)

diff --git a/Wms/Wms/Controllers/UpApiController.cs b/Wms/Wms/Controllers/UpApiController.cs
index eefb118..3f77a43 100644
--- a/Wms/Wms/Controllers/UpApiController.cs
+++ b/Wms/Wms/Controllers/UpApiController.cs
@@ -24,6 +24,11 @@
 using System.Threading.Tasks;
 using WMS.BLL.BllPdaServer;
 using WMS.IBLL.IPdaServer;
+using WMS.BLL.BllQualityServer;
+using WMS.IBLL;
+using ZXing.QrCode.Internal;
+using System.Xml.Linq;
+using WMS.IBLL.ISysServer;
 
 namespace Wms.Controllers
 {
@@ -41,7 +46,14 @@
         private readonly IStockCheckServer _stockCheckSvc;//鐩樼偣鍗昐vc 
         private readonly IProcurePlanServer _procurePlanSvc;//閲囪喘鍗昐vs
         private readonly IPdaAsnServer _pdaAsnServer;// PDA
-        public UpApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IArrivalNoticeServer arrivalNoticeServer, IStockCheckServer stockCheckSvc, IProcurePlanServer procurePlanSvc, IPdaAsnServer pdaAsnServer)
+        private readonly IMaterialsServer _materialSvc;//鐗╂枡Svc 
+        private readonly ICustomerServer _customerSvc;//瀹㈡埛Svc 
+        private readonly IHttpServer _http;
+
+
+        private string logStr = $@".\log\SAP璧嬬爜\Sap涓嬪彂鎶ユ枃" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+
+        public UpApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IArrivalNoticeServer arrivalNoticeServer, IStockCheckServer stockCheckSvc, IProcurePlanServer procurePlanSvc, IPdaAsnServer pdaAsnServer, IMaterialsServer materialSvc, ICustomerServer customerSvc, IHttpServer http)
         {
             _config = setting.Value;
             _exNoticeSvc = exNoticeSvc;
@@ -49,7 +61,147 @@
             _stockCheckSvc = stockCheckSvc;
             _procurePlanSvc = procurePlanSvc;
             _pdaAsnServer = pdaAsnServer;
+            _materialSvc = materialSvc;
+            _customerSvc = customerSvc;
+            _http = http;
         }
+        #endregion
+
+        #region JC34 
+        /// <summary>
+        /// 鐗╂枡涓嬪彂
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public async Task<IActionResult> CreateSku(SapSkuInfoVm model)
+        {
+            var logStr = $@".\log\SAP\鐗╂枡涓绘暟鎹笅鍙�" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            try
+            {
+                var jsonData = JsonConvert.SerializeObject(model);
+                LogFile.SaveLogToFile($"Sap鐗╂枡涓绘暟鎹細( {jsonData} ),", logStr);;
+
+                var str = await _materialSvc.AddSkuSap(model.data);
+
+                var list = new { Success = 0, Message = "涓嬪彂鎴愬姛" };
+                if (!str.Contains("0"))
+                {
+                    list = new { Success = -1, Message = str };
+                }
+
+                LogFile.SaveLogToFile($"SAP鐗╂枡涓绘暟鎹笅鍙戯細( {JsonConvert.SerializeObject(list)} ),", logStr);
+                return Ok(new { result = true, code = "1" ,message = "success" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { result = false, code = "400", message = e.Message });
+            }
+        }
+
+
+        /// <summary>
+        /// 瀹㈡埛淇℃伅鎺ユ敹
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public async Task<IActionResult> CreateCustomer(SapCustomerVm model)
+        {
+            var logStr = $@".\log\SAP\瀹㈡埛渚涘簲鍟嗕富鏁版嵁鍚屾" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            try
+            {
+                var jsonData = JsonConvert.SerializeObject(model);
+                LogFile.SaveLogToFile($"Sap瀹㈡埛淇℃伅涓绘暟鎹細( {jsonData} ),", logStr);
+
+                var str = await _customerSvc.AddCustomerSap(model.data);
+
+                var list = new { Success = 0, Message = "涓嬪彂鎴愬姛" };
+                if (!str.Contains("0"))
+                {
+                    list = new { Success = -1, Message = str };
+                }
+
+                LogFile.SaveLogToFile($"瀹㈡埛渚涘簲鍟嗕富鏁版嵁鍚屾锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+
+                return Ok(new { result = true, code = "1", message = "success" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { result = false, code = "400", message = e.Message });
+            }
+        }
+
+
+        /// <summary>
+        /// 鍏ュ簱鍗曟帴鏀�
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public IActionResult CreateAsn(object model)
+        {
+
+            try
+            {
+                LogFile.SaveLogToFile($"Sap鍏ュ簱鍗曚笅鍙戯細( {model} ),", logStr);
+                return Ok(new { result = true, code = "1", message = "success" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { result = false, code = "400", message = e.Message });
+            }
+        }
+
+        /// <summary>
+        /// 鍑哄簱鍗曟帴鏀�
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public IActionResult CreateSo(object model)
+        {
+
+            try
+            {
+                LogFile.SaveLogToFile($"Sap鍑哄簱鍗曚笅鍙戯細( {model} ),", logStr);
+                return Ok(new { result = true, code = "1", message = "success" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { result = false, code = "400", message = e.Message });
+            }
+        }
+
+
+        /// <summary>
+        /// 搴撳瓨璐ㄩ噺鐘舵�佹帴鏀�
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public IActionResult UpQuality(object model)
+        {
+
+            try
+            {
+                //    var sd = JsonConvert.SerializeObject(model);
+                //    var sd2 = JsonConvert.DeserializeObject<BoxPalletBindVm>(sd);
+                LogFile.SaveLogToFile($"Sap璐ㄩ噺鐘舵�佸彉鏇达細( {model} ),", logStr);
+                return Ok(new { result = true, code = "1", message = "success" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { result = false, code = "400", message = e.Message });
+            }
+        }
+        
+
         #endregion
 
         #region 璋冪敤涓婃父绯荤粺鎺ュ彛
@@ -237,7 +389,7 @@
                     await _stockCheckSvc.StockAdjustAuto(model.Id);
                 }
                 //绯荤粺瀵规帴鍚庢斁寮�
-                //var bl =_stockCheckSvc.FinishCr(model.Id,_config.ErpHost + _config.DataChangeUrl, int.Parse(userId));
+                var bl =_stockCheckSvc.FinishCr(model.Id,_config.ErpHost + _config.DataChangeUrl, int.Parse(userId));
                 //if (bl)
                 //{
                 return Ok(new { code = 0, count = 0, msg = "鐩樼偣鍗曡皟鏁翠笂浼犳垚鍔�" });
@@ -268,13 +420,47 @@
                 {
                     return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠璇锋眰绠辩爜淇℃伅" });
                 }
-                var models = _pdaAsnServer.GetFMBindBoxInfos(BoxNo);
+                var models = _pdaAsnServer.GetFMBindBoxInfos(BoxNo, _config.BoxHost + _config.GetBoxUrl);
 
                 return Ok(new { code = 0, msg = "鏍囩绠辩爜淇℃伅", data = models });
             }
             catch (Exception e)
             {
                 return Ok(new { code = 1, msg = e.Message });
+            }
+        }
+
+
+        /// <summary>
+        /// 鍙戦�佽楠屽崟鎹�
+        /// </summary>
+        /// <param name="model">涓婚敭ID</param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult SendInspectionRequest(IdVm model)
+        {
+            try
+            {
+                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 = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                var userName = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier)?.Value;
+
+                string url = _config.LimesHost + _config.SendInspection;
+                var models = _http.SendInspectionRequest(model, int.Parse(userId), url, userName);
+
+                return Ok(new HttpReturnModel { Success = "0", Message = "鍚慙imes璇烽獙鎴愬姛!", Data = models });
+            }
+            catch (Exception e)
+            {
+                return Ok(new HttpReturnModel { Success = "1", Message = e.Message });
             }
         }
 
@@ -315,59 +501,59 @@
             }
         }
 
-        /// <summary>
-        /// 鍏ュ簱鍗曟嵁涓嬪彂
-        /// </summary>
-        /// <param name="model">鍏ュ簱鍗曚俊鎭�</param>
-        /// <returns></returns>
-        [Authorize]
-        [HttpPost]
-        public IActionResult CreateAsn(AsnInfo model)
-        {
-            var result = new ErpModel { Success = -1, Message = "" };
-            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("鏈幏鍙栧埌鐢ㄦ埛淇℃伅");
-                }
+        ///// <summary>
+        ///// 鍏ュ簱鍗曟嵁涓嬪彂
+        ///// </summary>
+        ///// <param name="model">鍏ュ簱鍗曚俊鎭�</param>
+        ///// <returns></returns>
+        //[Authorize]
+        //[HttpPost]
+        //public IActionResult CreateAsn(AsnInfo model)
+        //{
+        //    var result = new ErpModel { Success = -1, Message = "" };
+        //    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("鏈幏鍙栧埌鐢ㄦ埛淇℃伅");
+        //        }
 
-                result = _arrivalNoticeSvc.CreateAsn(model);
+        //        result = _arrivalNoticeSvc.CreateAsn(model);
 
-                return Ok(result);
-            }
-            catch (Exception e)
-            {
-                result.Message = e.Message;
-                return Ok(result);
-            }
-        }
+        //        return Ok(result);
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        result.Message = e.Message;
+        //        return Ok(result);
+        //    }
+        //}
 
-        /// <summary>
-        /// 鍑哄簱鍗曚笅鍙戞帴鍙�
-        /// </summary>
-        /// <param name="model">鍑哄簱鍗曚俊鎭�</param>
-        /// <returns></returns>
-        [HttpPost]
-        public IActionResult CreateSo(SoInfo model)
-        {
-            try
-            {
-                SoResInfo result = _exNoticeSvc.ErpAddExportNotice(model);
-                return Ok(result);
+        ///// <summary>
+        ///// 鍑哄簱鍗曚笅鍙戞帴鍙�
+        ///// </summary>
+        ///// <param name="model">鍑哄簱鍗曚俊鎭�</param>
+        ///// <returns></returns>
+        //[HttpPost]
+        //public IActionResult CreateSo(SoInfo model)
+        //{
+        //    try
+        //    {
+        //        SoResInfo result = _exNoticeSvc.ErpAddExportNotice(model);
+        //        return Ok(result);
 
-            }
-            catch (Exception e)
-            {
-                return Ok(new ErpModel { Success = -1, Message = e.Message });
-            }
-        }
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        return Ok(new ErpModel { Success = -1, Message = e.Message });
+        //    }
+        //}
 
         /// <summary>
         /// 杞﹂棿鍙枡

--
Gitblit v1.8.0