change-调度关于2楼废料bug优化

master
liuwf 1 year ago
parent fc95a3f676
commit 2b50530bed

@ -1040,7 +1040,8 @@ namespace Khd.Core.Wcs.Wcs
wasteEquip.ud3 = "0"; wasteEquip.ud3 = "0";
BaseEquip endEquip = dbContext.BaseEquip.First(t => t.objid == item.endPointId); BaseEquip endEquip = dbContext.BaseEquip.First(t => t.objid == item.endPointId);
endEquip.emptyCount = 1; endEquip.emptyCount = 1;
endEquip.equipStatus = 2; endEquip.equipStatus = 1;
endEquip.ud3 = "2";
endEquip.containerNo = item.containerNo; endEquip.containerNo = item.containerNo;
dbContext.Remove(item); dbContext.Remove(item);
dbContext.Update(wasteEquip); dbContext.Update(wasteEquip);

@ -258,6 +258,7 @@ namespace Khd.Core.Wcs.Wcs
} }
} }
} }
else if (wcsTask.taskStatus == 8)//小车任务完成 else if (wcsTask.taskStatus == 8)//小车任务完成
{ {
if (wcsTask.taskType == StaticTaskType.SecondStorageToLift && wcsTask.containerNo == rfid)//50是成品出库 if (wcsTask.taskType == StaticTaskType.SecondStorageToLift && wcsTask.containerNo == rfid)//50是成品出库
@ -288,34 +289,7 @@ namespace Khd.Core.Wcs.Wcs
_logger.Info("二楼接驳位生成任务出库成功,托盘号:" + rfid); _logger.Info("二楼接驳位生成任务出库成功,托盘号:" + rfid);
Console.WriteLine(DateTime.Now + ":二楼接驳位生成任务出库成功,托盘号:" + rfid); Console.WriteLine(DateTime.Now + ":二楼接驳位生成任务出库成功,托盘号:" + rfid);
} }
else//一般情况下是废料的任务
{
BaseEquip endEquip = StaticData.BaseEquip.First(t => t.objid == wcsTask.endPointId);
dbContext.Remove(wcsTask);
WcsTask newTask = CoreMapper.Map<WcsTask>(wcsTask);
newTask.serialNo = SystemData.GetSerialNo(dbContext);
newTask.taskStatus = 0;
newTask.objid = StaticData.SnowId.NextId();
newTask.nextPointId = tsjEquip.objid;
newTask.nextPointNo = tsjEquip.equipNo;
newTask.createTime = DateTime.Now;
newTask.updateTime = DateTime.Now;
newTask.ud1 = 30;
newTask.endPointId = endEquip.objid;
newTask.endPointNo = endEquip.equipNo;
newTask.containerNo = rfid;
newTask.currPointId = lineEquip.objid;
newTask.currPointNo = lineEquip.equipNo;
newTask.useFlag = 1;
newTask.fromFloorNo = 2;
newTask.floorNo = endEquip.floorNo;
dbContext.Add(newTask);
WcsTaskLog wcsTaskLog = CoreMapper.Map<WcsTaskLog>(newTask);
dbContext.Add(wcsTaskLog);
dbContext.SaveChanges();
_logger.Info("二楼接驳位生成任务出库成功,托盘号:" + rfid);
Console.WriteLine(DateTime.Now + ":二楼接驳位生成任务出库成功,托盘号:" + rfid);
}
} }
} }

@ -346,7 +346,7 @@ namespace Khd.Core.Wcs.Wcs
#region 人工任务完成自动删除 #region 人工任务完成自动删除
WcsTask? wcsTask = dbContext.WcsTask.FirstOrDefault(t => t.taskType == 99 && t.taskStatus == 5); WcsTask? wcsTask = dbContext.WcsTask.FirstOrDefault(t => t.taskType == 99 && t.taskStatus == 5);
if (wcsTask!=null) if (wcsTask!=null && wcsTask.endPointId<=5)
{ //人工任务已经完成,自动删除 { //人工任务已经完成,自动删除
dbContext.Remove(wcsTask); dbContext.Remove(wcsTask);
dbContext.SaveChanges(); dbContext.SaveChanges();

@ -1640,9 +1640,9 @@
<ColumnDefinition Width="2*"/> <ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="请求空托盘" Grid.Column="0" Grid.Row="0" FontSize="50" HorizontalAlignment="Center" VerticalAlignment="Center"/> <TextBlock Text="废料区请求空托盘" Grid.Column="0" Grid.Row="0" FontSize="50" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Button Content="执行" Foreground="White" Background="#346DFF" Width="150" Height="75" Grid.Column="1" Grid.Row="0" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Center" Click="btnSendEmptyTray_Click"/> <Button Content="执行" Foreground="White" Background="#346DFF" Width="150" Height="75" Grid.Column="1" Grid.Row="0" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Center" Click="btnSendEmptyTray_Click"/>
<TextBlock Text="出托盘到周转区" Grid.Column="2" Grid.Row="0" FontSize="50" HorizontalAlignment="Center" VerticalAlignment="Center"/> <TextBlock Text="废料区出托盘到周转区" Grid.Column="2" Grid.Row="0" FontSize="50" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Button Content="执行" Foreground="White" Background="#346DFF" Width="150" Height="75" Grid.Column="3" Grid.Row="0" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Center" Click="btnSendTrayToTurnover_Click"/> <Button Content="执行" Foreground="White" Background="#346DFF" Width="150" Height="75" Grid.Column="3" Grid.Row="0" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Center" Click="btnSendTrayToTurnover_Click"/>
</Grid> </Grid>
</Grid> </Grid>

@ -52,6 +52,8 @@ namespace Khd.Core.Wpf.Form
/// </summary> /// </summary>
public partial class FormBoardT : Window public partial class FormBoardT : Window
{ {
private List<long> productIds = new List<long>() { 231, 531, 521 }; private List<long> productIds = new List<long>() { 231, 531, 521 };
public static long? UserId = 1; public static long? UserId = 1;
public static readonly JcSnowId _jcSnowId = new JcSnowId(); public static readonly JcSnowId _jcSnowId = new JcSnowId();
@ -123,6 +125,7 @@ namespace Khd.Core.Wpf.Form
this._host = host; this._host = host;
InitializeComponent(); InitializeComponent();
InventoryMaterialWindow.RefreshInventoryListEvent += GetInvertoryData; InventoryMaterialWindow.RefreshInventoryListEvent += GetInvertoryData;
AddTask.RefreTaskListEvent += GetTask;
} }
/// <summary> /// <summary>
/// 页面加载事件 /// 页面加载事件
@ -4641,38 +4644,45 @@ namespace Khd.Core.Wpf.Form
{ {
HandyControl.Controls.MessageBox.Show("有任务正在执行,请等待任务完成后再执行此操作!"); HandyControl.Controls.MessageBox.Show("有任务正在执行,请等待任务完成后再执行此操作!");
return; return;
}else if (baseEquip.equipStatus == 1)
{
HandyControl.Controls.MessageBox.Show("废料区有托盘,请先移走!");
return;
} }
else else
{ {
var startEquip = dbContext.BaseEquip.FirstOrDefault(t => t.equipType == 20 && t.equipStatus == 1 && t.emptyCount == 1 && t.useFlag == 1); var startEquip = dbContext.BaseEquip.FirstOrDefault(t => t.equipType == 20 && t.equipStatus == 1 && t.emptyCount == 1 && t.useFlag == 1 && t.ud3=="1");
if (startEquip == null) if (startEquip == null)
{ {
BaseEquip firstEmptyEquip = dbContext.BaseEquip.First(t => t.objid == 40); MessageBox.Show("二楼未找到一个托盘的库位,请前往一楼调取");
if (firstEmptyEquip.emptyCount > 0) return;
{ //BaseEquip firstEmptyEquip = dbContext.BaseEquip.First(t => t.objid == 40);
MessageBoxResult MessageBoxResult = HandyControl.Controls.MessageBox.Show("二楼未找到一个托盘的库位,是否从一楼调取?", "提示", MessageBoxButton.OKCancel); //if (firstEmptyEquip.emptyCount > 0)
if (MessageBoxResult == MessageBoxResult.OK) //{
{ // MessageBox.Show("二楼未找到一个托盘的库位,请前往一楼调取");
if (ReadEmptyLocation()) // MessageBoxResult MessageBoxResult = HandyControl.Controls.MessageBox.Show("二楼未找到一个托盘的库位,是否从一楼调取?", "提示", MessageBoxButton.OKCancel);
{ // if (MessageBoxResult == MessageBoxResult.OK)
BasePlcpoint oneOutPoint = SystemData.BasePlcpoints.First(t => t.plcpointNo == "oneOut"); // {
SystemData.PlcDic[0].WriteToPoint(oneOutPoint.plcpointAddress, "1", oneOutPoint.plcpointLength.ToString()); // if (ReadEmptyLocation())
firstEmptyEquip.emptyCount -= 1; // {
dbContext.Update(firstEmptyEquip); // BasePlcpoint oneOutPoint = SystemData.BasePlcpoints.First(t => t.plcpointNo == "oneOut");
dbContext.SaveChanges(); // SystemData.PlcDic[0].WriteToPoint(oneOutPoint.plcpointAddress, "1", oneOutPoint.plcpointLength.ToString());
HandyControl.Controls.MessageBox.Show("下发成功"); // firstEmptyEquip.emptyCount -= 1;
} // dbContext.Update(firstEmptyEquip);
else // dbContext.SaveChanges();
{ // HandyControl.Controls.MessageBox.Show("下发成功");
HandyControl.Controls.MessageBox.Show("一楼托盘库忙碌中,请稍后再试!"); // }
} // else
} // {
} // HandyControl.Controls.MessageBox.Show("一楼托盘库忙碌中,请稍后再试!");
else // }
{ // }
HandyControl.Controls.MessageBox.Show("未找到一个托盘的库位"); //}
return; //else
} //{
// HandyControl.Controls.MessageBox.Show("未找到一个托盘的库位");
// return;
//}
} }
else else
{ {

@ -20,6 +20,13 @@ namespace Khd.Core.Wpf.TaskForm
/// </summary> /// </summary>
public partial class AddTask : Window public partial class AddTask : Window
{ {
#region 委托事件
public delegate void RefreTaskListDelegate();
public static event RefreTaskListDelegate? RefreTaskListEvent;
#endregion
private List<EquipMessage> startEquips = new List<EquipMessage>(); private List<EquipMessage> startEquips = new List<EquipMessage>();
private List<EquipMessage> endEquips = new List<EquipMessage>(); private List<EquipMessage> endEquips = new List<EquipMessage>();
private List<BaseEquip> baseEquips = new List<BaseEquip>(); private List<BaseEquip> baseEquips = new List<BaseEquip>();
@ -28,6 +35,7 @@ namespace Khd.Core.Wpf.TaskForm
{ {
InitializeComponent(); InitializeComponent();
_host = host; _host = host;
} }
private void Window_Loaded(object sender, RoutedEventArgs e) private void Window_Loaded(object sender, RoutedEventArgs e)
@ -50,7 +58,7 @@ namespace Khd.Core.Wpf.TaskForm
IsEnabled = true IsEnabled = true
}); });
} }
if (equip.ud2 == "1" && equip.emptyCount == 0) if (equip.ud2 == "1") //&& equip.emptyCount == 0
{ {
endEquips.Add(new EquipMessage endEquips.Add(new EquipMessage
{ {
@ -132,6 +140,7 @@ namespace Khd.Core.Wpf.TaskForm
MessageBox.Show("未检测到起始地楼层的到位信号"); MessageBox.Show("未检测到起始地楼层的到位信号");
} }
} }
RefreTaskListEvent?.Invoke();
this.Close(); this.Close();
} }
else else

@ -1 +1 @@
1.0.0.0 2.0.0.0
Loading…
Cancel
Save