|
|
@ -46,12 +46,18 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager |
|
|
|
} |
|
|
|
#endregion
|
|
|
|
//缓存数据
|
|
|
|
var query = await _repository.GetQueryableAsync().ConfigureAwait(false); |
|
|
|
var fromPackCodeLst = input.Select(itm => itm.FromPackingCode).ToList(); |
|
|
|
var toPackCodeLst = input.Select(itm => itm.ToPackingCode).ToList(); |
|
|
|
var historyLst = await query.Where(itm => fromPackCodeLst.Contains(itm.ToPackingCode) && (itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)).ToListAsync().ConfigureAwait(false); //取顶级箱码时用到
|
|
|
|
var hisLst2 = await query.Where(itm => fromPackCodeLst.Contains(itm.FromPackingCode)).ToListAsync().ConfigureAwait(false); |
|
|
|
Dictionary<string, SplitPackingRec> hisLst3 = await query.Where(itm => toPackCodeLst.Contains(itm.FromPackingCode) && itm.OprType == OprTypeEnum.Other).ToDictionaryAsync(itm => itm.FromPackingCode, it2 => it2).ConfigureAwait(false); |
|
|
|
List<SplitPackingRec> historyLst = new List<SplitPackingRec>(); |
|
|
|
List<SplitPackingRec> hisLst2 = new List<SplitPackingRec>(); |
|
|
|
Dictionary<string, SplitPackingRec> hisLst3 = new Dictionary<string, SplitPackingRec>(); |
|
|
|
if (input.Any(itm => itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)) |
|
|
|
{ |
|
|
|
var query = await _repository.GetQueryableAsync().ConfigureAwait(false); |
|
|
|
var fromPackCodeLst = input.Select(itm => itm.FromPackingCode).ToList(); |
|
|
|
var toPackCodeLst = input.Select(itm => itm.ToPackingCode).ToList(); |
|
|
|
historyLst = await query.Where(itm => fromPackCodeLst.Contains(itm.ToPackingCode) && (itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)).ToListAsync().ConfigureAwait(false); //取顶级箱码时用到
|
|
|
|
hisLst2 = await query.Where(itm => fromPackCodeLst.Contains(itm.FromPackingCode)).ToListAsync().ConfigureAwait(false); |
|
|
|
hisLst3 = await query.Where(itm => toPackCodeLst.Contains(itm.FromPackingCode) && itm.OprType == OprTypeEnum.Other).ToDictionaryAsync(itm => itm.FromPackingCode, it2 => it2).ConfigureAwait(false); |
|
|
|
} |
|
|
|
|
|
|
|
//遍历、批量插入
|
|
|
|
List<SplitPackingRec> operLst = new List<SplitPackingRec>(); |
|
|
|