|
|
@ -320,28 +320,30 @@ public class CountJobManager : SfsJobManagerBase<CountJob, CountJobDetail>, ICou |
|
|
|
jobDepDetail.SetIdAndNumber(GuidGenerator, entity.Id, number); |
|
|
|
jobDepDetail.CountLabel = GuidGenerator.Create().ToString(); |
|
|
|
entity.DepDetails.Add(jobDepDetail); |
|
|
|
|
|
|
|
if (detail == null) |
|
|
|
{ |
|
|
|
var jobDetail = ObjectMapper.Map<CountJobDependentDetail, CountJobDetail>(depDetail); |
|
|
|
jobDetail.ArriveDate = DateTime.Now; |
|
|
|
jobDetail.ProduceDate = DateTime.Now; |
|
|
|
jobDetail.ExpireDate = DateTime.Parse("9999-12-31 23:59:59.9999999"); |
|
|
|
jobDetail.InventoryQty = 0; |
|
|
|
var detailNumber = await GetNumber().ConfigureAwait(false); |
|
|
|
jobDetail.SetIdAndNumber(GuidGenerator, entity.Id, detailNumber); |
|
|
|
jobDetail.CountLabel = GuidGenerator.Create().ToString(); |
|
|
|
entity.Details.Add(jobDetail); |
|
|
|
} |
|
|
|
else |
|
|
|
if (detail != null) |
|
|
|
{ |
|
|
|
jobDepDetail.ArriveDate = detail.ArriveDate; |
|
|
|
jobDepDetail.ProduceDate = detail.ProduceDate; |
|
|
|
jobDepDetail.ExpireDate = detail.ExpireDate; |
|
|
|
await entity.SetDetail(detail.Id, detail.SupplierBatch, detail.ArriveDate, detail.ProduceDate, detail.ExpireDate, detail.LocationCode, countCount, detail.CountTime, detail.CountOperator, detail.CountDescription) |
|
|
|
.ConfigureAwait(false); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (detail == null) |
|
|
|
{ |
|
|
|
var jobDetail = ObjectMapper.Map<CountJobDependentDetail, CountJobDetail>(depDetail); |
|
|
|
jobDetail.ArriveDate = DateTime.Now; |
|
|
|
jobDetail.ProduceDate = DateTime.Now; |
|
|
|
jobDetail.ExpireDate = DateTime.Parse("9999-12-31 23:59:59.9999999"); |
|
|
|
jobDetail.InventoryQty = 0; |
|
|
|
var detailNumber = await GetNumber().ConfigureAwait(false); |
|
|
|
jobDetail.SetIdAndNumber(GuidGenerator, entity.Id, detailNumber); |
|
|
|
jobDetail.CountLabel = GuidGenerator.Create().ToString(); |
|
|
|
entity.Details.Add(jobDetail); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
await entity.SetDetail(detail.Id, detail.SupplierBatch, detail.ArriveDate, detail.ProduceDate, detail.ExpireDate, detail.LocationCode, countCount, detail.CountTime, detail.CountOperator, detail.CountDescription) |
|
|
|
.ConfigureAwait(false); |
|
|
|
} |
|
|
|
} |
|
|
|
//移除原有明细里没有,并且第二次扫描以处的项目
|
|
|
|
entity.Details.RemoveAll(r => r.InventoryQty == 0 && r.CountQty == 0 && r.InventoryStage == entity.InventoryStage); |
|
|
|