MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs
@@ -1,7 +1,10 @@
using System.Data;
using MES.Service.DB;
using MES.Service.Dto.@base;
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.util;
using Microsoft.Extensions.Options;
using Newtonsoft.Json;
using SqlSugar;
using DbType = System.Data.DbType;
@@ -11,8 +14,6 @@
public class MesInvItemInCDetailsManager : Repository<MesInvItemInCDetails>
{
    //当前类已经继承了 Repository 增、删、查、改的方法
    private readonly MessageCenterManager _messageCenterManager = new();
    public PurchaseInventory SaveBarCodes(WarehouseQuery entity)
    {
@@ -27,7 +28,7 @@
        // 使用 SqlSugar 执行存储过程
        Db.Ado.ExecuteCommand(
            "BEGIN prc_rf_pda_scan_in_barcode(:c_in_str, :c_result); END;",
            "BEGIN prc_rf_pda_scan_in_barcode_N(:c_in_str, :c_result); END;",
            new SugarParameter("c_in_str", inputParam,
                DbType.String), outputParam);
@@ -108,36 +109,10 @@
            }).ToPageList(query.PageIndex, query.Limit);
    }
    public List<MesInvItemInCDetails> GetItemInDetails(decimal? pid)
    public List<MesInvItemInCItems> GetItemInDetails(decimal? pid)
    {
        var result = Db.Queryable<MesInvItemInCDetails, MesItems>(
                (g, c) => new JoinQueryInfos(
                    JoinType.Left,
                    g.ItemNo == c.ItemNo && g.Company == c.Company &&
                    g.Factory == c.Factory
                )
            )
            .WhereIF(pid > 0, (g, c) => g.ItemInId == pid)
            .GroupBy((g, c) => new
            {
                g.Company, g.Factory, g.ItemInId, g.WorkNo, g.ItemNo,
                g.BoardStyle, g.WorkLine, c.ItemName, c.ItemModel, c.ItemUnit
            })
            .Select((g, c) => new MesInvItemInCDetails
            {
                Company = g.Company,
                Factory = g.Factory,
                ItemInId = g.ItemInId,
                WorkNo = g.WorkNo,
                ItemNo = g.ItemNo,
                ItemName = c.ItemName,
                ItemModel = c.ItemModel,
                ItemUnit = c.ItemUnit,
                BoardStyle = g.BoardStyle,
                WorkLine = g.WorkLine,
                SumQuantity = SqlFunc.AggregateSum(g.Quantity) // 聚合计算
            })
            .ToList();
        var result = Db.Queryable<MesInvItemInCItems>()
            .WhereIF(pid > 0, g => g.ItemInId == pid).ToList();
        return result;
    }
@@ -170,7 +145,7 @@
        return result;
    }
    public MessageCenter MesToErpParam(WarehouseQuery query)
    {
        var erpParameters = "";
@@ -187,10 +162,11 @@
            title = "采购入库单" + query.billNo + "反审核";
        }
        string ErpUrl = AppsettingsUtility.Settings.TestErpUrl;
        var message = new MessageCenter
        {
            TableName = tableName,
            Url = "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfo",
            Url = ErpUrl,
            Status = 1,
            CreateBy = query.userName,
            Route = query.billNo,
@@ -255,7 +231,7 @@
        if (invItemIns.Status == 1) throw new Exception("入库单已审核,不能重复推送");
        var materials = Db.Queryable<MesInvItemInCDetails, MesItems, MesUnit,
        var materials = Db.Queryable<MesInvItemInCItems, MesItems, MesUnit,
            MesInvItemArnDetail>(
            (g, c, d, a) => new JoinQueryInfos(
                JoinType.Left,