From e46aa927d231af83724683c7286d9db503e24cf7 Mon Sep 17 00:00:00 2001 From: z8018 <1282578289@qq.com> Date: 星期二, 10 六月 2025 11:46:20 +0800 Subject: [PATCH] 1 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/OrderDetailsService.cs | 89 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 81 insertions(+), 8 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/OrderDetailsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/OrderDetailsService.cs" index dbc29db..585de7c 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/OrderDetailsService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/OrderDetailsService.cs" @@ -40,8 +40,6 @@ using WIDESEAWCS_Core.Enums; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_DTO.BasicInfo; -using WIDESEAWCS_DTO.Enum; -using WIDESEAWCS_DTO.TaskInfo; using WIDESEAWCS_IBasicInfoRepository; using WIDESEAWCS_IBasicInfoService; using WIDESEAWCS_Model.Models; @@ -50,21 +48,41 @@ { public class OrderDetailsService : ServiceBase<OrderDetails, IOrderDetailsRepository>, IOrderDetailsService { - public OrderDetailsService(IOrderDetailsRepository BaseDal) : base(BaseDal) + private readonly IOrderrowsRepository _orderrowsRepository; + public OrderDetailsService(IOrderDetailsRepository BaseDal, IOrderrowsRepository orderrowsRepository) : base(BaseDal) { - + _orderrowsRepository = orderrowsRepository; } private static bool toggle = false; private static int lastStaion = 0; - public int GetOrderDetails(string barcode, List<int> useableStations) + public int GetOrderDetails(string barcode, List<int> useableStations, out ProductInfoDTO productInfo) { OrderDetails? orderDetails = BaseDal.QueryData(x => x.Orderdetails_outid == barcode).FirstOrDefault(); if (orderDetails != null) { + productInfo = new ProductInfoDTO() + { + Code = barcode, + Height = Convert.ToInt32(orderDetails.Orderdetails_thickness), + Length = Convert.ToInt32(orderDetails.Orderdetails_length), + Width = Convert.ToInt32(orderDetails.Orderdetails_width), + }; + + int length = productInfo.Length; + int width = productInfo.Width; + if (length < width) + { + length = productInfo.Width; + width = productInfo.Length; + } + useableStations = useableStations.OrderByDescending(x => x).ToList(); - if (orderDetails.Orderdetails_width <= 800 && orderDetails.Orderdetails_width >= 50)//1,2,3 + if (width < 100) + useableStations = useableStations.Where(x => x != 1).OrderByDescending(x => x).ToList(); + + if (width <= 800 && width >= 50)//1,2,3 { if (lastStaion == 0) { @@ -74,7 +92,7 @@ else { int index = useableStations.IndexOf(lastStaion); - if(index + 1 < useableStations.Count) + if (index + 1 < useableStations.Count) { lastStaion = useableStations[index + 1]; return lastStaion; @@ -86,7 +104,7 @@ } } } - else if (orderDetails.Orderdetails_width >= 800 && orderDetails.Orderdetails_width <= 1220)//1,2 + else if (width >= 800 && width <= 1220)//1,2 { useableStations = useableStations.Where(x => x != 3).ToList(); @@ -121,6 +139,7 @@ } else { + productInfo = new ProductInfoDTO(); return -1; } } @@ -140,6 +159,60 @@ return toMesBarc; } + public ToMesBarcRes? ToMes(string barcode, int processId) + { + try + { + object obj = new + { + id = barcode, + processId + }; + ToMesBarcRes? toMesBarc = JsonConvert.DeserializeObject<ToMesBarcRes>(HttpHelper.Post($"{ToMesScan_sync}", obj.Serialize())); + return toMesBarc; + } + catch (Exception ex) + { + return null; + } + + } + + public OrderInfo GetOrderInfoByBarcode(string barcode) + { + try + { + OrderDetails orderDetails = BaseDal.QueryFirst(x => x.Orderdetails_outid == barcode); + if (orderDetails == null) + { + throw new Exception($"銆恵barcode}銆戞湭鎵惧埌鏉$爜瀵瑰簲璁㈠崟淇℃伅"); + } + + Orderrows orderrows = _orderrowsRepository.QueryFirst(x => x.id == orderDetails.Orderrowsid); + if (orderrows == null) + { + throw new Exception($"銆恵barcode}銆戞湭鎵惧埌瀵瑰簲璁㈠崟澶翠俊鎭�"); + } + + OrderInfo orderInfo = new OrderInfo() + { + Barcode = barcode, + Length = orderDetails.Orderdetails_length, + OrderBatch = orderrows.Orderrows_batchid, + OrderHeadId = orderrows.id, + OrderNo = orderrows.Orderrows_orderid, + OrderRowNum = orderrows.Orderrows_id, + Quantity = Convert.ToInt32(orderrows.Orderrows_num), + Thickness = orderDetails.Orderdetails_thickness, + Width = orderDetails.Orderdetails_width, + }; + return orderInfo; + } + catch (Exception ex) + { + throw new Exception(ex.Message); + } + } } } -- Gitblit v1.9.3