schangxiang@126.com
2025-03-10 8893638de46547923e0684220df3d9782f7ec283
缓存岛需要加个批次号条件、可以选择某个批次出
已修改4个文件
37 ■■■■ 文件已修改
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Database.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryOutput.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/WmsCommonnQueryService.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Database.json
@@ -9,7 +9,7 @@
        //"ConfigId": "1300000000001", // 默认库标识-禁止修改
        "DbType": "SqlServer", // MySql、SqlServer、Sqlite、Oracle、PostgreSQL、Dm、Kdbndp、Oscar、MySqlConnector、Access、OpenGauss、QuestDB、HG、ClickHouse、GBase、Odbc、Custom
        // "ConnectionString": "Server=.;Database=iWare_RawMaterialWarehouse_Wms;User=sa;Password=123456;MultipleActiveResultSets=True;", // 库连接字符串
        "ConnectionString": "Server=172.17.1.111;Database=LA24030_LuLiPackageLine;User=sa;Password=admin@123;MultipleActiveResultSets=True;", // 库连接字符串
        "ConnectionString": "Server=.;Database=LA24030_LuLiPackageLine;User=sa;Password=123abc.com;MultipleActiveResultSets=True;", // 库连接字符串
        //"SlaveConnectionConfigs": [ // 读写分离/主从
        //    {
        //        "HitRate": 10,
@@ -26,7 +26,7 @@
          "EnableUnderLine": false // 启用驼峰转下划线
        },
        "TableSettings": {
          "EnableInitTable": true, // 启用表初始化
          "EnableInitTable": false, // 启用表初始化
          "EnableIncreTable": false // 启用表增量更新-特性[IncreTable]
        },
        "SeedSettings": {
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryInput.cs
@@ -19,4 +19,14 @@
    public string PackageCode { get; set; }
    /// <summary>
    /// 批次
    /// </summary>
    public string PlanNo { get; set; }
    /// <summary>
    /// 订单号
    /// </summary>
    public string OrderId { get; set; }
}
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/Dto/WmsCommonnQueryOutput.cs
@@ -12,6 +12,17 @@
public class WmsPackListOutput
{
    public string PackageCode { get; set; } // 包装代码
    /// <summary>
    /// 批次
    /// </summary>
    public string PlanNo { get; set; }
    /// <summary>
    /// 订单号
    /// </summary>
    public string OrderId { get; set; }
    /// <summary>
    /// 缓存岛已有数量
    /// </summary>
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsCommonnQuery/WmsCommonnQueryService.cs
@@ -264,24 +264,28 @@
        // 获取符合条件的记录,并提取所需信息
        var list = await _wmsStockQuanRep.AsQueryable()
            .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim()))
            .Select(x => new { x.PackageCode })
            .WhereIF(!string.IsNullOrWhiteSpace(input.PlanNo), u => u.PlanNo.Contains(input.PlanNo.Trim()))
            .WhereIF(!string.IsNullOrWhiteSpace(input.OrderId), u => u.OrderId.Contains(input.OrderId.Trim()))
            .Select(x => new { x.PackageCode, x.PlanNo, x.OrderId })
            .ToListAsync();
        // 创建一个列表以存储 WmsPackListOutput
        var resultList = new List<WmsPackListOutput>();
        // 分组并计算每组信息
        var groupedResult = list.GroupBy(x => x.PackageCode);
        var groupedResult = list.GroupBy(x => new { x.PackageCode, x.PlanNo, x.OrderId });
        foreach (var g in groupedResult)
        {
            // 在这里计算每组的总数
            var count = g.Count();
            var mesTotalCount = await _mesBatchOrderUpiRep.AsQueryable().CountAsync(m => m.PackageCode == g.Key);
            var mesTotalCount = await _mesBatchOrderUpiRep.AsQueryable().CountAsync(m => m.PackageCode == g.Key.PackageCode);
            resultList.Add(new WmsPackListOutput
            {
                PackageCode = g.Key,
                PackageCode = g.Key.PackageCode,
                PlanNo = g.Key.PlanNo,
                OrderId = g.Key.OrderId,
                Count = count,
                MesTotalCount = mesTotalCount,
                IsPack = count >= mesTotalCount, // 检查是否打包