public bool Update(CMDSend cmdSend) { if (cmdSend != null) { return(new BLL.tCMDSends().Update(cmdSend.T)); } return(false); }
public bool Add(CMDSend cmdSend) { if (cmdSend != null) { return(new BLL.tCMDSends().Add(cmdSend.T)); } return(false); }
/// <summary> /// 有效初始化 /// </summary> /// <param name="title">标题</param> /// <param name="header">页眉</param> /// <param name="type">数据类型</param> /// <param name="d">数据内容</param> /// <param name="t">超时时间</param> public SyncDataDlg(string title, string header, CMDSend send, int t = 10) : this() { this.Title = title; txtTip.Text = header; cmdSend = send; timeout = t; defaultTimeout = t; }
private void lbMIHostInfoAddrSync_Click(object sender, RoutedEventArgs e) { TreeHostInfo thi = (TreeHostInfo)tvHostLightInfo.SelectedItem; int id; if (!string.IsNullOrEmpty(thi.HostInfo.Addr) && int.TryParse(thi.HostInfo.Addr, out id)) { CMDSend cmdSend = new CMDSend(); cmdSend.GUID = Guid.NewGuid().ToString(); cmdSend.Addr = thi.HostInfo.Addr; cmdSend.Content = HexHelper.ByteArrayToHexString(ProtocolManage.LightGPRSProtocol.AddrSyncCMD(id)); cmdSend.ContentType = (int)CMDType.InterSetCMD; cmdSend.CreateDate = DateTime.Now; cmdSend.ID = thi.HostInfo.IDID; cmdSend.UpdateDate = cmdSend.CreateDate; cmdSend.State = (int)CMDState.NO; SyncDataDlg sdd = new SyncDataDlg("同步地址", thi.HostInfo.Name, cmdSend); sdd.ShowDialog(); } }
private void bw_DoWork(object sender, DoWorkEventArgs e) { bool exit = false; e.Result = false; CMDRevBLL cmdRevBLL = new CMDRevBLL(); CMDSend cmdSend = new CMDSend(); int id; if (!string.IsNullOrEmpty(hostInfo.Addr) && int.TryParse(hostInfo.Addr, out id)) { cmdSend.GUID = Guid.NewGuid().ToString(); cmdSend.Addr = hostInfo.Addr; cmdSend.Content = HexHelper.ByteArrayToHexString(ProtocolManage.LightGPRSProtocol.IntervalSyncCMD(id, start, len, count)); cmdSend.ContentType = (int)CMDType.InterSetCMD; cmdSend.CreateDate = DateTime.Now; cmdSend.ID = hostInfo.IDID; cmdSend.UpdateDate = cmdSend.CreateDate; cmdSend.State = (int)CMDState.NO; Debug.WriteLine("开始往数据库中写入命令"); { if (new CMDSendBLL().Add(cmdSend)) { timeout = defaultTimeout; Debug.WriteLine("写入服务器命令成功"); } else { return; } } while (true) { if (bw.CancellationPending == true || timeout == 0) { e.Cancel = true; break; } switch ((CMDType)(cmdSend.ContentType)) { case CMDType.InterSetCMD: { try { Debug.WriteLine("查询服务器返回的值"); List <CMDRev> result = cmdRevBLL.GetModelByIDAndTime(cmdSend.ID, (byte)CMDType.InterSetRev, -60, (int)CMDState.NO); if (result != null && result.Count > 0) { string[] strContent = result[0].Content.Split(' '); if (strContent.Length == 3) { if (int.Parse(strContent[2]) == 1) { Debug.WriteLine("命令执行成功"); // 命令成功 bw.ReportProgress(100, true); exit = true; e.Result = true; Thread.Sleep(2000); } else { Debug.WriteLine("命令执行失败"); // 命令失败 bw.ReportProgress(99, false); exit = true; } result[0].State = (int)CMDState.Yes; result[0].UpdateDate = DateTime.Now; cmdRevBLL.Update(result[0]); } } } catch (Exception ex) { Debug.WriteLine(ex.Message); } } break; default: break; } if (exit == true) { break; } timeout--; bw.ReportProgress(timeout, null); Thread.Sleep(1000); } } }
private void bw_DoWork(object sender, DoWorkEventArgs e) { bool exit = false; e.Result = false; CMDRevBLL cmdRevBLL = new CMDRevBLL(); CMDSend cmdSend = new CMDSend(); int id; if (!string.IsNullOrEmpty(hostInfo.Addr) && int.TryParse(hostInfo.Addr, out id)) { cmdSend.GUID = Guid.NewGuid().ToString(); cmdSend.Addr = hostInfo.Addr; cmdSend.Content = $"{id} 召测全部"; cmdSend.ContentType = (int)CMDType.RecruitAllCMD; cmdSend.CreateDate = DateTime.Now; cmdSend.ID = hostInfo.IDID; cmdSend.UpdateDate = cmdSend.CreateDate; cmdSend.State = (int)CMDState.NO; Debug.WriteLine("开始往数据库中写入命令"); { if (new CMDSendBLL().Add(cmdSend)) { timeout = defaultTimeout; Debug.WriteLine("写入服务器命令成功"); } else { return; } } while (true) { if (bw.CancellationPending == true || timeout == 0) { e.Cancel = true; break; } switch ((CMDType)(cmdSend.ContentType)) { case CMDType.RecruitAllCMD: { try { Debug.WriteLine("查询服务器返回的值"); List <CMDRev> result = cmdRevBLL.GetModelByIDAndTime(cmdSend.ID, (int)CMDType.RecruitAllRev, -60, (int)CMDState.NO); if (result != null && result.Count > 0) { string strContent = result[0].Content; if (string.IsNullOrWhiteSpace(strContent)) { Debug.WriteLine("命令执行失败"); // 命令失败 bw.ReportProgress(99, strContent); exit = true; } else { Debug.WriteLine("命令执行成功"); // 命令成功 bw.ReportProgress(100, strContent); exit = true; e.Result = true; Thread.Sleep(2000); } result[0].State = (int)CMDState.Yes; result[0].UpdateDate = DateTime.Now; cmdRevBLL.Update(result[0]); } } catch (Exception ex) { Debug.WriteLine(ex.Message); } } break; default: break; } if (exit == true) { break; } timeout--; bw.ReportProgress(timeout, null); Thread.Sleep(1000); } } }