电梯
This commit is contained in:
@@ -403,7 +403,7 @@ namespace Tnb.WarehouseMgr
|
||||
Logger.Information($"【UnloadConfirm】 发送电梯{devName}前门开门指令");
|
||||
_ = await _elevatorControlService.SendOpenCloseCmd(devName, 3); //发送电梯前门开门指令
|
||||
}
|
||||
string innerpos = "";
|
||||
|
||||
// 3 4号梯需要电梯是当前楼层开门状态就能进
|
||||
bool canEnter = false;
|
||||
if (devName == "Elevator3" || devName == "Elevator4")
|
||||
@@ -431,18 +431,14 @@ namespace Tnb.WarehouseMgr
|
||||
Logger.LogInformation($"电梯内{devName}已有两托货!");
|
||||
return await ToApiResult(HttpStatusCode.InternalServerError, $"电梯{devName}内已有两托货!");
|
||||
}
|
||||
WmsElevatorH wmsElevatorH = await _db.Queryable<WmsElevatorH>().Where(r => r.elevator_id == elevator.device_id).FirstAsync();
|
||||
WmsElevatorcacheArea wmsElevatorcacheArea = await _db.Queryable<WmsElevatorcacheArea>().Where(r => r.location_id == dis.startlocation_id).FirstAsync();
|
||||
// 如果当前所放梯内货位已占用
|
||||
if (wmsElevatorH.innerpos.Contains(wmsElevatorcacheArea.name))
|
||||
if (elevator.innerpos.Contains(wmsElevatorcacheArea.name))
|
||||
{
|
||||
Logger.LogInformation($"电梯{devName}内托盘{dis.carry_code}当前准备放置的货位已有货!");
|
||||
return await ToApiResult(HttpStatusCode.InternalServerError, $"电梯{devName}内托盘{dis.carry_code}当前准备放置的货位已有货!");
|
||||
}
|
||||
|
||||
innerpos = wmsElevatorH.innerpos + "," + wmsElevatorcacheArea.name;
|
||||
|
||||
|
||||
canEnter = true;
|
||||
}
|
||||
|
||||
@@ -452,8 +448,7 @@ namespace Tnb.WarehouseMgr
|
||||
await _db.Updateable<WmsElevatorH>().SetColumns(r => new WmsElevatorH
|
||||
{
|
||||
is_use = (int)EnumElevatorUseStatus.占用,
|
||||
use_tasks = $"','{r.use_tasks}".Trim(','),
|
||||
innerpos = innerpos.Trim(',')
|
||||
use_tasks = $"','{r.use_tasks}".Trim(',')
|
||||
}).Where(r => r.elevator_id == elevator.device_id).ExecuteCommandAsync();
|
||||
s_eleUseStatusDic[elevator.device_id] = (int)EnumElevatorUseStatus.占用;
|
||||
Logger.Information($"【UnloadConfirm】 {devName}放货成功 状态变更为占用 {s_eleUseStatusDic.GetHashCode()} {s_eleUseStatusDic[elevator.device_id]}");
|
||||
@@ -953,6 +948,24 @@ namespace Tnb.WarehouseMgr
|
||||
await _wareHouseService.AgvelevatorTimerTaskExceptionHandle();
|
||||
}
|
||||
}
|
||||
else if(disTask.area_code == "FC")
|
||||
{
|
||||
WmsElevatorcacheArea wmsElevatorcacheArea = await _db.Queryable<WmsElevatorcacheArea>().Where(r => r.location_id == disTask.startlocation_id).FirstAsync();
|
||||
|
||||
ElevagorInfoQuery q = new() { taskCode = input.taskCode, sourceName = input.sourceName };
|
||||
WmsElevatorH elevator = await FindElevatorFromPars(q);
|
||||
if (elevator.IsNull())
|
||||
{
|
||||
Logger.Error($"【UnloadConfirm】 根据参数,sourceName:{input.sourceName},taskCode:{input.taskCode},未找到匹配的电梯任务");
|
||||
}
|
||||
string innerpos = elevator.innerpos + "," + wmsElevatorcacheArea.name;
|
||||
await _db.Updateable<WmsElevatorH>().SetColumns(r => new WmsElevatorH
|
||||
{
|
||||
is_use = (int)EnumElevatorUseStatus.占用,
|
||||
use_tasks = $"','{r.use_tasks}".Trim(','),
|
||||
innerpos = innerpos.Trim(',')
|
||||
}).Where(r => r.elevator_id == elevator.device_id).ExecuteCommandAsync();
|
||||
}
|
||||
|
||||
Logger.Information($"【TaskCallback】 Agv放货完成,任务编号:{string.Join(",", disTasks.Select(x => x.bill_code))}");
|
||||
}
|
||||
@@ -960,8 +973,8 @@ namespace Tnb.WarehouseMgr
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.Error("【TaskCallback】 任务状态上报出现错误", ex.Message);
|
||||
Logger.Error("【TaskCallback】 任务状态上报错误堆栈信息", ex.StackTrace);
|
||||
Logger.Error($"【TaskCallback】 任务状态上报出现错误{ex.Message}");
|
||||
Logger.Error($"【TaskCallback】 任务状态上报错误堆栈信息{ex.Message}");
|
||||
return await ToApiResult(HttpStatusCode.InternalServerError, "请重试!" + ex.Message);
|
||||
throw;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user