|
|
|
|
@ -812,22 +812,22 @@ namespace Khd.Core.Wcs.Wcs
|
|
|
|
|
lock (SystemData.FiveTaskLock)
|
|
|
|
|
{
|
|
|
|
|
dbContext.ChangeTracker.Clear();
|
|
|
|
|
BaseEquip baseEquip = dbContext.BaseEquip.First(t => t.objid == 29);
|
|
|
|
|
BaseEquip baseEquip = dbContext.BaseEquip.First(t => t.objid == 29);//查出五楼柜体拆分验收区
|
|
|
|
|
//if (baseEquip.emptyCount == 1)
|
|
|
|
|
{
|
|
|
|
|
WcsTask? wcsTask = dbContext.WcsTask.Where(t => t.nextPointId == 28).FirstOrDefault();
|
|
|
|
|
if (wcsTask == null)
|
|
|
|
|
WcsTask? wcsTask = dbContext.WcsTask.Where(t => t.nextPointId == 28).FirstOrDefault();//查询五楼AGV叉车是否有任务
|
|
|
|
|
if (wcsTask == null)//AGV没有任务
|
|
|
|
|
{
|
|
|
|
|
WmsRawInstock? wmsRawInstock = dbContext.WmsRawInstock.Where(t => t.warehouseId == 511 && (t.instockType == "2" || t.instockType == "4") && t.executeStatus == "0").FirstOrDefault();
|
|
|
|
|
if (wmsRawInstock != null)
|
|
|
|
|
WmsRawInstock? wmsRawInstock = dbContext.WmsRawInstock.Where(t => t.warehouseId == 511 && (t.instockType == "2" || t.instockType == "4") && t.executeStatus == "0").FirstOrDefault();//查五楼有没有待执行的返库任务
|
|
|
|
|
if (wmsRawInstock != null)//有入库任务
|
|
|
|
|
{
|
|
|
|
|
MesBasePalletInfo? mesBasePalletInfo = dbContext.MesBasePalletInfo.FirstOrDefault(t => t.palletInfoCode == wmsRawInstock.palletInfoCode);
|
|
|
|
|
MesBasePalletInfo? mesBasePalletInfo = dbContext.MesBasePalletInfo.FirstOrDefault(t => t.palletInfoCode == wmsRawInstock.palletInfoCode);//找到与入库任务的绑定托盘
|
|
|
|
|
if (mesBasePalletInfo != null)
|
|
|
|
|
{
|
|
|
|
|
MesBaseBarcodeInfo? mesBaseBarcodeInfo = dbContext.MesBaseBarcodeInfo.FirstOrDefault(t => t.barcodeInfo == mesBasePalletInfo.materialBarcode);
|
|
|
|
|
MesBaseBarcodeInfo? mesBaseBarcodeInfo = dbContext.MesBaseBarcodeInfo.FirstOrDefault(t => t.barcodeInfo == mesBasePalletInfo.materialBarcode);//找到与托盘信息中物料号对应的条码
|
|
|
|
|
if (mesBaseBarcodeInfo != null)
|
|
|
|
|
{
|
|
|
|
|
var wmsBaseLocations = dbContext.WmsBaseLocation.Where(t => t.warehouseFloor == 5)
|
|
|
|
|
var wmsBaseLocations = dbContext.WmsBaseLocation.Where(t => t.warehouseFloor == 5)//找一个可用的合适库位
|
|
|
|
|
.Where(t => t.activeFlag == "1")
|
|
|
|
|
.Where(t => t.delFlag == "0")
|
|
|
|
|
.Where(t => t.locationScrapType == "1")
|
|
|
|
|
@ -865,9 +865,9 @@ namespace Khd.Core.Wcs.Wcs
|
|
|
|
|
//深浅库位问题?库位入库优先级等
|
|
|
|
|
|
|
|
|
|
var AgvEquip = StaticData.BaseEquip.First(t => t.objid == 28);//5楼叉车
|
|
|
|
|
if (wmsBaseLocation != null)
|
|
|
|
|
if (wmsBaseLocation != null)//找到的库位
|
|
|
|
|
{
|
|
|
|
|
if (wmsBaseLocation.locDeep == 1)
|
|
|
|
|
if (wmsBaseLocation.locDeep == 1)//入浅库位
|
|
|
|
|
{
|
|
|
|
|
bool hasLocation = wmsBaseLocations
|
|
|
|
|
.Where(t => t.locRow == (wmsBaseLocation.locRow % 2 == 1 ? (wmsBaseLocation.locRow + 1) : (wmsBaseLocation.locRow - 1)))
|
|
|
|
|
@ -880,7 +880,7 @@ namespace Khd.Core.Wcs.Wcs
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
WcsTask newTask = new WcsTask();
|
|
|
|
|
WcsTask newTask = new WcsTask();//创建任务
|
|
|
|
|
newTask.taskStatus = 0;//创建状态
|
|
|
|
|
newTask.updateTime = DateTime.Now;
|
|
|
|
|
newTask.currPointId = baseEquip.objid;
|
|
|
|
|
@ -2849,7 +2849,7 @@ namespace Khd.Core.Wcs.Wcs
|
|
|
|
|
if (endEquip.equipType == 12)//原材料到柜体拆分区
|
|
|
|
|
{
|
|
|
|
|
var rawStock = dbContext.WmsRawStock
|
|
|
|
|
.Where(t => t.activeFlag == "1").ToList();
|
|
|
|
|
.Where(t => t.activeFlag == "1").ToList();//查找有效的原材料库位
|
|
|
|
|
bool hasTask = dbContext.WcsTask.Where(t => t.currPointId == endEquip.objid || t.endPointId == endEquip.objid).Any();
|
|
|
|
|
if (!hasTask)
|
|
|
|
|
{
|
|
|
|
|
|