public override void CloneFrom(NCasObject obj) { AutoOrderBizData newObject = obj as AutoOrderBizData; this.almProtocol = newObject.almProtocol; this.sendBuff = newObject.sendBuff; }
public override NCasObject CloneTo() { AutoOrderBizData newObject = new AutoOrderBizData(); newObject.almProtocol = this.almProtocol; newObject.sendBuff = this.sendBuff; return(newObject); }
/// <summary> /// 발령 버튼 (즉시 발령) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void oklBtn_Click(object sender, EventArgs e) { NCasProtocolTc171 proto171 = NCasProtocolFactory.CreateCasProtocol(NCasDefineTcCode.TcAutoAlarmOrder) as NCasProtocolTc171; proto171.AlarmNetIdOrIpByString = "10.24.8.129"; //임시 proto171.Media = NCasDefineOrderMedia.MediaLine; proto171.CtrlKind = NCasDefineControlKind.ControlAlarm; proto171.OrderTimeByDateTime = DateTime.Now; proto171.Sector = NCasDefineSectionCode.SectionTerm; proto171.Source = NCasDefineOrderSource.ProvCtrlRoom; proto171.RespReqFlag = NCasDefineRespReq.ResponseReq; proto171.AuthenFlag = NCasDefineAuthenticationFlag.EncodeUsed; proto171.AlarmKind = NCasDefineOrderKind.WmaAutoAlarm; if (isWeather) //특보 { proto171.Mode = (WeatherOptionMng.LstWeatherOptionData[0].TestOrder == true) ? NCasDefineOrderMode.TestMode : NCasDefineOrderMode.RealMode; proto171.MsgNum1 = this.GetStoredMsgHeaderNumber(int.Parse(this.mainForm.GetWeatherKindData(cmd1).StoMsg.MsgNum)); proto171.MsgNum2 = int.Parse(this.mainForm.GetWeatherKindData(cmd1).StoMsg.MsgNum); proto171.MsgNum3 = this.GetStoredMsgTailNumber(int.Parse(this.mainForm.GetWeatherKindData(cmd1).StoMsg.MsgNum)); proto171.RepeatNum = (byte)this.mainForm.GetWeatherKindData(cmd1).StoMsg.RepeatCount; NCasLoggingMng.ILogging.WriteLog("특보 데이터 처리 - 의사결정", string.Format("자동방송 저장메시지 [{0}] 방송 실행함", proto171.MsgNum2.ToString())); } else //조위 { try { proto171.Mode = (HeightOptionMng.LstHeightOptionData[0].TestOrder == true) ? NCasDefineOrderMode.TestMode : NCasDefineOrderMode.RealMode; if (cmd2.TideLevel >= HeightOptionMng.LstHeightOptionData[0].MaxValue && cmd2.TideLevel < HeightOptionMng.LstHeightOptionData[0].MaxValue2) { proto171.MsgNum1 = this.GetStoredMsgHeaderNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg.MsgNum)); proto171.MsgNum2 = int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg.MsgNum); proto171.MsgNum3 = this.GetStoredMsgTailNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg.MsgNum)); proto171.RepeatNum = (byte)HeightOptionMng.LstHeightOptionData[0].Msg.RepeatCount; } else if (cmd2.TideLevel >= HeightOptionMng.LstHeightOptionData[0].MaxValue2 && cmd2.TideLevel < HeightOptionMng.LstHeightOptionData[0].MaxValue3) { proto171.MsgNum1 = this.GetStoredMsgHeaderNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg2.MsgNum)); proto171.MsgNum2 = int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg2.MsgNum); proto171.MsgNum3 = this.GetStoredMsgTailNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg2.MsgNum)); proto171.RepeatNum = (byte)HeightOptionMng.LstHeightOptionData[0].Msg2.RepeatCount; } else if (cmd2.TideLevel >= HeightOptionMng.LstHeightOptionData[0].MaxValue3 && cmd2.TideLevel < HeightOptionMng.LstHeightOptionData[0].MaxValue4) { proto171.MsgNum1 = this.GetStoredMsgHeaderNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg3.MsgNum)); proto171.MsgNum2 = int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg3.MsgNum); proto171.MsgNum3 = this.GetStoredMsgTailNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg3.MsgNum)); proto171.RepeatNum = (byte)HeightOptionMng.LstHeightOptionData[0].Msg3.RepeatCount; } else if (cmd2.TideLevel >= HeightOptionMng.LstHeightOptionData[0].MaxValue4) { proto171.MsgNum1 = this.GetStoredMsgHeaderNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg4.MsgNum)); proto171.MsgNum2 = int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg4.MsgNum); proto171.MsgNum3 = this.GetStoredMsgTailNumber(int.Parse(HeightOptionMng.LstHeightOptionData[0].Msg4.MsgNum)); proto171.RepeatNum = (byte)HeightOptionMng.LstHeightOptionData[0].Msg4.RepeatCount; } } catch (Exception ex) { MessageBox.Show("조위 단계 별 저장메시지가 설정되어 있지 않아 발령을 종료합니다.", "조위 방송", MessageBoxButtons.OK, MessageBoxIcon.Warning); NCasLoggingMng.ILogging.WriteLog("조위 데이터 처리 - 의사결정 전 저장메시지 미설정으로 방송 직전 종료함", "자동방송 저장메시지 방송 종료함"); this.Close(); } NCasLoggingMng.ILogging.WriteLog("조위 데이터 처리 - 의사결정", string.Format("자동방송 저장메시지 [{0}] 방송 실행함", proto171.MsgNum2.ToString())); } byte[] buff = NCasProtocolFactory.MakeUdpFrame(proto171); AutoOrderBizData autoOrderBizData = new AutoOrderBizData(); autoOrderBizData.AlmProtocol = proto171; autoOrderBizData.SendBuff = buff; this.mainForm.SetAutoOrderBizData(autoOrderBizData); this.Close(); }