schangxiang@126.com
2024-12-02 5ffe3e968652b17a2b7de39d809a099a05adadf4
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsStockQuan/WmsStockQuan/WmsStockQuanService.cs
@@ -5,6 +5,8 @@
using System.Web;
using System.Text;
using System;
using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto;
namespace Admin.NET.Application;
/// <summary>
/// 库存信息服务
@@ -327,16 +329,17 @@
    ///  [HttpGet]
    [ApiDescriptionSettings(Name = "ShortageList")]
    [Description("WmsStockQuan/ShortageList")]
    public async Task<List<WmsShortageListOutput>> ShortageList(KittingListInput input)
    public async Task<WmsShortageListOutput> ShortageList(KittingListInput input)
    {
        var listRes = await GetShortageListCore(input);
        var resJson = new WmsShortageListOutput();
        if (!string.IsNullOrWhiteSpace(input.UPI))
        {
            listRes = listRes.Where(u => u.UPI == input.UPI).ToList();
            resJson = listRes.FirstOrDefault(u => u.UPI == input.UPI);
            //var filteredResult = listRes.FirstOrDefault(u => u.UPI == input.UPI);
        }
        return listRes;
        return resJson;
    }
    /// <summary>
@@ -371,6 +374,52 @@
        };
    }
    /// <summary>
    /// 分页查询缺料清单 不齐包 -按照生产单号分组
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    [HttpPost]
    [ApiDescriptionSettings(Name = "ShortagePageGroupByInfo5")]
    [Description("WmsStockQuan/ShortagePageGroupByInfo5")]
    public async Task<SqlSugarPagedList<WmsShortageListOutput>> ShortagePageGroupByInfo5(KittingListInput input)
    {
        var listRes = await GetShortageListCore(input);
        // 按照字段 Info5 分组
        var groupedList = listRes
            .GroupBy(x => x.Info5) // 根据 Info5 字段进行分组
            .Select(g => new WmsShortageListOutput // 假设您将分组后的结果转换为 WmsShortageListOutput
            {
                Info5 = g.Key,
                ShortageCount = g.Count(),
            })
            .ToList();
        // 进行分页处理
        var totalCount = groupedList.Count; // 获取总数
        var pagedList = groupedList
            //.OrderBy(x => x.Id) // 根据需要进行排序
            .Skip((input.Page - 1) * input.PageSize)
            .Take(input.PageSize)
            .ToList();
        // 构造并返回分页结果
        return new SqlSugarPagedList<WmsShortageListOutput>
        {
            Page = input.Page,
            PageSize = input.PageSize,
            Total = totalCount,
            TotalPages = (int)Math.Ceiling((double)totalCount / input.PageSize),
            Items = pagedList,
            HasPrevPage = input.Page > 1,
            HasNextPage = input.Page < ((int)Math.Ceiling((double)totalCount / input.PageSize))
        };
    }
    /// <summary>
    /// 缺包数据
    /// </summary>
@@ -400,7 +449,20 @@
                    PackageCode = item.PackageCode,
                    DetailName = item.DetailName,
                    OrderId = item.OrderId,
                    PlanNo = item.PlanNo
                    PlanNo = item.PlanNo,
                    Info5 = item.Info5,
                    Info4 = item.Info4,
                    Info10 = item.Info10,
                    Info11 = item.Info11,
                    Info12= item.Info12,
                    Info13 = item.Info13,
                    //Info14 = item.Info14,
                    Info15 = item.Info15,
                    Info16 = item.Info16,
                    Info18 = item.Info18,
                    Length = item.Length,
                    Width = item.Width,
                    Thk = item.Thk
                });
            }
        }