Commit 177b6b54 LN

放料流程优化。修改门口无料时软件缓存未清除的BUG.

1 个父辈 3a1eec93
......@@ -58,7 +58,11 @@ namespace OnlineStore.DeviceLibrary
if (!CurrShelf.IsNeedLeave && (!String.IsNullOrEmpty(CurrShelf.RealShelf)) )
{
if (LocationIsUp())
{
{
if (WarnMsg.Contains("定位气缸上升不到位"))
{
WarnMsg = "";
}
return true;
}
else
......
......@@ -131,29 +131,41 @@ namespace OnlineStore.DeviceLibrary
if (cmd.Equals(cmd_startIn))
{
LogUtil.info("[" + CID + "]收到流水线消息:" + message);
InOutPosInfo inout = new InOutPosInfo(reviceInfo.WareCode, "", reviceInfo.PlateW, reviceInfo.PlateH, reviceInfo.IsNg, reviceInfo.PosId, reviceInfo.rfid);
InOutPosInfo inout = new InOutPosInfo(reviceInfo.WareCode, "", reviceInfo.PlateW, reviceInfo.PlateH, reviceInfo.IsNg, reviceInfo.PosId, reviceInfo.rfid);
string logName = "收到流水线命令【 " + inout.ToStr() + "】:";
if (DoorPosInfo != null)
bool needUpdate = true;
//如果是重复消息,直接清理
if (EquipManager.Equip.MoveInfo.MoveType.Equals(StoreMoveType.OutStore))
{
//如果信息一直,不需要处理
if (inout.BoxPosId.Equals(DoorPosInfo.BoxPosId) && inout.barcode.Equals(DoorPosInfo.barcode) && inout.ShelfPosId.Equals(DoorPosInfo.ShelfPosId) && inout.IsNg.Equals(DoorPosInfo.IsNg))
InOutPosInfo posInfo = EquipManager.Equip.MoveInfo.MoveParam.PosInfo;
if (posInfo.IsSameWare(inout))
{
LogUtil.error(logName + ",与当前出料是同料盘,不需要保存");
needUpdate = false;
}
}
if (needUpdate)
{
if (DoorPosInfo != null)
{
//如果信息一直,不需要处理
if (inout.IsSameWare(DoorPosInfo))
{
}
else
{
LogUtil.error(logName + ",清理DoorPosInfo:" + DoorPosInfo.ToStr() + ",把新数据缓存到DoorPosInfo中");
DoorPosInfo = inout;
}
}
else
{
LogUtil.error(logName + ",清理DoorPosInfo:" + DoorPosInfo.ToStr() + ",把新数据缓存到DoorPosInfo中");
//直接存入缓存
LogUtil.info(logName + "缓存到DoorPosInfo中");
DoorPosInfo = inout;
}
}
else
{
//直接存入缓存
LogUtil.info(logName + "缓存到DoorPosInfo中");
DoorPosInfo = inout;
}
}
else if (cmd.Equals(cmd_updateDebug))
{
......
......@@ -315,7 +315,7 @@ namespace OnlineStore.DeviceLibrary
aa = "故障中";
break;
case StoreStatus.OutStoreBoxEnd:
aa = "料盘出仓位完成";
aa = "出库取料完成";
break;
case StoreStatus.OutStoreExecute:
aa = "出库执行中";
......
......@@ -124,6 +124,15 @@ namespace OnlineStore.DeviceLibrary
{
return $" 门口物料 [{ barcode }] [{ ShelfPosId }] [{PlateW }x{ PlateH }],boxPos[{ BoxPosId }],rfid [{ rfid}]";
}
}
}
internal bool IsSameWare(InOutPosInfo posInfo)
{
if (BoxPosId.Equals(posInfo.BoxPosId) && barcode.Equals(posInfo.barcode) && ShelfPosId.Equals(posInfo.ShelfPosId) && IsNg.Equals(posInfo.IsNg))
{
return true;
}
return false;
}
}
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!