From 570046df69aeffbffb3efe8ddecaf523ca492a46 Mon Sep 17 00:00:00 2001
From: zongzhibin <zongzhibin@weben-smart.com>
Date: 周二, 26 11月 2024 09:15:39 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine

---
 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs |   85 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 77 insertions(+), 8 deletions(-)

diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
index fe70b9d..f246294 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
@@ -4,6 +4,7 @@
 using System.Data;
 using System.Web;
 using System.Text;
+using System;
 namespace Admin.NET.Application;
 /// <summary>
 /// 搴撳瓨淇℃伅鏈嶅姟
@@ -189,13 +190,13 @@
         return query;
        }
 
-        /// <summary>
-        /// 閲嶅鎬ч獙璇�
-        /// </summary>
-        /// <param name="input">楠岃瘉瀵硅薄</param>
-        /// <param name="isEdit">鏄惁鏄紪杈�</param>
-        /// <returns></returns>
-        private async Task CheckExist( WmsStockQuan input,bool isEdit=false)
+    /// <summary>
+    /// 閲嶅鎬ч獙璇�
+    /// </summary>
+    /// <param name="input">楠岃瘉瀵硅薄</param>
+    /// <param name="isEdit">鏄惁鏄紪杈�</param>
+    /// <returns></returns>
+    private async Task CheckExist( WmsStockQuan input,bool isEdit=false)
         {
            
 
@@ -231,7 +232,75 @@
            
            
         }
-     #endregion
+    #endregion
+
+
+    /// <summary>
+    /// 涓嶅垎椤垫煡璇㈤綈鍖呯鐞�
+    /// </summary>
+    /// <param name="input"></param>
+    /// <returns></returns>
+    [HttpGet]
+    [ApiDescriptionSettings(Name = "packList")]
+    [Description("WmsStockQuan/packList")]
+    public async Task<List<WmsPackListOutput>> packList([FromQuery] PackListInput input)
+    {
+        // 鏌ヨ骞惰浆鎹负 WmsKittingListOutput 瀵硅薄鐨勫垪琛�
+        var list = await _rep.AsQueryable()
+            .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.PlaceCode.Contains(input.DetailName.Trim()))
+            .Select(x => new WmsPackListOutput
+            {
+                PackageCode = x.PackageCode,
+                // 鏄犲皠鍏朵粬瀛楁
+            })
+            .ToListAsync(); // 纭繚鑾峰彇缁撴灉涓� List
+        // 鍒嗙粍骞惰繑鍥炲垎缁勪俊鎭�
+        var groupedResult = list
+            .GroupBy(x => x.PackageCode) // 鎸� PackageCode 鍒嗙粍
+            .Select(g => new WmsPackListOutput
+            {
+                PackageCode = g.Key, // 鑾峰彇鍒嗙粍鐨勯敭
+                Count = g.Count(), // 缁熻姣忕粍鐨勬暟閲�
+                IsPack = g.Count() == 5 ? true : false // 濡傛灉 Count 涓� 5 鍒� IsKitting 涓� 1锛屽惁鍒欎负 0  
+            })
+            .WhereIF(input.IsPack.HasValue, u => u.IsPack == input.IsPack)
+            .OrderBy(g => g.PackageCode) // 鏍规嵁 PackageCode 鎺掑簭
+            .ToList(); // 杞崲涓� List
+        return groupedResult; // 杩斿洖鍒嗙粍缁撴灉
+    }
+
+
+    /// <summary>
+    /// 涓嶅垎椤垫煡璇㈤綈濂楃鐞�
+    /// </summary>
+    /// <param name="input"></param>
+    /// <returns></returns>
+    [HttpGet]
+    [ApiDescriptionSettings(Name = "KittingList")]
+    [Description("WmsStockQuan/KittingList")]
+    public async Task<List<WmsKittingListOutput>> KittingList([FromQuery] KittingListInput input)
+    {
+        var list = await _rep.AsQueryable()
+            .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.PlaceCode.Contains(input.DetailName.Trim()))
+            .Select(x => new WmsKittingListOutput
+            {
+                OrderId = x.OrderId
+            })
+            .ToListAsync(); // 纭繚鑾峰彇缁撴灉涓� List
+        // 鍒嗙粍骞惰繑鍥炲垎缁勪俊鎭�
+        var groupedResult = list
+            .GroupBy(x => x.OrderId) // 鎸� PackageCode 鍒嗙粍
+            .Select(g => new WmsKittingListOutput
+            {
+                OrderId = g.Key, // 鑾峰彇鍒嗙粍鐨勯敭
+                Count = g.Count(), // 缁熻姣忕粍鐨勬暟閲�
+                IsKitting = g.Count() == 5 ? true : false // 濡傛灉 Count 涓� 5 鍒� IsKitting 涓� 1锛屽惁鍒欎负 0  
+            })
+            .WhereIF(input.IsKitting.HasValue, u => u.IsKitting == input.IsKitting)
+            .OrderBy(g => g.OrderId) // 鏍规嵁 PackageCode 鎺掑簭
+            .ToList(); // 杞崲涓� List
+        return groupedResult; // 杩斿洖鍒嗙粍缁撴灉
+    }
 
 }
 

--
Gitblit v1.9.3