载具查询接口,新增判空条件判断

This commit is contained in:
alex
2023-07-28 11:13:51 +08:00
parent 4269e75382
commit 11216f3ab5
3 changed files with 7 additions and 5 deletions

View File

@@ -1,3 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="$(SolutionDir)\common.props" />

View File

@@ -70,6 +70,7 @@ namespace Tnb.WarehouseMgr
try
{
var carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.carry_code == input.carry_code);
if (carry.IsNull()) throw new AppFriendlyException($"编号{input.carry_code},对应载具不存在", 500);
List<WmsCarryCode> carryCodes = new();
var carryDsLst = await _db.Queryable<WmsCarryD>().Where(it => it.carry_id == carry.id).ToListAsync();
if (carry.carrystd_id == WmsWareHouseConst.CARRY_LJSTD_ID && carryDsLst?.Count > 0)

View File

@@ -124,8 +124,8 @@ namespace Tnb.WarehouseMgr
if (details.Count > 0 && carryCodes.Count > 0)
{
var locTypes = new[] { ((int)EnumLocationType.).ToString(), ((int)EnumLocationType.).ToString() };
var endLocs = await _db.Queryable<BasLocation>().Where(it => it.wh_id == input.data[nameof(WmsCheckstockH.warehouse_id)].ToString() && locTypes.Contains(it.is_type)).ToListAsync();
var randomIndex = new Random().Next(0, endLocs.Count - 1);
var endLocs = await _db.Queryable<BasLocation>().Where(it => it.wh_id == input.data[nameof(WmsCheckstockH.warehouse_id)].ToString() && locTypes.Contains(it.is_type)).ToArrayAsync();
var randomIndex = new Random().Next(0, endLocs.GetUpperBound(0));
var carrys = await _db.Queryable<WmsCarryH>().Where(it => carryCodes.Select(x => x.carry_id).Distinct().Contains(it.id)).ToListAsync();
var curDetails = details.DistinctBy(x => x.carry_id).ToList();
var curCarryCodes = carryCodes.FindAll(x => curDetails.Select(d => d.carry_id).Contains(x.carry_id));