debug - 停止盘点修改,写入目标epc去0处理取消

feat - 添加新的MES字段,并显示在前端中
master
SoulStar 1 month ago
parent a10a8c6413
commit ecdabfb381

@ -30,6 +30,10 @@ namespace SlnMesnac.Model.domain
public double PlanQty { get; set; }
[JsonPropertyName("NextProductNo")]
public int NextProductNo { get; set; }
[JsonPropertyName("PlanState")]
public string PlanState { get; set; }
[JsonPropertyName("PlanStateName")]
public string PlanStateName { get; set; }
public DateTime InsertDate { get; set; }
}

@ -156,7 +156,8 @@
<DataGridTextColumn Binding="{Binding PlanQty}" Header="计划数量" Width="1*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}" />
<DataGridTextColumn Binding="{Binding NextProductNo}" Header="带号" Width="1*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}" />
<DataGridTextColumn Binding="{Binding InsertDate}" Header="获取时间" Width="1*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}" />
<DataGridTemplateColumn Header="操作" Width="1.5*">
<DataGridTextColumn Binding="{Binding PlanStateName}" Header="计划状态" Width="0.5*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}" />
<DataGridTemplateColumn Header="操作" Width="1*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="开始生产" Height="40" Width="100" Command="{Binding DataContext.UpdateCommand, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"

@ -150,17 +150,8 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
}
List<DeviceInfoConfig> DeviceInfos = appConfig.deviceInfoConfig.Where(x => x.Collectid == appConfig.StationCode && x.Name == QueryIsCheck.ToString().Trim() && x.Deleteflag == 0).ToList();
WeakReferenceMessenger.Default.Send(DeviceInfos[0].Deviceid, "Cancel");
var res = rfidList.FirstOrDefault(x => x.deviceid == DeviceInfos[0].Deviceid).Set_StopIdentify().GetAwaiter().GetResult();
if (res)
{
MessageBox.Show("停止盘点成功!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
WeakReferenceMessenger.Default.Send(DeviceInfos[0].Deviceid, "Cancel");
}
else
{
MessageBox.Show("停止盘点失败!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
@ -187,7 +178,7 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
Console.WriteLine("调用MES获取订单接口");
//调用MES接口获取生产订单信息
//MessageBox.Show("MES订单获取成功!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
//string response = "{\"code\":200,\"msg\":\"success\",\"data\":[{\"OrderNo\":\"SS042\",\"ProductCode\":\"4030502500100006\",\"ProductType\":\"钢丝带-ST-井下阻燃钢丝带\",\"ProductName\":\"输送带-井下阻燃钢丝带-ST\",\"ProductSpec\":\"1400mmST/S2500*18+8MT/MTD7.2P15N89\",\"PlanQty\":130.00,\"NextProductNo\":2}]}\r\n";
//string response = "{\"code\":200,\"msg\":\"success\",\"data\":[{\"OrderNo\":\"SS074\",\"ProductCode\":\"4030502500100006\",\"ProductType\":\"钢丝带-ST-井下阻燃钢丝带\",\"ProductName\":\"输送带-井下阻燃钢丝带-ST\",\"ProductSpec\":\"1400mmST/S2500*18+8MT/MTD7.2P15N89\",\"PlanQty\":130.00,\"NextProductNo\":1,\"PlanState\":\"7\",\"PlanStateName\":\"终止\"},{\"OrderNo\":\"SZ091\",\"ProductCode\":\"4030502000100017\",\"ProductType\":\"钢丝带-ST-井下阻燃钢丝带\",\"ProductName\":\"输送带-井下阻燃钢丝带-ST\",\"ProductSpec\":\"1200mmST/S2000*18+6MT/MTD6P12N94\",\"PlanQty\":5.00,\"NextProductNo\":2,\"PlanState\":\"7\",\"PlanStateName\":\"终止\"},{\"OrderNo\":\"SS074\",\"ProductCode\":\"4031502500100003\",\"ProductType\":\"钢丝带-ST-井下阻燃钢网防撕裂钢丝带\",\"ProductName\":\"输送带-井下阻燃钢网防撕裂-ST\",\"ProductSpec\":\"1400mmST/S2500*18S+8MT/MTD7.2P15N89\",\"PlanQty\":160.00,\"NextProductNo\":14,\"PlanState\":\"7\",\"PlanStateName\":\"终止\"},{\"OrderNo\":\"SS074\",\"ProductCode\":\"4031502500100003\",\"ProductType\":\"钢丝带-ST-井下阻燃钢网防撕裂钢丝带\",\"ProductName\":\"输送带-井下阻燃钢网防撕裂-ST\",\"ProductSpec\":\"1400mmST/S2500*18S+8MT/MTD7.2P15N89\",\"PlanQty\":280.00,\"NextProductNo\":14,\"PlanState\":\"7\",\"PlanStateName\":\"终止\"}]}";
string response = await _httpclient.GetMesOrderInfo(lineno, BeginDate.ToString("yyyy-MM-dd"));
Console.WriteLine("接收MES接口返回:" + response);
// 反序列化
@ -333,3 +324,15 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
}
}
//0,新建
//1, 已审核
//2, 已下发
//3, 已接收
//4, 执行中
//5, 已完成
//6, 暂停
//7, 终止
//8, 预执行

@ -249,8 +249,8 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
Task.Delay(100).Wait();
//处理写入字符串,并写入
var originBytes = tagInfos[0].EPC.Where(b => b != 0x00).ToArray();
bool writeflag = rfidInfo.Set_Write(originBytes, WriteData).GetAwaiter().GetResult();
//var originBytes = tagInfos[0].EPC.Where(b => b != 0x00).ToArray();
bool writeflag = rfidInfo.Set_Write(tagInfos[0].EPC, WriteData).GetAwaiter().GetResult();
WriteTime++;
if (writeflag) //写入成功
@ -470,7 +470,18 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
/// </summary>
private void StopMessage(object o, string e)
{
var rfid = rfidList.FirstOrDefault(x => x.deviceid == e);
StopInventoryTimer(e);
var res = rfid.Set_StopIdentify().GetAwaiter().GetResult();
if (res)
{
MessageBox.Show("停止盘点成功!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("停止盘点失败!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
CurrentState = "空闲";
}
@ -625,6 +636,12 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
// 等待当前批次所有设备检测完成
await Task.WhenAll(detectionTasks);
}
/// <summary>
/// 重连核心算法
/// </summary>
/// <param name="device"></param>
/// <returns></returns>
private async Task DetectSingleDeviceAsync(RfidAbsractFactory device)
{
try
@ -638,7 +655,7 @@ namespace SlnMesnac.WPF.ViewModel.IndexPage
Deviceinfo.FirstOrDefault(x => x.Deviceid == device.deviceid).IsOnline = "已连接";
}
}
else
else //第一次的逻辑
{
await Reconnect(device);
Deviceinfo.FirstOrDefault(x => x.Deviceid == device.deviceid).IsOnline = "已连接";

Loading…
Cancel
Save