From a9a3f943efb083de8ed88b293897886b3ef612a2 Mon Sep 17 00:00:00 2001
From: helongyang <647556386@qq.com>
Date: 星期一, 11 八月 2025 17:37:09 +0800
Subject: [PATCH] 功能增添优化

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs |   46 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 41 insertions(+), 5 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
index 2e8992a..27f3b20 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
@@ -17,6 +17,7 @@
 using WIDESEA_DTO;
 using WIDESEA_DTO.Basic;
 using WIDESEA_DTO.ERP;
+using WIDESEA_DTO.Stock;
 using WIDESEA_External.ERPService;
 using WIDESEA_External.Model;
 using WIDESEA_IBasicRepository;
@@ -48,11 +49,46 @@
         public override PageGridData<Dt_ReceiveOrder> GetPageData(PageDataOptions options)
         {
             PageGridData<Dt_ReceiveOrder> pageGridData = base.GetPageData(options);
-            //foreach (var item in pageGridData.Rows)
-            //{
-            //    //鑾峰彇鏀惰揣鏄庣粏
-            //    item.PurchaseOrderNo
-            //}
+
+            ISugarQueryable<Dt_ReceiveOrder> sugarQueryable1 = BaseDal.Db.Queryable<Dt_ReceiveOrder>().Includes(x => x.Details);
+            if (!string.IsNullOrEmpty(options.Wheres))
+            {
+
+                List<SearchParameters> searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
+                int totalCount = 0;
+                if (searchParametersList.Count > 0)
+                {
+                    {
+                        SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_ReceiveOrderDetail.MaterielCode).FirstLetterToLower());
+                        if (searchParameters != null)
+                        {
+                            sugarQueryable1 = sugarQueryable1.Where(x => x.Details.Any(v => v.MaterielCode.Contains(searchParameters.Value)));
+                            List<Dt_ReceiveOrder> dataList = sugarQueryable1.ToPageList(options.Page, options.Rows, ref totalCount);
+                            return new PageGridData<Dt_ReceiveOrder>(totalCount, dataList);
+                        }
+                    }
+                    {
+                        SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_ReceiveOrderDetail.LotNo).FirstLetterToLower());
+                        if (searchParameters != null)
+                        {
+                            sugarQueryable1 = sugarQueryable1.Where(x => x.Details.Any(v => v.LotNo.Contains(searchParameters.Value)));
+                            List<Dt_ReceiveOrder> dataList = sugarQueryable1.ToPageList(options.Page, options.Rows, ref totalCount);
+                            return new PageGridData<Dt_ReceiveOrder>(totalCount, dataList);
+                        }
+                    }
+                    {
+                        SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_ReceiveOrderDetail.PurchaseOrderNo).FirstLetterToLower());
+                        if (searchParameters != null)
+                        {
+                            sugarQueryable1 = sugarQueryable1.Where(x => x.Details.Any(v => v.PurchaseOrderNo.Contains(searchParameters.Value)));
+                            List<Dt_ReceiveOrder> dataList = sugarQueryable1.ToPageList(options.Page, options.Rows, ref totalCount);
+                            return new PageGridData<Dt_ReceiveOrder>(totalCount, dataList);
+                        }
+                    }
+
+                }
+              
+            }
             return pageGridData;
         }
         public override WebResponseContent AddData(SaveModel saveModel)

--
Gitblit v1.9.3