public bool Update(MaterialMetasModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } return(Invoke(c => { return c.Update(model); })); }
public int Insert(MaterialMetasModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } return(this.Invoke(c => { return (int)c.Insert(model); })); }
/// <summary> /// 新增结果记录 /// </summary> /// <param name="code"></param> private async Task CreateResult(string code) { topEngineResultModel = new LTopEngineResultModel { EngineCode = code, StationId = Station?.StationID, Result = 0, CreateTime = DateTime.Now, }; await RFIDDBHelper.LocalSQLHandler.LTopEngineResult.InsertAsync(topEngineResultModel); if (_screenConfig.Part.Available) { metasModel = new MaterialMetasModel { EngineCode = code, StationCode = Station?.StationID //ResultId = result.Id }; } }
/// <summary> /// 保存减震器码绑定信息 /// </summary> /// <param name="model"></param> public void SaveMaterialMetas(MaterialMetasModel model) { try { if (model.Id == 0) { model.CreateTime = DateTime.Now; model.ModifiedTime = DateTime.Now; model.Id = MaterialMetas.Insert(model); } else { model.ModifiedTime = DateTime.Now; MaterialMetas.Update(model); } } catch (Exception ex) { Log.Error("存储条码绑定信息失败", ex); } }
/// <summary> /// 零件码绑定 /// </summary> /// <param name="pnoCode"></param> private void PartCodeBinding(string pnoCode) { try { if (metasModel?.Result == 1 || ViewModel.CodeBindStatus == "已绑定") { ViewModel.PrintlnInfo($"已绑定零件号:{ViewModel.PnoCode}"); return; } ViewModel.PnoCode = pnoCode; if (EngineInfo == null || string.IsNullOrEmpty(EngineInfo.EngineCode)) { Log.Warning($"扫描零件码{pnoCode}时,发动机信息为空。"); ViewModel.CodeBindStatus = "无法绑定"; ViewModel.BindStatusColor = Color.Red; return; } string engineCode = EngineInfo.EngineCode; string engineMTO = EngineInfo.EngineMTO; if (metasModel == null) { metasModel = new MaterialMetasModel { EngineCode = engineCode, StationCode = _screenConfig.Station.StationID, MaterialCode = pnoCode }; } else { metasModel.MaterialCode = pnoCode; metasModel.ModifiedTime = DateTime.Now; } if (!string.IsNullOrEmpty(engineMTO)) { //EngineResultModel result = RFIDDBHelper.MSSQLHandler.EngineResult.Get(engineCode); //if (result != null) // metasModel.ResultId = result.TID; //还需要做派生校验 if (!CheckEnginePart(engineMTO, pnoCode)) { Log.Warning("发动机{engineCode}与零件{pnoCode}不匹配", engineCode, pnoCode); ViewModel.BindStatusColor = Color.Yellow; ViewModel.CodeBindStatus = "零件绑定错误,请检查型号是否匹配!"; adam.AlarmWarning(true); metasModel.Result = 0; Task.Run(() => RFIDDBHelper.MSSQLHandler.SaveMaterialMetas(metasModel)); return; } //这里做绑定 metasModel.Result = 1; Task.Run(() => RFIDDBHelper.MSSQLHandler.SaveMaterialMetas(metasModel)); ViewModel.CodeBindStatus = "已绑定"; ViewModel.BindStatusColor = Color.Green; } else { ViewModel.CodeBindStatus = "没有发动机派生信息,无法进行绑定"; ViewModel.BindStatusColor = Color.Red; Log.Warning($"扫描零件码{pnoCode}时,没有找到发动机派生信息."); metasModel.Result = 0; Task.Run(() => RFIDDBHelper.MSSQLHandler.SaveMaterialMetas(metasModel)); } } catch (Exception ex) { ViewModel.BindStatusColor = Color.Red; ViewModel.CodeBindStatus = "无法绑定,系统异常"; Log.Error("绑定零件码时异常--" + ex.StackTrace, ex); } }