From e1883dd993d0b066f170dd1ee57dc979bf0cb45b Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Wed, 20 Dec 2023 16:48:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Api/Controllers/SysConfigController.cs | 6 ++++++ src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml | 5 +++++ src/WMS.Web.Core/Dto/EnumStatusResponse.cs | 6 +++++- src/WMS.Web.Core/Dto/OutStock/OutStockQueryRequest.cs | 2 +- src/WMS.Web.Domain/Services/TakeStockService.cs | 3 ++- src/WMS.Web.Repositories/OutStockRepositories.cs | 11 ++++++++--- 6 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/WMS.Web.Api/Controllers/SysConfigController.cs b/src/WMS.Web.Api/Controllers/SysConfigController.cs index becb3c6e..ec0b0af1 100644 --- a/src/WMS.Web.Api/Controllers/SysConfigController.cs +++ b/src/WMS.Web.Api/Controllers/SysConfigController.cs @@ -121,6 +121,12 @@ namespace WMS.Web.Api.Controllers { response.OutStockStatus.Add((int)enumv, enumv.GetRemark()); } + foreach (SyncStatus enumv in Enum.GetValues(typeof(SyncStatus))) + { + if ((int)enumv == 0 || (int)enumv == 1 || (int)enumv == 4) + response.SyncStatus.Add((int)enumv, enumv.GetRemark()); + } + //2 //1 return Task.FromResult(Result.ReSuccess(response)); diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 2678d165..076fcf85 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -575,6 +575,11 @@ 出库状态 + + + 同步金蝶状态 + + 客户 diff --git a/src/WMS.Web.Core/Dto/EnumStatusResponse.cs b/src/WMS.Web.Core/Dto/EnumStatusResponse.cs index 87c70779..f266541b 100644 --- a/src/WMS.Web.Core/Dto/EnumStatusResponse.cs +++ b/src/WMS.Web.Core/Dto/EnumStatusResponse.cs @@ -62,6 +62,10 @@ namespace WMS.Web.Core.Dto /// 出库状态 /// public Dictionary OutStockStatus { get; set; } = new Dictionary(); - + /// + /// 同步金蝶状态 + /// + public Dictionary SyncStatus { get; set; } = new Dictionary(); + } } diff --git a/src/WMS.Web.Core/Dto/OutStock/OutStockQueryRequest.cs b/src/WMS.Web.Core/Dto/OutStock/OutStockQueryRequest.cs index f0d905ba..ce407bc9 100644 --- a/src/WMS.Web.Core/Dto/OutStock/OutStockQueryRequest.cs +++ b/src/WMS.Web.Core/Dto/OutStock/OutStockQueryRequest.cs @@ -28,7 +28,7 @@ namespace WMS.Web.Core.Dto.OutStock /// /// 同步成功或者失败 null 就是未同步 /// - public bool? SuccessSync { get; set; } + public int? SuccessSync { get; set; } /// /// 来源单号 /// diff --git a/src/WMS.Web.Domain/Services/TakeStockService.cs b/src/WMS.Web.Domain/Services/TakeStockService.cs index 59bfa9dc..3fda250d 100644 --- a/src/WMS.Web.Domain/Services/TakeStockService.cs +++ b/src/WMS.Web.Domain/Services/TakeStockService.cs @@ -68,6 +68,7 @@ namespace WMS.Web.Domain.Services public async Task Save(List dto, LoginInDto loginInfo) { _logger.LogInformation($"盘点保存:{JsonConvert.SerializeObject(dto)} 盘点人:{loginInfo.UserInfo.StaffId}"); + dto = dto.Where(w => w.AfterQty != w.BeforeQty).ToList(); if (dto.GroupBy(g => g.BoxId).Count() > 1) return Result.ReFailure(ResultCodes.TakeStockBoxError); @@ -155,7 +156,7 @@ namespace WMS.Web.Domain.Services public async Task Sync(OperateRequest dto) { var list = await _takeStockRepositories.GetEntityList(dto.Ids); - list = list.Where(w => w.SuccessSync == SyncStatus.Fail|| w.SuccessSync == SyncStatus.SyncIng).ToList(); + list = list.Where(w => w.SuccessSync == SyncStatus.Fail || w.SuccessSync == SyncStatus.SyncIng).ToList(); foreach (var entity in list) { Task.Run(async () => diff --git a/src/WMS.Web.Repositories/OutStockRepositories.cs b/src/WMS.Web.Repositories/OutStockRepositories.cs index 463d6cd1..7dd17da1 100644 --- a/src/WMS.Web.Repositories/OutStockRepositories.cs +++ b/src/WMS.Web.Repositories/OutStockRepositories.cs @@ -139,11 +139,16 @@ namespace WMS.Web.Repositories query = query.Where(w => w.order.Type == (OutStockType)dto.Type); if (dto.SuccessSync != null) { - if (dto.SuccessSync == true) + if ((SyncStatus)dto.SuccessSync == SyncStatus.Success) query = query.Where(w => w.order.SuccessSync == SyncStatus.Success); - else - query = query.Where(w => w.order.SuccessSync != SyncStatus.Success); + else if ((SyncStatus)dto.SuccessSync == SyncStatus.SyncIng) + query = query.Where(w => w.order.SuccessSync == SyncStatus.SyncIng); + else if ((SyncStatus)dto.SuccessSync == SyncStatus.Fail) + query = query.Where(w => w.order.SuccessSync == SyncStatus.Fail + || w.order.SuccessSync == SyncStatus.SubmitFail + || w.order.SuccessSync == SyncStatus.CheckFail); } + if (dto.DeliveryOrgId != null) query = query.Where(w => w.order.DeliveryOrgId == dto.DeliveryOrgId); if (!string.IsNullOrEmpty(dto.StockCode))