diff --git a/src/WMS.Web.Domain/Entitys/OutStock.cs b/src/WMS.Web.Domain/Entitys/OutStock.cs index 4a2b07fa..2c9bfddc 100644 --- a/src/WMS.Web.Domain/Entitys/OutStock.cs +++ b/src/WMS.Web.Domain/Entitys/OutStock.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; +using System.Linq; using System.Text; using WMS.Web.Core; using WMS.Web.Domain.Values; @@ -64,7 +65,12 @@ namespace WMS.Web.Domain.Entitys /// 同步成功或者失败 null 就是未同步 /// [Column("SuccessSync")] - public Dictionary SuccessSync_Dic { get; set; } = new Dictionary(); + public bool? SuccessSync { get; set; } + /// + /// 同步成功失败的源订单号 + /// + [Column("SuccessSyncFail")] + public List SuccessSyncFail { get; set; }=new List(); /// /// 同步时间 /// @@ -96,12 +102,11 @@ namespace WMS.Web.Domain.Entitys /// 同步金蝶 /// /// - public void Sync(string sourcBilNo,bool isSuccess, int operateId,string remark) + public void Sync(List sourcBilNos, bool isSuccess, int operateId, string remark) { - if (SuccessSync_Dic.ContainsKey(sourcBilNo)) - SuccessSync_Dic[sourcBilNo] = isSuccess; - else - SuccessSync_Dic.Add(sourcBilNo, isSuccess); + SuccessSyncFail.AddRange(sourcBilNos); + SuccessSyncFail.Distinct(); + this.SuccessSync = isSuccess; this.Remark = remark; this.OperateId = operateId; this.SyncTime = DateTime.Now; diff --git a/src/WMS.Web.Domain/Services/OutStockService.cs b/src/WMS.Web.Domain/Services/OutStockService.cs index 2c14cf05..e8a5e3d4 100644 --- a/src/WMS.Web.Domain/Services/OutStockService.cs +++ b/src/WMS.Web.Domain/Services/OutStockService.cs @@ -114,7 +114,7 @@ namespace WMS.Web.Domain.Services { //下推金蝶 var res = await _erpService.Push(new Core.Dto.Erp.ErpPushDto() { }); - entity.Sync("",res.IsSuccess, loginInfo.UserInfo.StaffId, res.Message); + entity.Sync(new List(),res.IsSuccess, loginInfo.UserInfo.StaffId, res.Message); } var isSuccess = await _outStockRepositories.EditEntityList(list, true); if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError); diff --git a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs index 67f6551f..4cb2ecdf 100644 --- a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs +++ b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs @@ -81,6 +81,10 @@ namespace WMS.Web.Repositories.Configuration ent.ToTable("t_wms_outstock"); ent.HasKey(x => x.Id); + ent.Property(f => f.SuccessSyncFail).HasConversion( + v => JsonConvert.SerializeObject(v), + v => JsonConvert.DeserializeObject>(v)); + ent.HasMany(p => p.Details) .WithOne() .HasForeignKey(p => p.Fid)