| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Net.WebSockets; |
| | | using System.Reflection; |
| | | using System.Reflection.Metadata; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Common; |
| | | using WIDESEA_Common.Log; |
| | | using WIDESEA_Common.OrderEnum; |
| | | using WIDESEA_Common.TaskEnum; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.Enums; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_Core.Log; |
| | | using WIDESEA_Core.LogHelper; |
| | | using WIDESEA_Core.TaskEnum; |
| | | using WIDESEA_DTO.Task; |
| | |
| | | if (stockInfo.StockStatus == StockStatusEmun.合托出库完成.ObjToInt()) |
| | | { |
| | | |
| | | } |
| | | if (stockInfo.StockStatus == StockStatusEmun.盘点出库完成.ObjToInt()) |
| | | { |
| | | return WebResponseContent.Instance.Error($"该托盘{palletCode}未盘点"); |
| | | } |
| | | ///判断是否存在回库单,进行回原库位逻辑 |
| | | string returnOrderNo = stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.OrderNo; |
| | |
| | | _unitOfWorkManage.BeginTran(); |
| | | int taskId = BaseDal.AddData(newTask); |
| | | newTask.TaskId = taskId; |
| | | List<Dt_StockInfoDetail> stockInfoDetails = stockInfo.Details; |
| | | foreach (var stockInfoDetail in stockInfoDetails) |
| | | { |
| | | WriteLog.Write_Log("API", "入库—请求LED", "请求成功", new { 请求报文 = 1 }); |
| | | var postData = new |
| | | { |
| | | DeviceCode = newTask.CurrentAddress, // 屏幕编号 |
| | | MaterialCode = stockInfoDetail.MaterielCode,//物料类型 |
| | | SendNum = stockInfoDetail.OutboundQuantity,//发料数 |
| | | BackNum = stockInfoDetail.StockQuantity - stockInfoDetail.OutboundQuantity//回库数 |
| | | }; |
| | | WriteLog.Write_Log("API", "入库—请求LED", "请求成功", new { 请求报文2 = postData }); |
| | | string json = Newtonsoft.Json.JsonConvert.SerializeObject(postData); |
| | | WriteLog.Write_Log("API", "入库—请求LED", "请求成功", new { 请求报文3 = json }); |
| | | using (var client = new HttpClient()) |
| | | { |
| | | var content = new StringContent(json, Encoding.UTF8, "application/json"); |
| | | var response = client.PostAsync(LEDAPI, content).Result; |
| | | string result = response.Content.ReadAsStringAsync().Result; |
| | | WriteLog.Write_Log("API", "入库—请求LED", "请求成功", new { 请求报文 = response, 接收报文 = result }); |
| | | } |
| | | WriteLog.Write_Log("API", "入库—请求LED", "请求成功", new { 请求报文 = 4 }); |
| | | } |
| | | |
| | | if (returnOrder != null) |
| | | { |
| | | returnOrder.OrderStatus = InOrderStatusEnum.入库中.ObjToInt(); |
| | |
| | | } |
| | | return palletTypeInfo.PalletType; |
| | | } |
| | | else |
| | | else |
| | | { |
| | | Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 2)); |
| | | if (palletTypeInfo == null) |
| | |
| | | houseInboundPassBack.Context.Add("Ticket", Ticket); |
| | | houseInboundPassBack.Context.Add("InvOrgId", InvOrgId); |
| | | var responses = HttpHelper.Post<WebResponseContent>(ReceiveWMSInventoryIn, houseInboundPassBack, "立库入库数量回传WMS"); |
| | | WriteLog.Write_Log("API", "盘点差异数量回传", "请求", new { 请求报文 = houseInboundPassBack, 接收报文 = responses }); |
| | | |
| | | } |
| | | content = WebResponseContent.Instance.OK(); |
| | | } |