From 428257d1e7db405965129aebb3872fcb27c09817 Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Wed, 20 Dec 2023 16:29:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Domain/Entitys/OutStock.cs | 2 +- .../Entitys/OutStockErpDetails.cs | 2 +- src/WMS.Web.Domain/Entitys/TakeStock.cs | 2 +- src/WMS.Web.Domain/Services/OutStockService.cs | 12 ++++++++++-- .../Services/TakeStockService.cs | 18 +++++++++++++----- src/WMS.Web.Domain/Values/SyncStatus.cs | 13 +++++++++---- .../OutStockRepositories.cs | 2 +- .../TakeStockRepositories.cs | 2 +- 8 files changed, 37 insertions(+), 16 deletions(-) diff --git a/src/WMS.Web.Domain/Entitys/OutStock.cs b/src/WMS.Web.Domain/Entitys/OutStock.cs index acdc2fa8..0ad1dd6c 100644 --- a/src/WMS.Web.Domain/Entitys/OutStock.cs +++ b/src/WMS.Web.Domain/Entitys/OutStock.cs @@ -80,7 +80,7 @@ namespace WMS.Web.Domain.Entitys /// 同步成功或者失败 默认是失败状态 /// [Column("SuccessSync")] - public SyncStatus SuccessSync { get; set; } = SyncStatus.Fail; + public SyncStatus SuccessSync { get; set; } = SyncStatus.SyncIng; ///// ///// 同步失败的源订单号(默认就包含所有来源单号) ///// diff --git a/src/WMS.Web.Domain/Entitys/OutStockErpDetails.cs b/src/WMS.Web.Domain/Entitys/OutStockErpDetails.cs index d7f1f26e..0af8ef14 100644 --- a/src/WMS.Web.Domain/Entitys/OutStockErpDetails.cs +++ b/src/WMS.Web.Domain/Entitys/OutStockErpDetails.cs @@ -49,7 +49,7 @@ namespace WMS.Web.Domain.Entitys /// 同步成功或者失败 默认是失败状态 /// [Column("SuccessSync")] - public SyncStatus SuccessSync { get; set; } = SyncStatus.Fail; + public SyncStatus SuccessSync { get; set; } = SyncStatus.SyncIng; /// /// 同步到金蝶后金蝶的单据Id /// diff --git a/src/WMS.Web.Domain/Entitys/TakeStock.cs b/src/WMS.Web.Domain/Entitys/TakeStock.cs index fde997b8..2a5e0ab6 100644 --- a/src/WMS.Web.Domain/Entitys/TakeStock.cs +++ b/src/WMS.Web.Domain/Entitys/TakeStock.cs @@ -39,7 +39,7 @@ namespace WMS.Web.Domain.Entitys /// 同步状态 /// [Column("SuccessSync")] - public SyncStatus SuccessSync { get; set; } = SyncStatus.Fail; + public SyncStatus SuccessSync { get; set; } = SyncStatus.SyncIng; /// /// 盘点结果类型:1为盘盈,2位盘亏 /// 盘点数量-系统库存 大于0为盘盈 小于0为盘亏 diff --git a/src/WMS.Web.Domain/Services/OutStockService.cs b/src/WMS.Web.Domain/Services/OutStockService.cs index 19880c20..d1625507 100644 --- a/src/WMS.Web.Domain/Services/OutStockService.cs +++ b/src/WMS.Web.Domain/Services/OutStockService.cs @@ -196,7 +196,12 @@ namespace WMS.Web.Domain.Services return Result.ReFailure(ResultCodes.DateWriteError); if (entity.Type == OutStockType.Sal) - await SalOutStock(entity, loginInfo); + { + Task.Run(async () => + { + await SalOutStock(entity, loginInfo); + }).GetAwaiter().GetResult(); + } return Result.ReSuccess(); } @@ -210,7 +215,10 @@ namespace WMS.Web.Domain.Services var list = await _outStockRepositories.GetEntityList(dto.Ids); foreach (var entity in list) { - await SalOutStock(entity, loginInfo); + Task.Run(async () => + { + await SalOutStock(entity, loginInfo); + }).GetAwaiter().GetResult(); } return Result.ReSuccess(); } diff --git a/src/WMS.Web.Domain/Services/TakeStockService.cs b/src/WMS.Web.Domain/Services/TakeStockService.cs index 45081c40..59bfa9dc 100644 --- a/src/WMS.Web.Domain/Services/TakeStockService.cs +++ b/src/WMS.Web.Domain/Services/TakeStockService.cs @@ -136,8 +136,12 @@ namespace WMS.Web.Domain.Services //同步金蝶 foreach (var entity in list) { - var res = await Loss_Profit(entity); - if (!res.IsSuccess) return res; + Task.Run(async () => + { + var res = await Loss_Profit(entity); + if (!res.IsSuccess) + _logger.LogError($"盘点同步失败:{res.Message}"); + }).GetAwaiter().GetResult(); } return Result.ReSuccess(); @@ -151,11 +155,15 @@ 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).ToList(); + list = list.Where(w => w.SuccessSync == SyncStatus.Fail|| w.SuccessSync == SyncStatus.SyncIng).ToList(); foreach (var entity in list) { - var res = await Loss_Profit(entity); - if (!res.IsSuccess) return res; + Task.Run(async () => + { + var res = await Loss_Profit(entity); + if (!res.IsSuccess) + _logger.LogError($"盘点同步失败:{res.Message}"); + }).GetAwaiter().GetResult(); } return Result.ReSuccess(); diff --git a/src/WMS.Web.Domain/Values/SyncStatus.cs b/src/WMS.Web.Domain/Values/SyncStatus.cs index 91379454..964430ed 100644 --- a/src/WMS.Web.Domain/Values/SyncStatus.cs +++ b/src/WMS.Web.Domain/Values/SyncStatus.cs @@ -8,18 +8,18 @@ namespace WMS.Web.Domain.Values /// /// 同步金蝶状态 /// - public enum SyncStatus + public enum SyncStatus { /// /// 失败(保存失败 未保存) /// [EnumRemark("失败")] - Fail =0, + Fail = 0, /// /// 成功 /// [EnumRemark("成功")] - Success =1, + Success = 1, /// /// 提交失败 /// @@ -29,6 +29,11 @@ namespace WMS.Web.Domain.Values /// 审核失败 /// [EnumRemark("审核失败")] - CheckFail = 3 + CheckFail = 3, + /// + /// 同步中 + /// + [EnumRemark("同步中")] + SyncIng = 4 } } diff --git a/src/WMS.Web.Repositories/OutStockRepositories.cs b/src/WMS.Web.Repositories/OutStockRepositories.cs index a53b48d8..463d6cd1 100644 --- a/src/WMS.Web.Repositories/OutStockRepositories.cs +++ b/src/WMS.Web.Repositories/OutStockRepositories.cs @@ -165,7 +165,7 @@ namespace WMS.Web.Repositories Type = s.order.Type.GetRemark(), Creator = _singleDataService.GetSingleData(SingleAction.Staffs, companyId, s.order.CreatorId), CreateTime = s.order.CreateTime.DateToStringSeconds(), - SuccessSync = s.order.SuccessSync == SyncStatus.Success ? "成功" : "失败", + SuccessSync = s.order.SuccessSync == SyncStatus.Success ? "成功" : (s.order.SuccessSync == SyncStatus.SyncIng ? "同步中" : "失败"), Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, companyId, s.order.StockCode + s.order.OrgCode), SourceBillNoList = s.detail.ErpDetails.Select(s => s.SourceBillNo).ToList(), SaleBillNoList = s.detail.ErpDetails.Select(s => s.SaleBillNo).ToList(), diff --git a/src/WMS.Web.Repositories/TakeStockRepositories.cs b/src/WMS.Web.Repositories/TakeStockRepositories.cs index b47b8949..8ed5beac 100644 --- a/src/WMS.Web.Repositories/TakeStockRepositories.cs +++ b/src/WMS.Web.Repositories/TakeStockRepositories.cs @@ -214,7 +214,7 @@ namespace WMS.Web.Repositories FailRemark=s.order.FailRemark, Creator = _singleDataService.GetSingleData(SingleAction.Staffs, _loginRepositories.CompanyId, s.order.CreatorId), Date = s.order.Date.DateToStringSeconds(), - SuccessSync = s.order.SuccessSync== SyncStatus.Success ? "成功":"失败", + SuccessSync = s.order.SuccessSync == SyncStatus.Success ? "成功" : (s.order.SuccessSync == SyncStatus.SyncIng ? "同步中" : "失败"), #endregion }).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();