master
1 year ago
parent dbb1b23954
commit 3fabdc2b12

@ -1,4 +1,5 @@
using Khd.Core.Domain.Models;
using AngleSharp.Dom;
using Khd.Core.Domain.Models;
using Khd.Core.EntityFramework;
using Khd.Core.Library;
using Khd.Core.Library.Mapper;
@ -166,6 +167,19 @@ namespace Khd.Core.Wcs.Wcs
wmsBaseLocation ??= wmsBaseLocations.Where(t => string.IsNullOrEmpty(t.containerCode)).FirstOrDefault();//找不到再找任意库位
if (wmsBaseLocation != null)//如果找到库位,生成入库任务
{
if (wmsBaseLocation.locDeep == 1)
{
bool hasLocation = wmsBaseLocations
.Where(t => t.locRow == (wmsBaseLocation.locRow % 2 == 1 ? (wmsBaseLocation.locRow + 1) : (wmsBaseLocation.locRow - 1)))
.Where(t => t.locColumn == wmsBaseLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{wmsBaseLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{wmsBaseLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var wcsTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -267,6 +281,19 @@ namespace Khd.Core.Wcs.Wcs
wmsBaseLocation ??= wmsBaseLocations.Where(t => string.IsNullOrEmpty(t.containerCode)).FirstOrDefault();//找不到再找任意库位
if (wmsBaseLocation != null)//如果找到库位,生成入库任务
{
if (wmsBaseLocation.locDeep == 1)
{
bool hasLocation = wmsBaseLocations
.Where(t => t.locRow == (wmsBaseLocation.locRow % 2 == 1 ? (wmsBaseLocation.locRow + 1) : (wmsBaseLocation.locRow - 1)))
.Where(t => t.locColumn == wmsBaseLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{wmsBaseLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{wmsBaseLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var wcsTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -821,6 +848,19 @@ namespace Khd.Core.Wcs.Wcs
.FirstOrDefault();
if (toLocation != null)
{
if (toLocation.locDeep == 1)
{
bool hasLocation = AllWmsBaseLocations
.Where(t => t.locRow == (toLocation.locRow % 2 == 1 ? (toLocation.locRow + 1) : (toLocation.locRow - 1)))
.Where(t => t.locColumn == toLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var RemoveTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -1113,7 +1153,7 @@ namespace Khd.Core.Wcs.Wcs
WmsBaseLocation? wmsBaseLocation = AllWmsBaseLocations.Where(t => t.locRow == row)
.Where(t => t.locColumn == location.locColumn)
.Where(t => t.warehouseId == location.warehouseId).FirstOrDefault();
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode))
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode) && wmsBaseLocation.locationStatus == "1")
{
WmsProductStock? wmsProductStock = dbContext.WmsProductStock.FirstOrDefault(t => t.locationCode == wmsBaseLocation.locationCode);
if (wmsProductStock != null)
@ -1125,8 +1165,22 @@ namespace Khd.Core.Wcs.Wcs
.Where(t => t.warehouseId != location.locationId)
.Where(t => string.IsNullOrEmpty(t.containerCode))
.FirstOrDefault();
if (toLocation != null)
{
if (toLocation.locDeep == 1)
{
bool hasLocation = AllWmsBaseLocations
.Where(t => t.locRow == (toLocation.locRow % 2 == 1 ? (toLocation.locRow + 1) : (toLocation.locRow - 1)))
.Where(t => t.locColumn == toLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var RemoveTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -1169,6 +1223,12 @@ namespace Khd.Core.Wcs.Wcs
continue;
}
}
else if (wmsBaseLocation != null && wmsBaseLocation.locationStatus != "1")
{
Console.WriteLine(DateTime.Now + $":{wmsBaseLocation.locationCode}库位状态异常,无法移库");
_logger.Info($"{wmsBaseLocation.locationCode}库位状态异常,无法移库");
continue;
}
}
}
@ -1349,10 +1409,10 @@ namespace Khd.Core.Wcs.Wcs
}
else
{
WmsBaseLocation? wmsBaseLocation = AllWmsBaseLocations.Where(t => t.locRow == row)
WmsBaseLocation? wmsBaseLocation = dbContext.WmsBaseLocation.Where(t => t.locRow == row)
.Where(t => t.locColumn == location.locColumn)
.Where(t => t.warehouseId == location.warehouseId).FirstOrDefault();
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode))
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode) && wmsBaseLocation.locationStatus == "1")
{
WmsProductStock? wmsProductStock = dbContext.WmsProductStock.FirstOrDefault(t => t.locationCode == wmsBaseLocation.locationCode);
if (wmsProductStock != null)
@ -1372,6 +1432,19 @@ namespace Khd.Core.Wcs.Wcs
.FirstOrDefault();
if (toLocation != null)
{
if (toLocation.locDeep == 1)
{
bool hasLocation = AllWmsBaseLocations
.Where(t => t.locRow == (toLocation.locRow % 2 == 1 ? (toLocation.locRow + 1) : (toLocation.locRow - 1)))
.Where(t => t.locColumn == toLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var RemoveTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -1414,6 +1487,12 @@ namespace Khd.Core.Wcs.Wcs
continue;
}
}
else if (wmsBaseLocation != null && wmsBaseLocation.locationStatus != "1")
{
Console.WriteLine(DateTime.Now + $":{wmsBaseLocation.locationCode}库位状态异常,无法移库");
_logger.Info($"{wmsBaseLocation.locationCode}库位状态异常,无法移库");
continue;
}
}
}
wcsTask = new WcsTask()
@ -1945,7 +2024,7 @@ namespace Khd.Core.Wcs.Wcs
.Where(t => t.locRow == row)
.Where(t => t.locColumn == location.locColumn)
.Where(t => t.warehouseId == location.warehouseId).FirstOrDefault();
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode))
if (wmsBaseLocation != null && !string.IsNullOrEmpty(wmsBaseLocation.containerCode)&&wmsBaseLocation.locationStatus=="1")
{
WmsRawStock? wmsRawStock = dbContext.WmsRawStock.FirstOrDefault(t => t.locationCode == wmsBaseLocation.locationCode);
if (wmsRawStock != null)
@ -1959,6 +2038,19 @@ namespace Khd.Core.Wcs.Wcs
.FirstOrDefault();
if (toLocation != null)
{
if (toLocation.locDeep == 1)
{
bool hasLocation = AllWmsBaseLocations
.Where(t => t.locRow == (toLocation.locRow % 2 == 1 ? (toLocation.locRow + 1) : (toLocation.locRow - 1)))
.Where(t => t.locColumn == toLocation.locColumn)
.Any();
if (!hasLocation)
{
Console.WriteLine(DateTime.Now + $":目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
_logger.Info($"目标库位{toLocation.locationCode}的浅库位库位状态异常,无法移库");
continue;
}
}
var RemoveTask = new WcsTask()
{
objid = StaticData.SnowId.NextId(),
@ -2001,6 +2093,12 @@ namespace Khd.Core.Wcs.Wcs
continue;
}
}
else if (wmsBaseLocation != null && wmsBaseLocation.locationStatus != "1")
{
Console.WriteLine(DateTime.Now + $":{wmsBaseLocation.locationCode}库位状态异常,无法移库");
_logger.Info($"{wmsBaseLocation.locationCode}库位状态异常,无法移库");
continue;
}
}
}
wcsTask = new WcsTask()

Loading…
Cancel
Save