private void Button_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(_viewModel.EditModel.product_name)) { MessageBoxX.Show("产品名称不能为空", "错误", Application.Current.MainWindow); return; } _taskOrderManager.RstSnSig1(); //信号复位 _taskOrderManager.RstSnSig2(); //信号复位 if (_viewModel.SelectedModel != null) { _viewModel.Finish(_viewModel.SelectedModel);//完成 } var parameter = _productParameterService.QueryableToEntity(x => x.product_name == _viewModel.EditModel.product_name); if (parameter != null) { _viewModel.EditModel.barcode_machine_mode = parameter.barcode_machine_mode; _viewModel.EditModel.card_machine_enable = parameter.card_machine_enable; _viewModel.EditModel.graphic_carton_size = parameter.graphic_carton_size; _viewModel.EditModel.noraml_carton_size = parameter.noraml_carton_size; _viewModel.EditModel.open_machine_mode = parameter.open_machine_mode; _viewModel.EditModel.outer_carton_size = parameter.outer_carton_size; _viewModel.EditModel.pallet_num = parameter.pallet_num; _viewModel.EditModel.pallet_size = parameter.pallet_size; _viewModel.EditModel.plate_enable = parameter.plate_enable; _viewModel.EditModel.bubble_cover_enable = parameter.bubble_cover_enable; _viewModel.EditModel.product_size = parameter.product_size; _viewModel.EditModel.robot_pg_no = parameter.robot_pg_no; _viewModel.EditModel.sn_barcode_enable = parameter.sn_barcode_enable; } _viewModel.EditModel.order_status = (int)OrderStatusEnum.Running; _viewModel.EditModel.start_time = DateTime.Now; _viewModel.EditModel.pack_mode = (int)PackMode.None; if (radioButton1.IsChecked == true)//装箱模式 { _viewModel.EditModel.pack_mode = (int)PackMode.Pack; } if (_viewModel.EditModel.id > 0) { if (!_viewModel.Update(_viewModel.EditModel)) { MessageBoxX.Show("当前产品信息选择时,信息保存失败", "错误", Application.Current.MainWindow); } else { _viewModel.SelectedModel = _viewModel.EditModel; if (!_taskOrderManager.StartToDownloadParamter(_viewModel.SelectedModel)) { // MessageBoxX.Show("参数下载失败,请检查网络连接后重新下载!", "错误", Application.Current.MainWindow); } } } else { if (!_viewModel.Insert(_viewModel.EditModel)) { MessageBoxX.Show("当前产品信息选择时,信息保存失败", "错误", Application.Current.MainWindow); } else { _viewModel.SelectedModel = _viewModel.EditModel; if (!_taskOrderManager.StartToDownloadParamter(_viewModel.SelectedModel)) { //MessageBoxX.Show("参数下载失败,请检查网络连接后重新下载!", "错误", Application.Current.MainWindow); } } } this.Close(); }
/// <summary> /// RFID消息处理 /// </summary> /// <param name="PortErrorMessage"></param> /// <param name="WriteErrorMessage"></param> /// <param name="ReadErrorMessage"></param> private void ReadRFIDWindow_RFIDInfoEvent(RfidInfo info) { if (info.InfoType == RFIDInfoEnum.PortError) { _systemLogViewModel.AddMewStatus(info.Content, LogTypeEnum.Error); } else if (info.InfoType == RFIDInfoEnum.WriteError)//写入失败 { _systemLogViewModel.AddMewStatus(info.Content, LogTypeEnum.Error); if (_taskOrderViewModel.SelectedModel != null) { _taskOrderViewModel.SelectedModel.defective_count += 1;//更新异常数量 _taskOrderViewModel.Update(_taskOrderViewModel.SelectedModel); } } else if (info.InfoType == RFIDInfoEnum.WriteSuccess)//写入成功,直接显示信息 { lastWriteInfo = info.Sn; _systemLogViewModel.AddMewStatus(info.Content); } else if (info.InfoType == RFIDInfoEnum.ReadError)//读取失败 { //rfidReadTimer.IsEnabled = false; //rfidReadTimer.Stop(); _systemLogViewModel.AddMewStatus(info.Content, LogTypeEnum.Error); if (RFID_ReadFeedbackTag != null && RFID_ReadSigTag.TagValue == 1) { RFID_ReadFeedbackTag.Write(2); } if (_taskOrderViewModel.SelectedModel != null) { _taskOrderViewModel.SelectedModel.defective_count += 1;//更新异常数量 if (_taskOrderViewModel.Update(_taskOrderViewModel.SelectedModel)) { _systemLogViewModel.AddMewStatus($"RFID信息读取失败,更新不良品数量,当前不良品数量为{_taskOrderViewModel.SelectedModel.defective_count}", LogTypeEnum.Info); } } } else if (info.InfoType == RFIDInfoEnum.ReadSuccess)//读取成功 { //rfidReadTimer.IsEnabled = false; //rfidReadTimer.Stop(); _systemLogViewModel.AddMewStatus(info.Content); if (info.Sn == lastWriteInfo) { _systemLogViewModel.AddMewStatus("RFID比对成功!开始写入PLC=1"); if (RFID_ReadFeedbackTag != null && RFID_ReadSigTag.TagValue == 1) { RFID_ReadFeedbackTag.Write(1);// } } else { _systemLogViewModel.AddMewStatus("RFID比对失败!开始写入PLC=2"); if (RFID_ReadFeedbackTag != null && RFID_ReadSigTag.TagValue == 1) { RFID_ReadFeedbackTag.Write(2); } } } }