Beispiel #1
0
        /// <summary>
        /// 발령 리스트로 부터 해당 ID 의 Index를 반환한다.
        /// </summary>
        /// <param name="_id"></param>
        /// <returns></returns>
        public int getWMessageIndex(uint _id)
        {
            try
            {
                WMessage           srcComp = new WMessage();
                WMessageIDComparer tarComp = new WMessageIDComparer();
                srcComp.ID = _id;
                this.wMessageList.Sort(tarComp);

                int idx = this.wMessageList.BinarySearch(srcComp, tarComp);

                return(idx);
            }
            catch (Exception e)
            {
                Console.WriteLine("getWMessageIndex : {0}", e.Message);
                return(-1);
            }
        }
Beispiel #2
0
        private void WmsgFinished(WMessage wmsg)
        {
            try
            {
                string tmpBroad = this.datamanager.getBroadName((uint)Properties.Settings.Default.cnfBroad);

                //============박찬호 수정 - 2013/11/19========================================
                if (tmpBroad == "<KBS>" || tmpBroad == "<MBC>" || tmpBroad == "<SBS>" || tmpBroad == "<YTN>")
                //============================================================================
                {
                    WMessage           tmpwmsg     = new WMessage();
                    WMessageIDComparer tmpcomparer = new WMessageIDComparer();
                    tmpwmsg.ID = wmsg.ID;
                    this.datamanager.BroadWmsgList.Sort(tmpcomparer);
                    WMessage w = this.datamanager.BroadWmsgList[this.datamanager.BroadWmsgList.BinarySearch(tmpwmsg, tmpcomparer)];

                    this.datamanager.BroadWmsgList.Remove(wmsg);
                }

                this.DmbIssuesLV.Items.RemoveByKey(wmsg.ID.ToString());
                this.controlset.SetListViewIndex(this.DmbIssuesLV);

                this.MainNotifyEffect.Stop();
                this.MainNotifyEffect.DeleteAllMsg();
                string tmpfact = string.Empty;
                tmpfact = (wmsg.SendMode == (byte)0) ? "시험" : (wmsg.SendMode == (byte)1) ? "훈련" : "실제";
                DateTime dt = DateTime.Now;
                this.notifyeffectstr        = "최근 " + dt.ToString("yyyy-MM-dd HH:mm:ss") + " 에 " + tmpfact + " 발령 종료되었습니다.";
                this.MainNotifyEffect.Blink = true;
                this.MainNotifyEffect.AddMsg(this.notifyeffectstr, Properties.Resources.megaphone_48x48_);
                this.MainNotifyEffect.Start();
            }
            catch (Exception ex)
            {
                Console.WriteLine("MainViewForm.WmsgFinished - " + ex.Message);
            }
        }
Beispiel #3
0
        public void SetStatusLB()
        {
            try
            {
                if (this.DmbIssuesLV.SelectedItems.Count == 1)
                {
                    WMessage           wmsg     = new WMessage();
                    WMessageIDComparer comparer = new WMessageIDComparer();
                    wmsg.ID = uint.Parse(this.DmbIssuesLV.SelectedItems[0].Name);
                    datamanager.BroadWmsgList.Sort(comparer);
                    WMessage w = datamanager.BroadWmsgList[datamanager.BroadWmsgList.BinarySearch(wmsg, comparer)];

                    //발령일시
                    this.dateTB.Text = w.DDateTime.ToString("yyyy-MM-dd HH:mm:ss");
                    //실제구분
                    string tmpfact = string.Empty;
                    tmpfact            = (w.SendMode == (byte)0) ? "시험" : (w.SendMode == (byte)1) ? "훈련" : "실제";
                    this.disterTB.Text = tmpfact;
                    //발령상태
                    this.priTB.Text = this.DmbIssuesLV.SelectedItems[0].SubItems[6].Text;
                    //발령구분
                    if (w.SendPart != 0)
                    {
                        this.regionTB.Text = w.SendPart.ToString();
                    }
                    else
                    {
                        this.regionTB.Text = string.Empty;
                    }
                    //방송사
                    string tmp = string.Empty;
                    for (int i = 0; i < w.BCenterList.Count; i++)
                    {
                        tmp += datamanager.getBroadNameV2(w.BCenterList[i].StageID);
                    }
                    if (tmp != string.Empty)
                    {
                        this.partTB.Text = tmp.Substring(2, (tmp.Length - 2));
                    }
                    else
                    {
                        this.partTB.Text = tmp;
                    }
                    //DMB단문
                    if (w.BoolControl)
                    {
                        this.dmbmTB.Text = "수신기 상태/제어 요청";
                    }
                    else if (w.SendPart == WMessage.E_sendPart.STRD)
                    {
                        this.dmbmTB.Text = "수신기 저장메시지 요청";
                    }
                    else if (w.SendPart == WMessage.E_sendPart.WARN)
                    {
                        this.dmbmTB.Text = "수신기 경보사이렌 요청";
                    }
                    else
                    {
                        this.dmbmTB.Text = w.Message;
                    }
                    //TTS단문
                    if (w.BoolControl)
                    {
                        this.ttsmTB.Text = "수신기 상태/제어 요청";
                    }
                    else if (w.SOPT_STOREDMESSAGE)
                    {
                        this.ttsmTB.Text = "수신기 저장메시지 요청";
                    }
                    else if (w.SendPart == WMessage.E_sendPart.WARN)
                    {
                        this.ttsmTB.Text = "수신기 경보사이렌 요청";
                    }
                    else
                    {
                        this.ttsmTB.Text = w.TTSMsg;
                    }
                    //SMS단문
                    this.smsmTB.Text = w.SMSMsg;
                }
                else
                {
                    this.dateTB.Text   = string.Empty;
                    this.disterTB.Text = string.Empty;
                    this.priTB.Text    = string.Empty;
                    this.regionTB.Text = string.Empty;
                    this.partTB.Text   = string.Empty;
                    this.dmbmTB.Text   = string.Empty;
                    this.ttsmTB.Text   = string.Empty;
                    this.smsmTB.Text   = string.Empty;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("SetStatusLB - " + ex.Message);
            }
        }
Beispiel #4
0
        public void SetIssuesUpdate()
        {
            try
            {
                WaitBarMng.Start();
                WaitBarMng.Msg = "데이터 조회중 입니다...";

                List <WMessage>    datewmsgList = new List <WMessage>();
                WMessageIDComparer wcomparer    = new WMessageIDComparer();

                if (this.DmbIssueListView.Items.Count != 0)
                {
                    this.DmbIssueListView.Items.Clear();
                }

                datewmsgList = datamanager.GetDateWMessageList((DateTime)this.StartDateTimePicker.Value, (DateTime)this.EndDateTimePicker.Value);
                datewmsgList.Sort(wcomparer);

                if (datewmsgList.Count != 0)
                {
                    foreach (WMessage wmessage in datewmsgList)
                    {
                        if (wmessage.SendPart == WMessage.E_sendPart.SMS)
                        {
                            continue;
                        }

                        if (wmessage.BCenterList.Count != 0)
                        {
                            foreach (broadcast broad in wmessage.BCenterList)
                            {
                                if (broad.StageID != (uint)Properties.Settings.Default.cnfBroad)
                                {
                                    continue;
                                }

                                this.DmbIssueListView.Items.Add(this.orderlistset.setWmsgCollection(wmessage));
                            }
                        }
                        else if (wmessage.BCenterList.Count == 0)//특수수신기 제어 또는 상태 요청 시
                        {
                            string broadTmp = this.datamanager.getBroadName((uint)Properties.Settings.Default.cnfBroad);

                            //============박찬호 수정 - 2013/11/19========================================
                            if (broadTmp == "<KBS>" || broadTmp == "<MBC>" || broadTmp == "<SBS>" || broadTmp == "<YTN>")
                            //============================================================================
                            {
                                this.DmbIssueListView.Items.Add(this.orderlistset.setWmsgCollection(wmessage));
                            }
                        }
                    }

                    this.orderlistset.PkidIndex = 0;
                }

                this.controlset.SetListViewIndex(this.DmbIssueListView);
                WaitBarMng.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine("IssueListForm.SetIssuesUpdate - " + ex.Message);
                WaitBarMng.Close();
            }
        }