From 9597b1df912c1ca4401a74970d9472e268b3a9c2 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 07 12月 2024 15:12:59 +0800
Subject: [PATCH] 33

---
 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs |  218 +++---------------------------------------------------
 1 files changed, 13 insertions(+), 205 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 5ff4f56..a397772 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,7 +4,6 @@
 using System.Data;
 using System.Web;
 using System.Text;
-using System;
 namespace Admin.NET.Application;
 /// <summary>
 /// 搴撳瓨淇℃伅鏈嶅姟
@@ -13,13 +12,9 @@
 public class WmsStockQuanService : IDynamicApiController, ITransient
 {
     private readonly SqlSugarRepository<WmsStockQuan> _rep;
-    private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _Mes_BatchOrderUPI_New_Rep;
-
-    public WmsStockQuanService(SqlSugarRepository<WmsStockQuan> rep,
-        SqlSugarRepository<Mes_BatchOrderUPI_New> Mes_BatchOrderUPI_New_Rep)
+    public WmsStockQuanService(SqlSugarRepository<WmsStockQuan> rep)
     {
         _rep = rep;
-        _Mes_BatchOrderUPI_New_Rep = Mes_BatchOrderUPI_New_Rep;
     }
 
     /// <summary>
@@ -163,12 +158,12 @@
             .Select<WmsStockQuanOutput>();
         if(input.InTimeRange != null && input.InTimeRange.Count >0)
         {
-            DateTime? start= input.InTimeRange[0].Value.AddDays(-1);
-            query = query.WhereIF(start.HasValue, u => u.InTime > start);
+            DateTime? start= input.InTimeRange[0].Value;
+            query = query.WhereIF(start.HasValue, u => u.InTime >= start);
             if (input.InTimeRange.Count >1 && input.InTimeRange[1].HasValue)
             {
-                var end = input.InTimeRange[1].Value.AddDays(1);
-                query = query.Where(u => u.InTime < end);
+                var end = input.InTimeRange[1].Value;
+                query = query.Where(u => u.InTime <= end);
             }
         } 
         if(input.OperTimeRange != null && input.OperTimeRange.Count >0)
@@ -194,13 +189,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)
         {
            
 
@@ -236,194 +231,7 @@
            
            
         }
-    #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; // 杩斿洖鍒嗙粍缁撴灉
-    }
-
-
-
-
-    /// <summary>
-    /// 涓嶅垎椤垫煡璇㈡壒娆$己鏂欐竻鍗� 涓嶉綈鍖�
-    /// </summary>
-    /// <param name="input"></param>
-    /// <returns></returns>
-    [HttpGet]
-    [ApiDescriptionSettings(Name = "ShortageList")]
-    [Description("WmsStockQuan/ShortageList")]
-    public async Task<List<WmsShortageListOutput>> ShortageList([FromQuery] KittingListInput input)
-    {
-        var list = await _rep.AsQueryable()
-            .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.PlaceCode.Contains(input.DetailName.Trim()))
-            .Select(x => new WmsShortageListOutput
-            {
-                OrderId = x.OrderId,
-                PlanNo = x.PlanNo,
-                PackageCode = x.PackageCode
-            })
-            .ToListAsync(); // 纭繚鑾峰彇缁撴灉涓� List
-
-        // 鍒嗙粍骞惰繑鍥炲垎缁勪俊鎭�
-        var groupedResult = list
-            .GroupBy(x => x.OrderId) // 鎸� OrderId 鍒嗙粍
-            .Select(g => new WmsShortageListOutput
-            {
-                OrderId = g.Key, // 鑾峰彇鍒嗙粍鐨勯敭
-                PlanNo = g.FirstOrDefault().PlanNo, // 鑾峰彇缁勫唴鐨勭涓�涓� PlanNo
-                PackageCode = g.FirstOrDefault().PackageCode, // 鑾峰彇缁勫唴鐨勭涓�涓� PackageCode
-                HasCount = g.Count(), // 缁熻姣忕粍鐨勬暟閲�
-                TotalCount = 0, // 鍒濆鍖� TotalCount
-                ShortageCount = 0 // 鍒濆鍖� ShortageCount
-            })
-            .OrderBy(g => g.OrderId) // 鏍规嵁 OrderId 鎺掑簭
-            .ToList(); // 杞崲涓� List
-
-        // 寰幆 groupedResult 缁欐瘡涓�鏉″姞涓婃�绘暟閲� CountTotal
-        foreach (var item in groupedResult)
-        {
-            item.TotalCount = await _Mes_BatchOrderUPI_New_Rep.AsQueryable().CountAsync(m => m.PackageCode == item.PackageCode); // 鏍规嵁 PackageCode 缁熻鎬绘潯鏁�
-            item.ShortageCount = item.TotalCount - item.HasCount > 0 ? item.TotalCount - item.HasCount : 0;
-        }
-
-        return groupedResult; // 杩斿洖鍒嗙粍缁撴灉
-    }
-
-
-
-
-    /// <summary>
-    /// 鍒嗛〉鏌ヨ鎵规缂烘枡娓呭崟 涓嶉綈鍖� 
-    /// </summary>
-    /// <param name="input"></param>
-    /// <returns></returns>
-    [HttpPost]
-    [ApiDescriptionSettings(Name = "ShortagePage")]
-    [Description("WmsStockQuan/ShortagePage")]
-    public async Task<SqlSugarPagedList<WmsShortageListOutput>> ShortagePage(KittingListInput input)
-    {
-        // 鑾峰彇鍩虹鏁版嵁
-        var list = await _rep.AsQueryable()
-            .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.PlaceCode.Contains(input.DetailName.Trim()))
-            .Select(x => new WmsShortageListOutput
-            {
-                OrderId = x.OrderId,
-                PlanNo = x.PlanNo,
-                PackageCode = x.PackageCode
-            })
-            .ToListAsync(); // 纭繚鑾峰彇缁撴灉涓� List
-
-        // 鍒嗙粍骞惰繑鍥炲垎缁勪俊鎭�
-        var groupedResult = list
-            .GroupBy(x => x.OrderId) // 鎸� OrderId 鍒嗙粍
-            .Select(g => new WmsShortageListOutput
-            {
-                OrderId = g.Key, // 鑾峰彇鍒嗙粍鐨勯敭
-                PlanNo = g.FirstOrDefault().PlanNo, // 鑾峰彇缁勫唴鐨勭涓�涓� PlanNo
-                PackageCode = g.FirstOrDefault().PackageCode, // 鑾峰彇缁勫唴鐨勭涓�涓� PackageCode
-                HasCount = g.Count(), // 缁熻姣忕粍鐨勬暟閲�
-                TotalCount = 0, // 鍒濆鍖� TotalCount
-                ShortageCount = 0 // 鍒濆鍖� ShortageCount
-            })
-            .OrderBy(g => g.OrderId) // 鏍规嵁 OrderId 鎺掑簭
-            .ToList(); // 杞崲涓� List
-
-        // 寰幆 groupedResult 缁欐瘡涓�鏉″姞涓婃�绘暟閲� TotalCount
-        foreach (var item in groupedResult)
-        {
-            item.TotalCount = await _Mes_BatchOrderUPI_New_Rep.AsQueryable().CountAsync(m => m.PackageCode == item.PackageCode); // 鏍规嵁 PackageCode 缁熻鎬绘潯鏁�
-            item.ShortageCount = item.TotalCount - item.HasCount > 0 ? item.TotalCount - item.HasCount : 0;
-        }
-
-        // 鍒嗛〉澶勭悊
-        var pagedResult = groupedResult.AsQueryable() // 灏嗗垎缁勭粨鏋滆浆鎹负鍙煡璇㈢殑闆嗗悎
-            .OrderBy(g => g.OrderId) // 杩涜鎺掑簭
-            .Skip((input.Page - 1) * input.PageSize) // 璺宠繃鍓嶉潰鐨勯〉鏁�
-            .Take(input.PageSize) // 鍙栧嚭褰撳墠椤电殑鏁版嵁
-            .ToList(); // 杞崲涓� List
-
-        var totalCount = groupedResult.Count; // 鑾峰彇鎬绘暟
-        var totalPages = (int)Math.Ceiling((double)totalCount / input.PageSize); // 璁$畻鎬婚〉鏁�
-
-        // 鏋勯�犲苟杩斿洖鍒嗛〉缁撴灉
-        return new SqlSugarPagedList<WmsShortageListOutput>
-        {
-            Page = input.Page,
-            PageSize = input.PageSize,
-            Total = totalCount,
-            TotalPages = totalPages,
-            Items = pagedResult,
-            HasPrevPage = input.Page > 1,
-            HasNextPage = input.Page < totalPages
-        };
-    }
-
-
+     #endregion
 
 }
 

--
Gitblit v1.9.3