diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/Backflu.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/Backflu.cs new file mode 100644 index 000000000..ef57f4aff --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/Backflu.cs @@ -0,0 +1,58 @@ +using System.ComponentModel.DataAnnotations; +using Volo.Abp.Domain.Entities; + +namespace Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; +public class Backflu : Entity +{ + + /// + /// MES写入时间 + /// + public string scmout_dt_w { get; set; } + /// + /// 单据类型 + /// + public string scmout_type { get; set; } + /// + /// TYRP单号 + /// + [Key] + public string scmout_nbr { get; set; } + /// + /// 料号 + /// + public string scmout_part { get; set; } + /// + /// 追加码/预定交货日/序号/储位 + /// + public string scmout_no { get; set; } + /// + /// TYRP异动储位 + /// + public string scmout_loc { get; set; } + /// + /// 库存交易年月 + /// + public string scmout_ym { get; set; } + /// + /// 库存交易日 + /// + public string scmout_date { get; set; } + /// + /// 数量 + /// + public decimal scmout_qty { get; set; } + /// + /// 调入储位 + /// + public string scmout_in_loc { get; set; } + /// + /// 有效码 + /// + public string scmout_stat { get; set; } + + public override object[] GetKeys() + { + return new object[] { scmout_nbr }; + } +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/BackfluManager.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/BackfluManager.cs new file mode 100644 index 000000000..aa2e1a195 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/BackfluManager.cs @@ -0,0 +1,28 @@ +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Volo.Abp.Domain.Services; + +namespace Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; +public class BackfluManager : DomainService, IBackfluManager +{ + private readonly IBackfluRepository _repository; + public BackfluManager(IBackfluRepository repository) + { + _repository = repository; + } + public async Task> GetToBeProcessedListAsync() + { + var Backflu = await _repository.GetListAsync().ConfigureAwait(false); + + return Backflu.ToList(); + } + public virtual async Task UpdateProcessedListAsync(List entities) + { + foreach (var entitie in entities) + { + entitie.scmout_stat = "N"; + await _repository.UpdateAsync(entitie).ConfigureAwait(false); + } + } +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluManager.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluManager.cs new file mode 100644 index 000000000..d87b62978 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluManager.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Volo.Abp.Domain.Services; + +namespace Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; +public interface IBackfluManager : IDomainService +{ + Task> GetToBeProcessedListAsync(); + Task UpdateProcessedListAsync(List entities); +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluRepository.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluRepository.cs new file mode 100644 index 000000000..26f50aeb3 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes/Backflus/IBackfluRepository.cs @@ -0,0 +1,7 @@ +using Volo.Abp.Domain.Repositories; + +namespace Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; +public interface IBackfluRepository : IRepository +{ + +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/BackfluManager.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/BackfluManager.cs index fbdaa8e1d..d25f37ee5 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/BackfluManager.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/BackfluManager.cs @@ -19,5 +19,12 @@ public class BackfluManager : DomainService, IBackfluManager return Backflu.ToList(); } - + public virtual async Task UpdateProcessedListAsync(List entities) + { + foreach (var entitie in entities) + { + entitie.scmout_stat = "N"; + await _repository.UpdateAsync(entitie).ConfigureAwait(false); + } + } } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/IBackfluManager.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/IBackfluManager.cs index c7face679..6de3f20b1 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/IBackfluManager.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp/Backflus/IBackfluManager.cs @@ -7,5 +7,5 @@ namespace Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp; public interface IBackfluManager : IDomainService { Task> GetToBeProcessedListAsync(); - //Task UpdateProcessedListAsync(List entities); + Task UpdateProcessedListAsync(List entities); } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusDbContextModelCreatingExtensions.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusDbContextModelCreatingExtensions.cs new file mode 100644 index 000000000..46b15138e --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusDbContextModelCreatingExtensions.cs @@ -0,0 +1,31 @@ + +using Microsoft.EntityFrameworkCore; +using Volo.Abp.EntityFrameworkCore.Modeling; +using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; + +namespace Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes; +public static class BackfluDbContextModelCreatingExtensions +{ + public static void ConfigureBackflu(this ModelBuilder builder, MesModelBuilderConfigurationOptions options) + { + builder.Entity(b => + { + //Configure table & schema Name + b.ToTable(options.TablePrefix + "scmout", options.Schema); + //Configure ABP properties + b.ConfigureByConvention(); + b.Property(q => q.scmout_dt_w).HasMaxLength(20); + b.Property(q => q.scmout_type).HasMaxLength(6); + b.Property(q => q.scmout_nbr).HasMaxLength(12); + b.Property(q => q.scmout_part).HasMaxLength(20); + b.Property(q => q.scmout_no).HasMaxLength(10); + b.Property(q => q.scmout_loc).HasMaxLength(10); + b.Property(q => q.scmout_ym).HasMaxLength(6); + b.Property(q => q.scmout_date).HasMaxLength(8); + b.Property(q => q.scmout_qty).HasPrecision(10, 2); + b.Property(q => q.scmout_in_loc).HasMaxLength(10); + b.Property(q => q.scmout_stat).HasMaxLength(1); + }); + + } +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusEfCoreRepository.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusEfCoreRepository.cs new file mode 100644 index 000000000..b0b452778 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/Backflus/BackflusEfCoreRepository.cs @@ -0,0 +1,12 @@ +using Volo.Abp.Domain.Repositories.EntityFrameworkCore; +using Volo.Abp.EntityFrameworkCore; +using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; + +namespace Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes; +public class BackfluEfCoreRepository : EfCoreRepository, IBackfluRepository +{ + public BackfluEfCoreRepository(IDbContextProvider dbContextProvider) + : base(dbContextProvider) + { + } +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeDbContextModelCreatingExtensions.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeDbContextModelCreatingExtensions.cs index d9a084b20..3d5d56d79 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeDbContextModelCreatingExtensions.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeDbContextModelCreatingExtensions.cs @@ -26,6 +26,6 @@ public static class DataExchangeDbContextModelCreatingExtensions builder.ConfigurePullTask(options); builder.ConfigureScrap(options); builder.ConfigurePck(options); - + builder.ConfigureBackflu(options); } } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeEntityFrameworkCoreFawtygModule.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeEntityFrameworkCoreFawtygModule.cs index 13459e207..ea5d271be 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeEntityFrameworkCoreFawtygModule.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/DataExchangeEntityFrameworkCoreFawtygModule.cs @@ -31,5 +31,6 @@ public class DataExchangeEntityFrameworkCoreFawtygModule : AbpModule context.Services.AddTransient(); context.Services.AddTransient(); context.Services.AddTransient(); + context.Services.AddTransient(); } } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/IMesDbContext.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/IMesDbContext.cs index 10caffc24..60810373f 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/IMesDbContext.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/IMesDbContext.cs @@ -19,4 +19,5 @@ public interface IMesDbContext : IEfCoreDbContext DbSet MesOuts { get; } DbSet PullTasks { get; } + DbSet Backflu { get; } } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/MesDbContext.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/MesDbContext.cs index f99c3cac6..775047674 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/MesDbContext.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.EntityFrameworkCore.Fawtyg.Mes/MesDbContext.cs @@ -20,6 +20,7 @@ public class MesDbContext : public virtual DbSet PullTasks { get; } public virtual DbSet Issue { get; } + public virtual DbSet Backflu { get; } public MesDbContext(DbContextOptions options) : base(options) diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluConverter.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluConverter.cs new file mode 100644 index 000000000..87a025842 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluConverter.cs @@ -0,0 +1,83 @@ +using System.Collections.Generic; +using System.Linq; +using System.Text.Json; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Volo.Abp.ObjectMapping; +using Win_in.Sfs.Basedata.Application.Contracts; +using Win_in.Sfs.Wms.DataExchange.Domain; +using Win_in.Sfs.Wms.DataExchange.WMS.BackFlushNote; +using Win_in.Sfs.Wms.Store.Application.Contracts; + +namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.Incoming; + +public class BackFluConverter : IIncomingConverter +{ + private readonly IIncomingFromExternalManager _incomingFromExternalManager; + private readonly IIncomingToWmsManager _incomingToWmsManager; + private readonly IItemBasicAppService _itemBasicAppService; + private readonly IObjectMapper _objectMapper; + private readonly ILogger _logger; + public BackFluConverter( + IIncomingToWmsManager incomingToWmsManager, + IItemBasicAppService itemBasicAppService, + IObjectMapper objectMapper, + ILogger logger +, + IIncomingFromExternalManager incomingFromExternalManager + +) + { + _incomingToWmsManager = incomingToWmsManager; + _itemBasicAppService = itemBasicAppService; + _objectMapper = objectMapper; + _logger = logger; + _incomingFromExternalManager = incomingFromExternalManager; + } + public virtual async Task ConvertAsync(List incomingFromExternalList) + { + if (!incomingFromExternalList.Any()) + { + _logger.LogInformation("no backflus"); + return; + } + var incomingToWmsDataList = await BuildIncomingToWmsOfPurchaseOrderAsync(incomingFromExternalList).ConfigureAwait(false); + await _incomingToWmsManager.CreateManyAsync(incomingToWmsDataList).ConfigureAwait(false); + //归档 + await _incomingFromExternalManager.ArchiveBulkAsync(incomingFromExternalList).ConfigureAwait(false); + + } + + private async Task> BuildIncomingToWmsOfPurchaseOrderAsync(List incomingDataList) + { + await Task.CompletedTask.ConfigureAwait(false); + var incomingToWmsList = new List(); + var groups = incomingDataList.GroupBy(p => p.SourceDataGroupCode); + foreach (var group in groups) + { + var first = group.First(); + var incomingToWms = new IncomingToWms() + { + DataType = first.DataType, + DataAction = first.DataAction, + SourceSystem = first.SourceSystem, + DataIdentityCode = first.SourceDataGroupCode, + }; + incomingToWms.SetEffectiveDate(first.EffectiveDate); + var exchangeBack = JsonSerializer.Deserialize(first.DestinationDataContent); + var wmsBack = _objectMapper.Map(exchangeBack); + wmsBack.Details = new List(); + foreach (var incomingFromExternal in group.ToList()) + { + var back = JsonSerializer.Deserialize(incomingFromExternal.DestinationDataContent); + var wmsBackDetail = _objectMapper.Map(back.Detail); + + wmsBack.Details.Add(wmsBackDetail); + } + incomingToWms.DataContent = JsonSerializer.Serialize(wmsBack); + incomingToWmsList.Add(incomingToWms); + } + return incomingToWmsList; + } + +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluReader.cs new file mode 100644 index 000000000..f479fed59 --- /dev/null +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/BackFluReader.cs @@ -0,0 +1,112 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.Json; +using System.Threading.Tasks; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; +using Win_in.Sfs.Wms.DataExchange.Domain; +using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; +using Win_in.Sfs.Wms.DataExchange.Domain.Shared; + +using Win_in.Sfs.Wms.DataExchange.WMS.BackFlushNote; + +namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.Incoming; + +public class BackFluReader : IReader +{ + private readonly IBackfluManager _ibackfluManager; + private readonly IIncomingFromExternalManager _incomingFromExternalManager; + private readonly ILogger _logger; + private readonly IConfiguration _configuration; + public BackFluReader( + IBackfluManager ibackfuManager + , IIncomingFromExternalManager incomingFromExternalManager + , ILogger logger + , IConfiguration configuration + ) + { + _ibackfluManager = ibackfuManager; + _incomingFromExternalManager = incomingFromExternalManager; + _logger = logger; + _configuration = configuration; + } + public virtual async Task> ReadAsync() + { + //从Tyrp读取待处理bom + var BackFull = await _ibackfluManager.GetToBeProcessedListAsync().ConfigureAwait(false); + var toBeProcessedBack = BackFull.Where(p => p.scmout_stat == "Y").ToList(); + if (!toBeProcessedBack.Any()) + { + _logger.LogInformation("no backflus"); + return new List(); + } + //bom逐一转换为bomNote + var incomingDataList = BuildIncomingFromExternalFromBomAsync(toBeProcessedBack); + await _incomingFromExternalManager.CreateManyAsync(incomingDataList).ConfigureAwait(false); + await _ibackfluManager.UpdateProcessedListAsync(toBeProcessedBack).ConfigureAwait(false); + return incomingDataList; + } + private List BuildIncomingFromExternalFromBomAsync(List toBeProcessedIssue) + { + var incomingDataList = new List(); + foreach (var backflu in toBeProcessedIssue) + { + var incomingData = BuildIncomingFromExternal(backflu); + + incomingData.SetEffectiveDate(DateTime.Now); + + try + { + var bm = BuildScrapNoteOrderExchangeMes(backflu); + incomingData.DestinationDataContent = JsonSerializer.Serialize(backflu); + } + catch (Exception ex) + { + incomingData.SetError(EnumExchangeDataErrorCode.Exception, ex.Message, ex.ToString()); + } + + incomingDataList.Add(incomingData); + + } + return incomingDataList; + } + private IncomingFromExternal BuildIncomingFromExternal(Backflu backflu) + { + var incomingData = new IncomingFromExternal() + { + DataType = EnumIncomingDataType.BackFlush.ToString(), + DataAction = EnumExchangeDataAction.Add, + SourceSystem = EnumSystemType.ERP.ToString(), + SourceDataId = backflu.scmout_type, + SourceDataGroupCode = backflu.scmout_nbr, + SourceDataDetailCode = backflu.scmout_part, + SourceDataContent = JsonSerializer.Serialize(backflu), + WriteTime = DateTime.Now, + Writer = nameof(MesIncomingBackgroundWorker), + DestinationSystem = EnumSystemType.ERP.ToString(), + }; + return incomingData; + } + + private static BackFlushNoteExchangeDto BuildScrapNoteOrderExchangeMes(Backflu backflu) + { + + var back = new BackFlushNoteExchangeDto() + { + + ActiveDate = Convert.ToDateTime(backflu.scmout_dt_w.Substring(0, 4) + "-" + backflu.scmout_dt_w.Substring(4, 2) + "-" + backflu.scmout_dt_w.Substring(6, 2)), + ItemCode = backflu.scmout_part, + Number = backflu.scmout_nbr + }; + var bakcdetail = new BackFlushNoteDetailExchangeDto() + { + Number = backflu.scmout_nbr, + ItemCode = backflu.scmout_part, + Qty = backflu.scmout_qty, + LocationErpCode = backflu.scmout_loc + }; + back.Detail = bakcdetail; + return back; + } +} diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesIncomingBackgroundWorker.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesIncomingBackgroundWorker.cs index 558588868..750af9290 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesIncomingBackgroundWorker.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesIncomingBackgroundWorker.cs @@ -34,21 +34,21 @@ public class MesIncomingBackgroundWorker : AsyncPeriodicBackgroundWorkerBase Logger.LogInformation($"{Incoming} is not active!"); return; } - Logger.LogInformation($"Read MesOut");//缴库 - var mesOutReader = workerContext.ServiceProvider.GetRequiredService(); - var mesOutConverter = workerContext.ServiceProvider.GetRequiredService(); - //读取并保存MesOut - var mesOutsFromExternalList = await mesOutReader.ReadAsync().ConfigureAwait(false); - //转换MesOut - await mesOutConverter.ConvertAsync(mesOutsFromExternalList).ConfigureAwait(false); + //Logger.LogInformation($"Read MesOut");//缴库 + //var mesOutReader = workerContext.ServiceProvider.GetRequiredService(); + //var mesOutConverter = workerContext.ServiceProvider.GetRequiredService(); + ////读取并保存MesOut + //var mesOutsFromExternalList = await mesOutReader.ReadAsync().ConfigureAwait(false); + ////转换MesOut + //await mesOutConverter.ConvertAsync(mesOutsFromExternalList).ConfigureAwait(false); - Logger.LogInformation($"Read PullTask");//拉动任务 - var pullTaskReader = workerContext.ServiceProvider.GetRequiredService(); - var pullTaskConverter = workerContext.ServiceProvider.GetRequiredService(); - //读取并保存PullTask - var pullTaskFromExternalList = await pullTaskReader.ReadAsync().ConfigureAwait(false); - //转换PullTask - await pullTaskConverter.ConvertAsync(pullTaskFromExternalList).ConfigureAwait(false); + //Logger.LogInformation($"Read PullTask");//拉动任务 + //var pullTaskReader = workerContext.ServiceProvider.GetRequiredService(); + //var pullTaskConverter = workerContext.ServiceProvider.GetRequiredService(); + ////读取并保存PullTask + //var pullTaskFromExternalList = await pullTaskReader.ReadAsync().ConfigureAwait(false); + ////转换PullTask + //await pullTaskConverter.ConvertAsync(pullTaskFromExternalList).ConfigureAwait(false); Logger.LogInformation($"Read Scrap"); var scrapReader = workerContext.ServiceProvider.GetRequiredService(); @@ -58,14 +58,21 @@ public class MesIncomingBackgroundWorker : AsyncPeriodicBackgroundWorkerBase //转换Scrap await scrapConverter.ConvertAsync(scrapsFromExternalList).ConfigureAwait(false); - Logger.LogInformation($"Read Issue"); - var pckHandleService = workerContext.ServiceProvider.GetRequiredService(); - var pckConverter = workerContext.ServiceProvider.GetRequiredService(); - //读取并保持Pck - var pcksFromExternalList = await pckHandleService.ReadAsync().ConfigureAwait(false); - //转换Pck - await pckConverter.ConvertAsync(pcksFromExternalList).ConfigureAwait(false); + //Logger.LogInformation($"Read Issue"); + //var pckHandleService = workerContext.ServiceProvider.GetRequiredService(); + //var pckConverter = workerContext.ServiceProvider.GetRequiredService(); + ////读取并保持Pck + //var pcksFromExternalList = await pckHandleService.ReadAsync().ConfigureAwait(false); + ////转换Pck + //await pckConverter.ConvertAsync(pcksFromExternalList).ConfigureAwait(false); + //Logger.LogInformation($"Read BackFlush");//耗用单 + //var BackFlushReader = workerContext.ServiceProvider.GetRequiredService(); + //var BackFlushConverter = workerContext.ServiceProvider.GetRequiredService(); + ////读取并保存Customer + //var backFlushsFromExternalList = await BackFlushReader.ReadAsync().ConfigureAwait(false); + ////转换Customer + //await BackFlushConverter.ConvertAsync(backFlushsFromExternalList).ConfigureAwait(false); Logger.LogInformation($"Completed: Handling {Incoming}"); } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapConverter.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapConverter.cs index 2475f2b77..4a096d624 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapConverter.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapConverter.cs @@ -86,7 +86,9 @@ public class ScrapConverter : IIncomingConverter wmsScrapDetail.FromLot = ""; wmsScrapDetail.FromWarehouseCode = ""; wmsScrapDetail.ToWarehouseCode = ""; - wmsScrapDetail.FromStatus = EnumInventoryStatus.OK; + wmsScrapDetail.FromStatus = EnumInventoryStatus.OK; + wmsScrapDetail.FromLocationArea = ""; + wmsScrapDetail.ToLocationGroup = ""; var item = await _itemBasicAppService.GetByCodeAsync(wmsScrapDetail.ItemCode).ConfigureAwait(false); if (item != null) { diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapReader.cs index 2112becd3..f01b1ab02 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapReader.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/ScrapReader.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.Json; using System.Threading.Tasks; using Microsoft.Extensions.Logging; +using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Wms.DataExchange.Domain; using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Mes; using Win_in.Sfs.Wms.DataExchange.Domain.Shared; @@ -95,8 +96,8 @@ public class ScrapReader : IReader var crap = new ScrapNoteExchangeDto() { Worker = scrap.mesout_asd_user, - ActiveDate = DateTime.ParseExact(scrap.Mesout_asd_date, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture) - + ActiveDate = DateTime.ParseExact(scrap.Mesout_asd_date, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture), + Type = EnumTransSubType.Scrap_WIP.ToString() }; var crapDetail = new ScrapNoteDetailExchangeDto() { diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.csproj b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.csproj index 47d6bcd34..3637b0414 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.csproj +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent.csproj @@ -28,6 +28,7 @@ + diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/appsettings.json b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/appsettings.json index 72ca5624c..2ea101bee 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/appsettings.json +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/appsettings.json @@ -1,12 +1,12 @@ { "ConnectionStrings": { - "Default": "Server=dev.ccwin-in.com,13319;Database=DyWmsAuth;uid=ccwin-in;pwd=Microsoft@2022;", - "DataExchange": "Server=dev.ccwin-in.com,21195;Database=DataExchange_Main;uid=sa;pwd=aA123456!;", - "MES": "Server=dev.ccwin-in.com;Port=13306;Database=MES;Uid=ccwinin;Pwd=Microsoft@2022;" + "Default": "Server=dev.ccwin-in.com,21195;Database= WMS;uid=sa;pwd=aA123456!;TrustServerCertificate=True;", + "DataExchange": "Server=dev.ccwin-in.com,21195;Database=DataExchange_Main;uid=sa;pwd=aA123456!;TrustServerCertificate=True;", + "MES": "Server=10.164.1.12;Port=3306;Database=erp;Uid=wms;Pwd=123456;" }, "AuthServer": { - "Authority": "http://dev.ccwin-in.com:59093/", + "Authority": "http://dev.ccwin-in.com:21293/", "RequireHttpsMetadata": "false", "SwaggerClientId": "admin", "SwaggerClientSecret": "1q2w3E*", @@ -24,13 +24,13 @@ "RemoteServices": { "BaseData": { - "BaseUrl": "http://dev.ccwin-in.com:59094/" + "BaseUrl": "http://dev.ccwin-in.com:21294/" }, "Store": { - "BaseUrl": "http://dev.ccwin-in.com:59095/" + "BaseUrl": "http://dev.ccwin-in.com:21295/" }, "Label": { - "BaseUrl": "http://dev.ccwin-in.com:59092/" + "BaseUrl": "http://dev.ccwin-in.com:21292/" } }, "MesOptions": { diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/BackFluReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/BackFluReader.cs index 933f3328b..a8676a368 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/BackFluReader.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/BackFluReader.cs @@ -43,7 +43,7 @@ public class BackFluReader : IReader //bom逐一转换为bomNote var incomingDataList = BuildIncomingFromExternalFromBomAsync(toBeProcessedBack); await _incomingFromExternalManager.CreateManyAsync(incomingDataList).ConfigureAwait(false); - //await _ibackfluManager.UpdateProcessedListAsync(toBeProcessedBack); + await _ibackfluManager.UpdateProcessedListAsync(toBeProcessedBack).ConfigureAwait(false); return incomingDataList; } private List BuildIncomingFromExternalFromBomAsync(List toBeProcessedIssue) diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/ItemBasicConverter.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/ItemBasicConverter.cs index e489620b7..a50d73ebf 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/ItemBasicConverter.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Incoming/ItemBasicConverter.cs @@ -49,7 +49,7 @@ public class ItemBasicConverter : IIncomingConverter var materialRequestList = await BuildIncomingToWmsOfItemBasicRequestAsync(incomingFromExternalList).ConfigureAwait(false); await _incomingToWmsManager.CreateBulkAsync(materialRequestList).ConfigureAwait(false); //归档 - await _incomingFromExternalManager.ArchiveBulkAsync(incomingFromExternalList); + await _incomingFromExternalManager.ArchiveBulkAsync(incomingFromExternalList).ConfigureAwait(false); } private async Task> BuildIncomingToWmsOfItemBasicRequestAsync(List incomingDataList) diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/AgentModule.cs b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/AgentModule.cs index de009e0fb..3b5a3402e 100644 --- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/AgentModule.cs +++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/AgentModule.cs @@ -149,7 +149,7 @@ public class AgentModule : AbpModule public override void OnApplicationInitialization( ApplicationInitializationContext context) { - // context.AddBackgroundWorkerAsync(); - context.AddBackgroundWorkerAsync(); + context.AddBackgroundWorkerAsync(); + //context.AddBackgroundWorkerAsync(); } } diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsWorker.cs b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsWorker.cs index 907622f56..9dafc2553 100644 --- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsWorker.cs +++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsWorker.cs @@ -79,64 +79,64 @@ public class IncomingToWmsWorker : AsyncPeriodicBackgroundWorkerBase switch (dataType) { case EnumIncomingDataType.Department: - await incomingToWms.HandleDepartmentsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleDepartmentsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.User: - await incomingToWms.HandleUsersAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleUsersAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Item: - await incomingToWms.HandleItemsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleItemsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Location: await incomingToWms.HandleErpLocationsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Bom: - await incomingToWms.HandleBomsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleBomsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Dict: await incomingToWms.HandleDictsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Supplier: - await incomingToWms.HandleSuppliersAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleSuppliersAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.SupplierItem: - await incomingToWms.HandleSupplierItemsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleSupplierItemsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.ItemPack: - await incomingToWms.HandleItemPacksAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleItemPacksAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Customer: - await incomingToWms.HandleCustomersAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleCustomersAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.CustomerItem: - await incomingToWms.HandleCustomerItemsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleCustomerItemsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.InterfaceCalendar: - await incomingToWms.HandleInterfaceCalendarsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleInterfaceCalendarsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.PurchaseOrder: - await incomingToWms.HandlePurchaseOrdersAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandlePurchaseOrdersAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.SaleOrder: - await incomingToWms.HandleSaleOrdersAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleSaleOrdersAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.SupplierAsn: - await incomingToWms.HandleAsnsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleAsnsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.ProductReceipt: - await incomingToWms.HandleProductReceiptsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleProductReceiptsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.MaterialRequest: await incomingToWms.HandleMaterialRequestsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.Scrap: - await incomingToWms.HandleScrapsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleScrapsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.IssueConfirm: - await incomingToWms.HandleIssueNoteConfirmAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleIssueNoteConfirmAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.PurchaseLabel: - await incomingToWms.HandleInventoryLabelsAsync(workerContext).ConfigureAwait(false); + //await incomingToWms.HandleInventoryLabelsAsync(workerContext).ConfigureAwait(false); break; case EnumIncomingDataType.BackFlush: await incomingToWms.HandleBackFlushsAsync(workerContext).ConfigureAwait(false); diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Accounts/AccountController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Accounts/AccountController.cs index dbaf0e54a..3c2da6dba 100644 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Accounts/AccountController.cs +++ b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Accounts/AccountController.cs @@ -21,7 +21,7 @@ using PdaMenuGroupDto = Win_in.Sfs.Wms.Pda.Models.PdaMenuGroupDto; namespace Win_in.Sfs.Wms.Pda.Controllers.Accounts; /// -/// +/// /// [AllowAnonymous] [ApiController] @@ -38,12 +38,15 @@ public class AccountController : AbpController private readonly ILogger _logger; /// - /// + /// /// /// /// /// /// + /// + /// + /// public AccountController(IProfileAppService profileAppService , ITokenService tokenService , IUserMenuAppService userMenuAppService @@ -59,13 +62,22 @@ public class AccountController : AbpController _logger = logger; } + /// + /// + /// [Display] public class LoginModel { + /// + /// + /// [Display] [Required] public string UserName { get; set; } + /// + /// + /// [Display] [Required] public string Password { get; set; } diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Inventories/BalanceController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Inventories/BalanceController.cs index 4c5488710..444f4c83c 100644 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Inventories/BalanceController.cs +++ b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Inventories/BalanceController.cs @@ -39,6 +39,7 @@ public class BalanceController : AbpController /// /// /// + /// public BalanceController( IBalanceAppService balanceAppService, IItemBasicAppService itemBasicAppService, @@ -440,7 +441,7 @@ public class BalanceController : AbpController public async Task> GetListByLocationTypeAndInventoryStatusAndNotExpectOutAsync( BalanceListByIssueInputByInventoryStatusAndLocationType listInput) { - var expectOut = await _expectOutAppService.GetListByPackingCodeAsync(listInput.packingCode); + var expectOut = await _expectOutAppService.GetListByPackingCodeAsync(listInput.packingCode).ConfigureAwait(false); if (expectOut != null && expectOut.Any()) { diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/PurchaseReceiptJobController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/PurchaseReceiptJobController.cs index 907793da8..d9b57eb5d 100644 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/PurchaseReceiptJobController.cs +++ b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/PurchaseReceiptJobController.cs @@ -32,9 +32,7 @@ public class PurchaseReceiptJobController : AbpController /// /// /// - /// /// - /// public PurchaseReceiptJobController( IPurchaseReceiptJobAppService purchaseReceiptJobAppService , IUserWorkGroupAppService userWorkGroupAppService diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/TestController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/TestController.cs deleted file mode 100644 index 3c8af2a80..000000000 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/TestController.cs +++ /dev/null @@ -1,58 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Mvc; -using Volo.Abp.Account; -using Volo.Abp.Application.Services; -using Volo.Abp.AspNetCore.Mvc; -using Win_in.Sfs.Auth.Application.Contracts; -using Win_in.Sfs.Wms.Pda.Authenticaitons; -using Win_in.Sfs.Wms.Pda.Models; -using PdaMenuDto = Win_in.Sfs.Wms.Pda.Models.PdaMenuDto; -using PdaMenuGroupDto = Win_in.Sfs.Wms.Pda.Models.PdaMenuGroupDto; - -namespace Win_in.Sfs.Wms.Pda.Controllers.Accounts; - -/// -/// -/// -[AllowAnonymous] -[ApiController] -[Route($"{PdaHostConst.ROOT_ROUTE}asfasf")] - -public class TestController: AbpController -{ - //private readonly IProfileAppService _profileAppService; - //private readonly ITokenService _tokenService; - private readonly IUserMenuAppService _userMenuAppService; - //private readonly IUserWorkGroupAppService _userWorkGroupAppService; - - /// - /// - /// - /// - /// - /// - /// - public TestController( - IUserMenuAppService userMenuAppService - , IUserWorkGroupAppService userWorkGroupAppService - ) - { - //_profileAppService = profileAppService; - //_tokenService = tokenService; - _userMenuAppService = userMenuAppService; - //_userWorkGroupAppService = userWorkGroupAppService; - } - - /// - /// Test - /// - /// - [HttpGet("Test")] - public virtual async Task> Test() - { - return new List() { "sdfsdf'" }; - } -} diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithFromToDTOBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithFromToDTOBase.cs index 34ad65d0c..57e22858e 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithFromToDTOBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithFromToDTOBase.cs @@ -79,11 +79,6 @@ public abstract class SfsStoreRecommendFromDetailWithFromToDTOBase : SfsStoreDet [Display(Name = "推荐仓库")] public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } /// /// 推荐数量 diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusDTOBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusDTOBase.cs index 60677c614..1879df552 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusDTOBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusDTOBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatus [Display(Name = "推荐仓库")] public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithFromToDTOBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithFromToDTOBase.cs index ada92e47f..76239bc02 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithFromToDTOBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithFromToDTOBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendToDetailWithFromToDTOBase : SfsStoreDetai [Display(Name = "推荐仓库")] public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusDTOBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusDTOBase.cs index 158f925ff..cc6884027 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusDTOBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/DTOs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusDTOBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusDT [Display(Name = "推荐仓库")] public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithFromToInputBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithFromToInputBase.cs index 7c0a2e9f0..4cc36f820 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithFromToInputBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithFromToInputBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendFromDetailWithFromToInputBase : SfsStoreD [Display(Name = "推荐仓库")] public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusInputBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusInputBase.cs index b10259de3..1285007db 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusInputBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusInputBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatus [Display(Name = "推荐仓库")] public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithFromToInputBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithFromToInputBase.cs index b3e0870be..ce905ac06 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithFromToInputBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithFromToInputBase.cs @@ -79,12 +79,6 @@ public abstract class SfsStoreRecommendToDetailWithFromToInputBase : SfsStoreDet [Display(Name = "推荐仓库")] public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusInputBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusInputBase.cs index c019b0583..f27d709cd 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusInputBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Bases/Inputs/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusInputBase.cs @@ -81,12 +81,6 @@ public abstract class SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusIn [Display(Name = "推荐仓库")] public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - [Display(Name = "计量单位")] - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Orders/PurchaseOrders/Inputs/PurchaseOrderImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Orders/PurchaseOrders/Inputs/PurchaseOrderImportInput.cs index 827b3dead..a0a9ec797 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Orders/PurchaseOrders/Inputs/PurchaseOrderImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Orders/PurchaseOrders/Inputs/PurchaseOrderImportInput.cs @@ -34,7 +34,6 @@ public class PurchaseOrderImportInput : SfsStoreImportInputBase /// 订单类型 /// [Display(Name = "订单类型")] - [Required(ErrorMessage = "{0}是必填项")] public string PoType { get; set; } /// @@ -179,7 +178,6 @@ public class PurchaseOrderImportInput : SfsStoreImportInputBase /// 明细-类型 暂定:备件是B 辅材是F 生产为空 /// [Display(Name = "明细-类型 备件是B 辅材是F 生产为空")] - [Required(ErrorMessage = "{0}是必填项")] public string Ctype { get; set; } /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReturnRequests/PurchaseReturnRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReturnRequests/PurchaseReturnRequestAppService.cs index 77ff33bb5..d07e428e6 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReturnRequests/PurchaseReturnRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReturnRequests/PurchaseReturnRequestAppService.cs @@ -131,8 +131,10 @@ public class PurchaseReturnRequestAppService : /// /// 赋值详情 /// + /// /// /// + /// /// private async Task SetDetailPropertiesAsync( PurchaseReturnRequestDetail detail, diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithFromToEntityBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithFromToEntityBase.cs index 32f1f35b8..322ddb0b1 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithFromToEntityBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithFromToEntityBase.cs @@ -66,11 +66,6 @@ public abstract class SfsStoreRecommendFromDetailWithFromToEntityBase : SfsStore /// public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusEntityBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusEntityBase.cs index 9b40c3155..da3d66f64 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusEntityBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatusEntityBase.cs @@ -66,10 +66,6 @@ public abstract class SfsStoreRecommendFromDetailWithLotPackingQtyLocationStatus /// public string RecommendFromWarehouseCode { get; set; } - /// - /// 计量单位 - /// - public string Uom { get; set; } /// /// 推荐数量 diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithFromToEntityBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithFromToEntityBase.cs index 2fc010c5a..6084e48d1 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithFromToEntityBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithFromToEntityBase.cs @@ -66,11 +66,6 @@ public abstract class SfsStoreRecommendToDetailWithFromToEntityBase : SfsStoreDe /// public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusEntityBase.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusEntityBase.cs index 8b7da50a4..d907f953e 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusEntityBase.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Bases/SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusEntityBase.cs @@ -66,11 +66,6 @@ public abstract class SfsStoreRecommendToDetailWithLotPackingQtyLocationStatusEn /// public string RecommendToWarehouseCode { get; set; } - /// - /// 计量单位 - /// - public string Uom { get; set; } - /// /// 推荐数量 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/IssueJobEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/IssueJobEventHandler.cs index d5e645fb5..7bede24fc 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/IssueJobEventHandler.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/IssueJobEventHandler.cs @@ -60,7 +60,7 @@ public class IssueJobEventHandler : foreach (var detail in issueNoteCreateInput.Details) { var location = locations.First(p => p.Code == detail.ToLocationCode); - await RemovePackingCodeAndContainerCodeAndLotAsync(detail, location.Type); //去箱 去托 去批 + await RemovePackingCodeAndContainerCodeAndLotAsync(detail, location.Type).ConfigureAwait(false); //去箱 去托 去批 detail.ToLocationArea = location.AreaCode; detail.ToLocationGroup = location.LocationGroupCode;