wangxinhui
2025-11-18 b513ce3a4527e998da66c6f179a279472c7262a8
ÏîÄ¿´úÂë/WMS/WMSServices/WIDESEA_InboundService/InboundOrderService.cs
@@ -16,6 +16,7 @@
using WIDESEA_DTO.ERP;
using WIDESEA_Core.Helper;
using System.Security.Cryptography;
using WIDESEA_Common.WareHouseEnum;
namespace WIDESEA_InboundService
{
@@ -55,9 +56,10 @@
                {
                    return content.Error($"入库条码{nameof(inboundDetailItem.BarCode)}:{inboundDetailItem.BarCode}物料:{inboundDetailItem.MaterialCode}不存在");
                }
                //获取所有采购信息
                //获取所有入库信息
                List<Dt_InboundOrder> inboundOrdersOld = BaseDal.Db.Queryable<Dt_InboundOrder>().Includes(x => x.Details).ToList();
                //获取所有入库明细信息
                List<Dt_InboundOrderDetail> inboundOrderDetailsOld = inboundOrdersOld.SelectMany(x=>x.Details).ToList();
                if (eRPInboundOrderDTO.OperateType == 1)
                {
                    //判断重复插入
@@ -71,8 +73,17 @@
                    inboundOrderDetails.ForEach(x =>
                    {
                        Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(t => t.MaterielCode == x.MaterialCode);
                        if (warehouse.WarehouseCode==WarehouseEnum.LLDYL.ToString() && x.MaterialThick<= 0)
                        {
                            throw new Exception($"物料{x.MaterialCode}条码{x.BarCode}直径需大于0");
                        }
                        if (inboundOrderDetailsOld.FirstOrDefault(t=>t.BarCode==x.BarCode)!=null)
                        {
                            throw new Exception($"入库单{inboundOrder.UpperOrderNo}{x.MaterialCode}条码{x.BarCode}已存在");
                        }
                        x.MaterialName = materielInfo?.MaterielName;
                        x.Unit = materielInfo?.MaterielUnit;
                        x.MaterialSpec = materielInfo.MaterielSpec;
                    });
                    inboundOrder.Details = inboundOrderDetails;
                    inboundOrder.WarehouseId = warehouse.WarehouseId;