|
|
|
|
@ -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()
|
|
|
|
|
|