调整同步状态

This commit is contained in:
18942506660
2023-12-01 11:11:16 +08:00
parent 5f6d1d0de0
commit 8c37838402
11 changed files with 155 additions and 57 deletions

View File

@@ -80,7 +80,7 @@ namespace WMS.Web.Domain.Entitys
/// 同步成功或者失败 默认是失败状态
/// </summary>
[Column("SuccessSync")]
public bool SuccessSync { get; set; } = false;
public SyncStatus SuccessSync { get; set; } = SyncStatus.Fail;
///// <summary>
///// 同步失败的源订单号(默认就包含所有来源单号)
///// </summary>
@@ -118,15 +118,15 @@ namespace WMS.Web.Domain.Entitys
if (task.Type == OutStockType.Sal)
{
//只有销售出库才需要同步金蝶
this.SuccessSync = false;
this.SuccessSync = SyncStatus.Fail;
var erpd = this.Details.SelectMany(s => s.ErpDetails).ToList();
erpd.ForEach(f => f.SuccessSync = false);
erpd.ForEach(f => f.SuccessSync = SyncStatus.Fail);
}
else
{
this.SuccessSync = true;
this.SuccessSync = SyncStatus.Success;
var erpd = this.Details.SelectMany(s => s.ErpDetails).ToList();
erpd.ForEach(f => f.SuccessSync = true);
erpd.ForEach(f => f.SuccessSync = SyncStatus.Success);
}
}
/// <summary>
@@ -138,11 +138,11 @@ namespace WMS.Web.Domain.Entitys
//foreach (var e in erpDetailIds)
// this.SuccessSyncFail.Remove(e);
var erpd = this.Details.SelectMany(s => s.ErpDetails).Where(w => w.SourceBillNo.Equals(sourcBillNo)).ToList();
erpd.ForEach(f => f.SuccessSync = true);
erpd.ForEach(f => f.SuccessSync = SyncStatus.Success);
//所有erp明细同步成功才是整个单据成功
if (this.Details.SelectMany(s => s.ErpDetails).Where(w => w.SuccessSync != false).Any())
if (this.Details.SelectMany(s => s.ErpDetails).Where(w => w.SuccessSync == SyncStatus.Success).Any())
{
this.SuccessSync = true;
this.SuccessSync = SyncStatus.Success;
this.Remark = "";
}
this.OperateId = operateId;
@@ -152,9 +152,9 @@ namespace WMS.Web.Domain.Entitys
/// 同步金蝶(失败)
/// </summary>
/// <param name="operateId"></param>
public void SyncFail(string remark, int operateId)
public void SyncFail(string remark, int operateId, SyncStatus syncStatus)
{
this.SuccessSync = false;
this.SuccessSync = syncStatus;
this.Remark = remark;
this.OperateId = operateId;
this.SyncTime = DateTime.Now;