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 |   75 +++++++++++++++++++++++++++++++++++--
 1 files changed, 71 insertions(+), 4 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 0fb3598..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"
@@ -48,9 +48,10 @@
 {
     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;
@@ -68,8 +69,20 @@
                     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)
                     {
@@ -91,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();
 
@@ -146,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