|
|
|
@ -21,6 +21,7 @@ using System.Linq;
|
|
|
|
|
using System.Net.Http;
|
|
|
|
|
using System.Runtime.CompilerServices;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Text.RegularExpressions;
|
|
|
|
|
using System.Threading;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
@ -383,9 +384,25 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
if((ret!= null && ret.Result== EOneGrabSixteenResult.Ok) ||(ret!=null &&ret.Result== EOneGrabSixteenResult.LocationOkScanBarcodeFail && GlobalVar.EnableVirtualBarCode) || GlobalVar.RunSpace)
|
|
|
|
|
{
|
|
|
|
|
StockTakeFlow.Instance.Take( ETrayType.Input, takeSlotIndex, NozzleManager.GetIdelNozzle().NozzleIndex);
|
|
|
|
|
takeSlotIndex++;
|
|
|
|
|
flowStep = EDischargeFlowStep.判断是否需要从料仓取料;
|
|
|
|
|
if(BarCodeHelper.CheckSnLength(ret.SN)|| GlobalVar.RunSpace || (ret != null && ret.Result == EOneGrabSixteenResult.LocationOkScanBarcodeFail && GlobalVar.EnableVirtualBarCode))
|
|
|
|
|
{
|
|
|
|
|
StockTakeFlow.Instance.Take(ETrayType.Input, takeSlotIndex, NozzleManager.GetIdelNozzle().NozzleIndex);
|
|
|
|
|
takeSlotIndex++;
|
|
|
|
|
flowStep = EDischargeFlowStep.判断是否需要从料仓取料;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
LogHelper.Debug(GetClassName() + $"检测到二维码={ret.SN}长度和设置的长度={GlobalVar.BarcodeLength}不一致");
|
|
|
|
|
Nozzle idleNozzle = NozzleManager.GetIdelNozzle();
|
|
|
|
|
StockTakeFlow.Instance.Take(ETrayType.Input, ret.SlotIndex, idleNozzle.NozzleIndex);
|
|
|
|
|
if (NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product != null)
|
|
|
|
|
{
|
|
|
|
|
//NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product.SN = "SLK11111111PNK60X";
|
|
|
|
|
NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product.SN = ScanFailNGHelper.GetSn();
|
|
|
|
|
}
|
|
|
|
|
takeSlotIndex++;
|
|
|
|
|
flowStep = EDischargeFlowStep.判断是否需要从料仓取料;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
@ -412,6 +429,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
LogHelper.Debug(GetClassName() + $"{JsonConvert.SerializeObject(fixtureret)}");
|
|
|
|
|
//if (fixtureret.SN.Length == GlobalVar.BarcodeLength)
|
|
|
|
|
if(BarCodeHelper.CheckSnLength(fixtureret.SN))
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
@ -429,25 +447,35 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
Msg.ShowError(ex.Message);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//else
|
|
|
|
|
//{
|
|
|
|
|
// try
|
|
|
|
|
// {
|
|
|
|
|
// LogHelper.Debug(GetClassName() + "检测到二维码长度和设置的长度不一致,弹框报警");
|
|
|
|
|
// //报警弹框
|
|
|
|
|
// alarmEntity = AlarmCollection.Get(AlarmConstID.二维码长度异常报警).Transform(ret.SlotIndex);
|
|
|
|
|
// EButtonType buttonSelect = Msgbox.ShowDialog(alarmEntity, EButtonType.Retry, true);
|
|
|
|
|
// if (buttonSelect == EButtonType.Retry)
|
|
|
|
|
// {
|
|
|
|
|
// logInfo = GetClassName() + "选择了重试";
|
|
|
|
|
// MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// catch (Exception ex)
|
|
|
|
|
// {
|
|
|
|
|
// Msg.ShowError(ex.Message);
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
LogHelper.Debug(GetClassName() + $"检测到二维码={fixtureret.SN}长度和设置的长度={GlobalVar.BarcodeLength}不一致");
|
|
|
|
|
Nozzle idleNozzle = NozzleManager.GetIdelNozzle();
|
|
|
|
|
StockTakeFlow.Instance.Take(ETrayType.Input, ret.SlotIndex, idleNozzle.NozzleIndex);
|
|
|
|
|
if (NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product != null)
|
|
|
|
|
{
|
|
|
|
|
//NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product.SN = "SLK11111111PNK60X";
|
|
|
|
|
NozzleManager.GetNozzle(idleNozzle.NozzleIndex).Product.SN = ScanFailNGHelper.GetSn();
|
|
|
|
|
}
|
|
|
|
|
takeSlotIndex++;
|
|
|
|
|
exit = true;
|
|
|
|
|
flowStep = EDischargeFlowStep.判断是否需要从料仓取料;
|
|
|
|
|
////报警弹框
|
|
|
|
|
//alarmEntity = AlarmCollection.Get(AlarmConstID.二维码长度异常报警).Transform(ret.SlotIndex);
|
|
|
|
|
//EButtonType buttonSelect = Msgbox.ShowDialog(alarmEntity, EButtonType.Retry, true);
|
|
|
|
|
//if (buttonSelect == EButtonType.Retry)
|
|
|
|
|
//{
|
|
|
|
|
// logInfo = GetClassName() + "选择了重试";
|
|
|
|
|
// MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
//}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
Msg.ShowError(ex.Message);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (fixtureret != null && fixtureret.Result == EOneGrabSixteenResult.LocationOkScanBarcodeFail)
|
|
|
|
|
{
|
|
|
|
@ -1198,5 +1226,4 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|