private void setupFailTempAlarmReport(String name)
 {
     //random time needed for alarm report object.
     DateTime date = new DateTime(1337, 1, 1);
     String dateTest = date.ToString("yyyy:MM:dd");
     DateTime time = new DateTime(1337, 1, 1);
     String timeTest = time.ToString("H:mm:ss");
     DateTime cancelDuringEmergencyTime = new DateTime(1337, 1, 1);
     String cancelDuringEmergencyTimeTest = cancelDuringEmergencyTime.ToString("H:mm:ss");
     DateTime guardRadioedDate = new DateTime(1337, 1, 1);
     String guardRadioedDateTest = guardRadioedDate.ToString("yyyy:MM:dd");
     DateTime guardRadioedFrom = new DateTime(1337, 1, 1);
     String guardRadioedFromTest = guardRadioedFrom.ToString("H:mm:ss");
     DateTime guardRadioedTo = new DateTime(1337, 1, 1);
     String guardRadioedToTest = guardRadioedTo.ToString("H:mm:ss");
     DateTime arrivedAt = new DateTime(1337, 1, 1);
     String arrivedAtTest = arrivedAt.ToString("H:mm:ss");
     DateTime done = new DateTime(1337, 1, 1);
     String doneTest = done.ToString("H:mm:ss");
     //ends here.
     alarmReportTest = new AlarmReport(null, 1234567123, "streetAndHouseNumberTest", 1234, "cityTest", 12345678, dateTest,
         timeTest, "zoneTest", false, false, false, false, false, false, false, false, "000", false, cancelDuringEmergencyTimeTest, false, "", "remarkTest",
         "nameTest", "installerTest", "controlCenterTest", guardRadioedDateTest, guardRadioedFromTest, guardRadioedToTest,
         arrivedAtTest, doneTest, userTest.Id);
 }
Ejemplo n.º 2
0
 protected virtual void OnAlarmReporting(AlarmReport report)
 {
     if (this.AlarmReporting != null)
     {
         this.AlarmReporting(this, report);
     }
 }
Ejemplo n.º 3
0
 private void InitAlarmReport()
 {
     //tabGraphMain.TabPages.RemoveAt(3);
     objAlarm      = new AlarmReport();
     objAlarm.Dock = DockStyle.Fill;
     tabAlarmReport.Controls.Add(objAlarm);
 }
 public void TestMethodLocalStorageGetTempAlarmReportFail()
 {
     setupAlarmReport("TestMethodLocalStorageGetTempAlarmReport");
     AlarmReport expectedResult = alarmReportTest;
     localStorage.saveAlarmReport(alarmReportTest);
     AlarmReport actuaclResult = localStorage.getTempAlarmReport(69);
     localStorage.removeAlarmReports();
     Assert.AreNotEqual(expectedResult.Name, actuaclResult.Name);
 }
Ejemplo n.º 5
0
        public AlarmReport getTempAlarmReport(long id)
        {
            long length = currentNumberOfTempAlarmReports();
            long currentId;

            if (length > 0)
            {
                for (long i = 0; i < length; i++)
                {
                    currentId = i + 1;
                    if (currentId == id)
                    {
                        String      customerName         = appSettings[id + KEY_TEMP_REPORT_CUSTOMERNAME] as String;
                        long        customerNumber       = Convert.ToInt64(appSettings[id + KEY_TEMP_REPORT_CUSTOMERNUMBER] as String);
                        String      streetAndHouseNumber = appSettings[id + KEY_TEMP_REPORT_STREETANDHOUSENUMBER] as String;
                        int         zipCode                   = Convert.ToInt32(appSettings[id + KEY_TEMP_REPORT_ZIPCODE] as String);
                        String      city                      = appSettings[id + KEY_TEMP_REPORT_CITY] as String;
                        long        phonenumber               = Convert.ToInt64(appSettings[id + KEY_TEMP_REPORT_PHONENUMBER] as String);
                        String      date                      = appSettings[id + KEY_TEMP_REPORT_DATE] as String;
                        String      time                      = appSettings[id + KEY_TEMP_REPORT_TIME] as String;
                        String      zone                      = appSettings[id + KEY_TEMP_REPORT_ZONE] as String;
                        Boolean     burglaryVandalism         = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_BURGLARYVANDALISM] as String);
                        Boolean     windowDoorClosed          = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_WINDOWDOORCLOSED] as String);
                        Boolean     apprehendedPerson         = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_APPREHENDEDPERSON] as String);
                        Boolean     staffError                = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_STAFFERROR] as String);
                        Boolean     nothingToReport           = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_NOTHINGTOREPORT] as String);
                        Boolean     technicalError            = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_TECHNICALERROR] as String);
                        Boolean     unknownReason             = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_UNKNOWNREASON] as String);
                        Boolean     other                     = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_OTHER] as String);
                        String      reasonCodeId              = appSettings[id + KEY_TEMP_REPORT_REASONCODEID] as String;
                        Boolean     cancelDuringEmergency     = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_CANCELDURINGEMERGENCY] as String);
                        String      cancelDuringEmergencyTime = appSettings[id + KEY_TEMP_REPORT_CANCELDURINGEMERGENCYTIME] as String;
                        Boolean     coverMade                 = Convert.ToBoolean(appSettings[id + KEY_TEMP_REPORT_COVERMADE] as String);
                        String      coverMadeBy               = appSettings[id + KEY_TEMP_REPORT_COVERMADEBY] as String;
                        String      remark                    = appSettings[id + KEY_TEMP_REPORT_REMARK] as String;
                        String      name                      = appSettings[id + KEY_TEMP_REPORT_NAME] as String;
                        String      installer                 = appSettings[id + KEY_TEMP_REPORT_INSTALLER] as String;
                        String      controlCenter             = appSettings[id + KEY_TEMP_REPORT_CONTROLCENTER] as String;
                        String      guardRadioedDate          = appSettings[id + KEY_TEMP_REPORT_GUARDRADIOEDDATE] as String;
                        String      guardRadioedFrom          = appSettings[id + KEY_TEMP_REPORT_GUARDRADIOEDFROM] as String;
                        String      guardRadioedTo            = appSettings[id + KEY_TEMP_REPORT_GUARDRADIOEDTO] as String;
                        String      arrivedAt                 = appSettings[id + KEY_TEMP_REPORT_ARRIVEDAT] as String;
                        String      done                      = appSettings[id + KEY_TEMP_REPORT_DONE] as String;
                        AlarmReport alarmReport               = new AlarmReport(customerName, customerNumber, streetAndHouseNumber, zipCode, city, phonenumber, date, time, zone, burglaryVandalism,
                                                                                windowDoorClosed, apprehendedPerson, staffError, nothingToReport, technicalError, unknownReason, other, reasonCodeId, cancelDuringEmergency,
                                                                                cancelDuringEmergencyTime, coverMade, coverMadeBy, remark, name, installer, controlCenter, guardRadioedDate, guardRadioedFrom,
                                                                                guardRadioedTo, arrivedAt, done, getUser().Id);
                        return(alarmReport);
                    }
                }
            }

            return(null);
        }
Ejemplo n.º 6
0
 public async Task <Boolean> createAlarmReport(AlarmReport alarmReport)
 {
     //TODO fix så der bliver fortalt om der bliver gemt til localstorage eller i dbs
     if (checkNetworkConnection())
     {
         return(await dBFacade.createAlarmReport(alarmReport));
     }
     else
     {
         return(false);
     }
 }
Ejemplo n.º 7
0
        public Boolean createTempAlarmReport(AlarmReport alarmReport)
        {
            Debug.WriteLine("----------------------");
            Debug.WriteLine("createTempAlarmReport");
            Debug.WriteLine("----------------------");
            long id = getNextTempAlarmReportId();

            try
            {
                appSettings.Add(id + KEY_TEMP_REPORT_CUSTOMERNAME, alarmReport.CustomerName + "");
                appSettings.Add(id + KEY_TEMP_REPORT_CUSTOMERNUMBER, alarmReport.CustomerNumber + "");
                appSettings.Add(id + KEY_TEMP_REPORT_STREETANDHOUSENUMBER, alarmReport.StreetAndHouseNumber + "");
                appSettings.Add(id + KEY_TEMP_REPORT_ZIPCODE, alarmReport.ZipCode + "");
                appSettings.Add(id + KEY_TEMP_REPORT_CITY, alarmReport.City + "");
                appSettings.Add(id + KEY_TEMP_REPORT_PHONENUMBER, alarmReport.Phonenumber + "");
                appSettings.Add(id + KEY_TEMP_REPORT_DATE, alarmReport.Date + "");
                appSettings.Add(id + KEY_TEMP_REPORT_TIME, alarmReport.Time + "");
                appSettings.Add(id + KEY_TEMP_REPORT_ZONE, alarmReport.Zone + "");
                appSettings.Add(id + KEY_TEMP_REPORT_BURGLARYVANDALISM, alarmReport.BurglaryVandalism + "");
                appSettings.Add(id + KEY_TEMP_REPORT_WINDOWDOORCLOSED, alarmReport.WindowDoorClosed + "");
                appSettings.Add(id + KEY_TEMP_REPORT_APPREHENDEDPERSON, alarmReport.ApprehendedPerson + "");
                appSettings.Add(id + KEY_TEMP_REPORT_STAFFERROR, alarmReport.StaffError + "");
                appSettings.Add(id + KEY_TEMP_REPORT_NOTHINGTOREPORT, alarmReport.NothingToReport + "");
                appSettings.Add(id + KEY_TEMP_REPORT_TECHNICALERROR, alarmReport.TechnicalError + "");
                appSettings.Add(id + KEY_TEMP_REPORT_UNKNOWNREASON, alarmReport.UnknownReason + "");
                appSettings.Add(id + KEY_TEMP_REPORT_OTHER, alarmReport.Other + "");
                appSettings.Add(id + KEY_TEMP_REPORT_REASONCODEID, alarmReport.ReasonCodeId + "");
                appSettings.Add(id + KEY_TEMP_REPORT_CANCELDURINGEMERGENCY, alarmReport.CancelDuringEmergency + "");
                appSettings.Add(id + KEY_TEMP_REPORT_CANCELDURINGEMERGENCYTIME, alarmReport.CancelDuringEmergencyTime + "");
                appSettings.Add(id + KEY_TEMP_REPORT_COVERMADE, alarmReport.CoverMade + "");
                appSettings.Add(id + KEY_TEMP_REPORT_COVERMADEBY, alarmReport.CoverMadeBy + "");
                appSettings.Add(id + KEY_TEMP_REPORT_REMARK, alarmReport.Remark + "");
                appSettings.Add(id + KEY_TEMP_REPORT_NAME, alarmReport.Name + "");
                appSettings.Add(id + KEY_TEMP_REPORT_INSTALLER, alarmReport.Installer + "");
                appSettings.Add(id + KEY_TEMP_REPORT_CONTROLCENTER, alarmReport.ControlCenter + "");
                appSettings.Add(id + KEY_TEMP_REPORT_GUARDRADIOEDDATE, alarmReport.GuardRadioedDate + "");
                appSettings.Add(id + KEY_TEMP_REPORT_GUARDRADIOEDFROM, alarmReport.GuardRadioedFrom + "");
                appSettings.Add(id + KEY_TEMP_REPORT_GUARDRADIOEDTO, alarmReport.GuardRadioedTo + "");
                appSettings.Add(id + KEY_TEMP_REPORT_ARRIVEDAT, alarmReport.ArrivedAt + "");
                appSettings.Add(id + KEY_TEMP_REPORT_DONE, alarmReport.Done + "");
                appSettings.Save();
                addNumberOfTempAlarmReports();
                return(true);
            }
            catch (IsolatedStorageException i)
            {
                Debug.WriteLine("" + i.Message);

                return(false);
            }
        }
Ejemplo n.º 8
0
        public async Task <Boolean> sendAlarmReport(AlarmReport alarmReport)
        {
            Boolean isConnected = controller.checkNetworkConnection();

            Debug.WriteLine("connect: " + isConnected);

            if (isConnected)
            {
                if (await controller.createAlarmReport(alarmReport))
                {
                    emptyAlarmReport();
                    isAlarmReportEmpty = true;
                    MessageBox.Show(AppResources.ReportAlarmReportSuccess);
                    return(true);
                }
                else
                {
                    isAlarmReportEmpty = false;
                    if (controller.createLocalStorageAlarmReport(alarmReport))
                    {
                        emptyAlarmReport();
                        isAlarmReportEmpty = true;
                        MessageBox.Show(AppResources.ErrorInBackend + "\r\n" + AppResources.ReportAlarmReportLocalStorageSuccess);
                        return(true);
                    }
                    else
                    {
                        isAlarmReportEmpty = false;
                        MessageBox.Show(AppResources.ReportAlarmReportLocalStorageFailed);
                        return(false);
                    }
                }
            }
            else
            {
                if (controller.createLocalStorageAlarmReport(alarmReport))
                {
                    emptyAlarmReport();
                    isAlarmReportEmpty = true;
                    MessageBox.Show(AppResources.ReportAlarmReportLocalStorageSuccess);
                    return(true);
                }
                else
                {
                    isAlarmReportEmpty = false;
                    MessageBox.Show(AppResources.ReportAlarmReportLocalStorageFailed);
                    return(false);
                }
            }
        }
Ejemplo n.º 9
0
 /// <summary>
 /// 通知其打印机状态变化
 /// </summary>
 /// <param name="status"></param>
 public void NotifyTicketPrinterStatus(PrinterStatus status)
 {
     if (status != PrinterStatus.Ok || status != _LastTicketPrinterStatus) //如果打印机状态不正常或发生变化
     {
         _LastTicketPrinterStatus = status;
         DisplayMsg(PrinterStatusDescription.GetDescription(status), true);
         AlarmReport report = new AlarmReport(ParkID, _entrance.EntranceID, DateTime.Now, _entrance.EntranceName,
                                              AlarmType.PrinterStatus, PrinterStatusDescription.GetDescription(status), string.Empty);
         if (this.AlarmReporting != null)
         {
             this.AlarmReporting(this, report);
         }
     }
 }
Ejemplo n.º 10
0
        public void alarmComm()
        {
            DataTime = DateTime.Now;
            AlarmReport alarmReport = new AlarmReport
            {
                Id         = configGP.TowerID,
                Time       = DataTime,
                AlarmCode  = alarmGP.AlarmCode,
                IsAlarmSet = alarmGP.AlarmState == true ? true : false
            };

            string JsonSerial = JsonConvert.SerializeObject(alarmReport);

            Textbox_Write(JsonSerial, alarmURL);
        }
Ejemplo n.º 11
0
        public void myTextBlock_Tap(object sender, System.Windows.Input.GestureEventArgs args)
        {
            TextBlock   textBlock          = (TextBlock)args.OriginalSource;
            long        id                 = Int64.Parse(textBlock.Name);
            AlarmReport currentAlarmReport = controller.getLocalTempAlarmReport(id);

            if (controller.removeLocalStorageTempSelectedAlarmReport(id))
            {
                fillAlarmReport(currentAlarmReport);
                pivot.SelectedItem = alarmReport;
            }
            else
            {
                MessageBox.Show(AppResources.ReportError);
            }
        }
Ejemplo n.º 12
0
        public async Task <Boolean> createAlarmReport(AlarmReport alarmReport)
        {
            long id = getNextAlarmReportId();

            try
            {
                appSettings.Add(id + KEY_DUMMY_REPORT_CUSTOMERNAME, alarmReport.CustomerName);
                appSettings.Add(id + KEY_DUMMY_REPORT_CUSTOMERNUMBER, alarmReport.CustomerNumber);
                appSettings.Add(id + KEY_DUMMY_REPORT_STREET_AND_HOUSENUMBER, alarmReport.StreetAndHouseNumber);
                appSettings.Add(id + KEY_DUMMY_REPORT_ZIPCODE, alarmReport.ZipCode);
                appSettings.Add(id + KEY_DUMMY_REPORT_CITY, alarmReport.City);
                appSettings.Add(id + KEY_DUMMY_REPORT_PHONENUMBER, alarmReport.Phonenumber);
                appSettings.Add(id + KEY_DUMMY_REPORT_DATE, alarmReport.Date);
                appSettings.Add(id + KEY_DUMMY_REPORT_TIME, alarmReport.Time);
                appSettings.Add(id + KEY_DUMMY_REPORT_ZONE, alarmReport.Zone);
                appSettings.Add(id + KEY_DUMMY_REPORT_BURGLARYVANDALISM, alarmReport.BurglaryVandalism);
                appSettings.Add(id + KEY_DUMMY_REPORT_WINDOWDOORCLOSED, alarmReport.WindowDoorClosed);
                appSettings.Add(id + KEY_DUMMY_REPORT_APPREHENDEDPERSON, alarmReport.ApprehendedPerson);
                appSettings.Add(id + KEY_DUMMY_REPORT_STAFFERROR, alarmReport.StaffError);
                appSettings.Add(id + KEY_DUMMY_REPORT_NOTHINGTOREPORT, alarmReport.NothingToReport);
                appSettings.Add(id + KEY_DUMMY_REPORT_TECHNICALERROR, alarmReport.TechnicalError);
                appSettings.Add(id + KEY_DUMMY_REPORT_UNKNOWNREASON, alarmReport.UnknownReason);
                appSettings.Add(id + KEY_DUMMY_REPORT_OTHER, alarmReport.Other);
                appSettings.Add(id + KEY_DUMMY_REPORT_REASONCODEID, alarmReport.ReasonCodeId);
                appSettings.Add(id + KEY_DUMMY_REPORT_CANCELDURINGEMERGENCY, alarmReport.CancelDuringEmergency);
                appSettings.Add(id + KEY_DUMMY_REPORT_CANCELDURINGEMERGENCYTIME, alarmReport.CancelDuringEmergencyTime);
                appSettings.Add(id + KEY_DUMMY_REPORT_COVERMADE, alarmReport.CoverMade);
                appSettings.Add(id + KEY_DUMMY_REPORT_COVERMADEBY, alarmReport.CoverMadeBy);
                appSettings.Add(id + KEY_DUMMY_REPORT_REMARK, alarmReport.Remark);
                appSettings.Add(id + KEY_DUMMY_REPORT_NAME, alarmReport.Name);
                appSettings.Add(id + KEY_DUMMY_REPORT_INSTALLER, alarmReport.Installer);
                appSettings.Add(id + KEY_DUMMY_REPORT_CONTROLCENTER, alarmReport.ControlCenter);
                appSettings.Add(id + KEY_DUMMY_REPORT_GUARDRADIOEDDATE, alarmReport.GuardRadioedDate);
                appSettings.Add(id + KEY_DUMMY_REPORT_GUARDRADIOEDFROM, alarmReport.GuardRadioedFrom);
                appSettings.Add(id + KEY_DUMMY_REPORT_GUARDRADIOEDTO, alarmReport.GuardRadioedTo);
                appSettings.Add(id + KEY_DUMMY_REPORT_ARRIVEDAT, alarmReport.ArrivedAt);
                appSettings.Add(id + KEY_DUMMY_REPORT_DONE, alarmReport.Done);
                appSettings.Add(id + KEY_DUMMY_REPORT_EMPLOYEE_ID, alarmReport.EmployeeId);
                appSettings.Save();
                dummyDBStatus = true;
            }
            catch
            {
                dummyDBStatus = false;
            }
            return(dummyDBStatus);
        }
Ejemplo n.º 13
0
        private void UpdateAlarmReport()
        {
            AlarmReport frm = null;

            foreach (Control ctr in tabAlarmReport.Controls)
            {
                if (ctr.Name == nameof(AlarmReport))
                {
                    frm = ctr as AlarmReport;
                    break;
                }
            }
            if (frm != null)
            {
                frm.GetData();
            }
        }
Ejemplo n.º 14
0
        public async Task <List <AlarmReport> > getAlarmReports()
        {
            List <AlarmReport> alarmReports = new List <AlarmReport>();
            int  length = currentNumberOfAlarmReports();
            long id     = 0;

            if (length > 0)
            {
                for (int i = 0; i < length; i++)
                {
                    id = i + 1;
                    AlarmReport alarmReport = await getAlarmReport(id);

                    alarmReports.Add(alarmReport);
                }
            }

            return(alarmReports);
        }
Ejemplo n.º 15
0
        private void ReportSink(AlarmReport report)
        {
            List <IReportSinker> faultSinkers = new List <IReportSinker>();

            foreach (IReportSinker reportSinker in _reportSinkers)
            {
                try
                {
                    reportSinker.AlarmSink(report);
                }

                catch (Exception ex)
                {
                    faultSinkers.Add(reportSinker);
                    ExceptionPolicy.HandleException(ex);
                }
            }
            if (faultSinkers.Count > 0)
            {
                RemoveSinkers(faultSinkers);
            }
        }
Ejemplo n.º 16
0
        public async Task <Boolean> sendAlarmReport(AlarmReport alarmReport)
        {
            try
            {
                using (HttpClient client = new HttpClient())
                {
                    Debug.WriteLine("createAlarmRapport");
                    String json             = JsonConvert.SerializeObject(alarmReport);
                    var    resultWebservice = await client.PostAsync("http://gryphon.dk/GryphonSecurityRestFullWebservice/webServices/createAlarmReport.php/", new StringContent(json, Encoding.UTF8, "application/json"));

                    //var resultWebservice = await client.PostAsync("http://kragsberger.dk/GryphonSecurityRestFullWebservice/webServices/createAlarmReport.php/", new StringContent(json, Encoding.UTF8, "application/json"));
                    //var resultWebservice = await client.GetAsync("http://kragsberger.dk/rest/" + name);
                    Debug.WriteLine("her createalarm: " + resultWebservice);
                    resultWebservice.EnsureSuccessStatusCode();
                    Boolean result = Convert.ToBoolean(JsonConvert.DeserializeObject <String>(await resultWebservice.Content.ReadAsStringAsync()));
                    return(result);
                }
            }
            catch (JsonReaderException ex)
            {
                Debug.WriteLine("catch in createAlarmReport");
                return(false);
            }
        }
Ejemplo n.º 17
0
 private void park_AlarmReporting(object sender, AlarmReport report)
 {
     ReportEnqueue(report);
 }
Ejemplo n.º 18
0
        protected override void OnCardWaiting(OfflineCardReadReport report)
        {
            //EntranceBase entrance = GetEntrance(report.EntranceID);
            //if (entrance == null) return;
            //CardInfo card = (new CardBll(AppSettings.CurrentSetting.ParkConnect)).GetCardDetail(report.CardID);
            //if (card != null)
            //{
            //    //离线模式下,如果硬件记录的时间大于系统记录的时间,表明卡片在软件退出时进出过停车场,所以此时以硬件时间为准
            //    if (report.LastDateTime != null && report.LastDateTime.Value.Ticks > card.LastDateTime.Ticks) card.LastDateTime = report.LastDateTime.Value;
            //    ProcessCard(entrance, report.Reader, card, report.EventDateTime);
            //}
            //else
            //{
            //    DenyCard(report.CardID, Ralid.Park.BusinessModel.Enum.EventInvalidType.INV_UnRegister, entrance,null);
            //}

            EntranceBase entrance = GetEntrance(report.EntranceID);

            if (entrance == null)
            {
                return;
            }
            //收到卡片等待事件时,如果之前没有收到此卡的事件等待事件,则生成一个卡片事件
            if (entrance.ProcessingEvent == null || entrance.ProcessingEvent.CardID != report.CardID)
            {
                CardInfo card = (new CardBll(AppSettings.CurrentSetting.ParkConnect)).GetCardDetail(report.CardID, AppSettings.CurrentSetting.CurrentStandbyConnect);
                if (card != null)
                {
                    //卡片信息以硬件上传信息为准
                    //不是远距离读卡的,如果有上一次读卡时间,以硬件上传的上一次读卡时间为准
                    if (report.Reader != EntranceReader.Reader2 && report.LastDateTime != null)
                    {
                        card.LastDateTime = report.LastDateTime.Value;
                    }

                    //modify by Jan 2014-08-19 当启用硬件识别时,以硬件上传的为准
                    if (UserSetting.Current.EnableCarPlateRecognize &&
                        UserSetting.Current.HardWareCarPlateRecognize)
                    {
                        card.RegCarPlate  = report.CarPlate;
                        card.LastCarPlate = report.LastCarPlate;
                    }

                    if (entrance.IsExitDevice)
                    {
                        CreateCardExitEvent(card, entrance, report.EventDateTime);
                    }
                    else
                    {
                        CreateCardEnterEvent(card, entrance, report.EventDateTime);
                    }
                }
                else
                {
                    string description = string.Format("未找到脱机卡片{0}", report.CardID);
                    //提示找不到脱机卡片
                    AlarmReport alarm = new AlarmReport(
                        this.Park.ParkID, entrance.EntranceID, DateTime.Now,
                        entrance.EntranceName, AlarmType.InvalidCard,
                        description, string.Empty);
                    RaiseAlarmReporting(alarm);
                }
            }

            if (entrance.ProcessingEvent != null && entrance.ProcessingEvent.CardID == report.CardID)
            {
                //如果正在处理的事件的读头与上传事件的读头不一致,将正在处理的事件的读头设置为上传事件的读头
                if (entrance.ProcessingEvent.Reader != report.Reader)
                {
                    entrance.ProcessingEvent.Reader = report.Reader;
                }
                entrance.ProcessingEvent.ComparisonResult = report.CarPlateComparisonResult;
                entrance.ProcessingEvent.EventStatus      = report.EventStatus;

                ////当事件车牌对比结果为车牌对比失败,而软件又启用了软件车牌识别的,使用软件识别重新进行车牌识别对比
                ////这是因为当控制板没有安装硬件车牌识别一体机时,默认返回对比结果为对比失败
                //if (((report.EventStatus == CardEventStatus.CarPlateFail)||(report.CarPlateComparisonResult== BusinessModel.Enum.CarPlateComparisonResult.Noncontrastive))
                //    && UserSetting.Current.EnableCarPlateRecognize
                //    && UserSetting.Current.SoftWareCarPlateRecognize)
                //modify by Jan 2014-08-19 当启用车牌识别时
                if (UserSetting.Current.EnableCarPlateRecognize)
                {
                    //当启用软件识别时,忽略控制板上传的识别结果,使用软件识别重新进行车牌识别对比
                    if (UserSetting.Current.SoftWareCarPlateRecognize)
                    {
                        //add by Jan 2014-09-01 如果当前状态为车牌对比失败,对比前需设置为等待处理状态和对比成功
                        if (entrance.ProcessingEvent.EventStatus == CardEventStatus.CarPlateFail)
                        {
                            entrance.ProcessingEvent.ComparisonResult = BusinessModel.Enum.CarPlateComparisonResult.Success;
                            entrance.ProcessingEvent.EventStatus      = CardEventStatus.Pending;
                        }

                        CarPlateHandler(entrance, entrance.ProcessingEvent, entrance.ProcessingCard);
                    }
                    else
                    {
                        //当启用硬件识别时,以控制板上传的结果为准
                        entrance.ProcessingEvent.CarPlate     = report.CarPlate;
                        entrance.ProcessingEvent.LastCarPlate = report.LastCarPlate;
                    }
                }
                if (entrance.ProcessingEvent.CardPaymentInfo != null && !report.NeedPay)
                {
                    //不需要收费时,将费用设为0,因为收到卡片车牌对比确认事件或事件有效时,控制板肯定会先判断是否已收费的,所以收到该事件时,费用应为0
                    entrance.ProcessingEvent.CardPaymentInfo.Accounts = 0;
                }

                if (report.EventStatus == CardEventStatus.CarPlateFail)
                {
                    //如果收到的刷卡事件状态为对比失败,需要确认或放行

                    if (entrance.ProcessingEvent.EventStatus == CardEventStatus.CarPlateFail)
                    {
                        //上位机确认
                        RaiseCardEventReporting(entrance.ProcessingEvent);
                    }
                    else
                    {
                        //如果处理的事件状态为非对比失败,而收到的刷卡事件状态为对比失败,说明了系统启用了软件识别,并且对比成功了,可放行卡片
                        entrance.CardValid();
                    }
                }
                //这里不上传到上位机,是因为当需要收费时,上位机的收费窗口也可以进行收费处理,但收费窗口是没有卡片的,所以是写不了卡的
                //else
                //{
                //    RaiseCardEventReporting(entrance.ProcessingEvent);
                //}
            }
        }
Ejemplo n.º 19
0
        public void ProcessReport(ReportBase r)
        {
            ParkInfo park = ParkBuffer.Current.GetPark(r.ParkID);

            if (park != null && park.RootParkID > 0)
            {
                park = ParkBuffer.Current.GetPark(park.RootParkID);
            }
            if (park == null)
            {
                return;
            }
            if (park.HostWorkstation == WorkStationInfo.CurrentStation.StationID) //如果本机是停车场的通讯主机,则它要负责抓拍图片
            {
                EntranceInfo entrance = ParkBuffer.Current.GetEntrance(r.EntranceID);
                if (entrance != null)
                {
                    foreach (VideoSourceInfo video in entrance.VideoSources)
                    {
                        if (r is CarSenseReport)
                        {
                            CarSenseReport cp = r as CarSenseReport;
                            if (cp.InOrOutFlag == 1)  //车到时打开视频
                            {
                                VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                if (vp != null)
                                {
                                    if (UserSetting.Current.SnapshotWhenCarArrive)  //车压地感时抓拍图片
                                    {
                                        string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                                   string.Format("{0}_{1}_{2}.jpg", "CarArrive", Guid.NewGuid().ToString(), video.VideoID));
                                        if (SnapShotTo(video, ref path, false, false))
                                        {
                                            SnapShot      shot    = new SnapShot(cp.EventDateTime, video.VideoID, string.Empty, path);
                                            string        master  = AppSettings.CurrentSetting.ImageDBConnStr;
                                            string        standby = AppSettings.CurrentSetting.CurrentStandbyConnect;
                                            CommandResult result  = (new SnapShotBll(master)).Insert(shot);
                                            if (result.Result != ResultCode.Successful && !string.IsNullOrEmpty(standby))
                                            {
                                                (new SnapShotBll(standby)).Insert(shot);
                                            }

                                            //(new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                        else
                                        {
                                            if (AppSettings.CurrentSetting.Debug)
                                            {
                                                string logmsg = string.Format("【{0}】车压地感时抓拍图片失败 ", vp.VideoSource.VideoName);
                                                Ralid.GeneralLibrary.LOG.FileLog.Log("FrmSnapShoter", logmsg);
                                            }
                                        }
                                    }
                                    else
                                    {
                                        vp.OpenForSnapshot(true);
                                    }
                                }
                            }
                            else
                            {
                                if (AppSettings.CurrentSetting.Optimized)  //启用视频优化车走时关闭视频
                                {
                                    VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                    if (vp != null)
                                    {
                                        vp.Close();
                                    }
                                }
                            }
                        }
                        else if (r is CardEventReport)
                        {
                            CardEventReport cardEvent = r as CardEventReport;
                            if (cardEvent.EventStatus == CardEventStatus.Valid)
                            {
                                VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                if (vp != null) //如果视频已经抓拍了一张,则此次用同一张图
                                {
                                    object tag = null;
                                    lock (_TagLocker)  //加锁是防止多个线程同时写
                                    {
                                        tag    = vp.Tag;
                                        vp.Tag = null;
                                    }
                                    if (tag != null)
                                    {
                                        string path = tag.ToString();
                                        if (path != "fail")
                                        {
                                            SnapShot      shot    = new SnapShot(cardEvent.EventDateTime, video.VideoID, cardEvent.CardID, path);
                                            string        master  = AppSettings.CurrentSetting.ImageDBConnStr;
                                            string        standby = AppSettings.CurrentSetting.CurrentStandbyConnect;
                                            CommandResult result  = (new SnapShotBll(master)).Insert(shot);
                                            if (result.Result != ResultCode.Successful && !string.IsNullOrEmpty(standby))
                                            {
                                                (new SnapShotBll(standby)).Insert(shot);
                                            }

                                            //(new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                        else
                                        {
                                            if (AppSettings.CurrentSetting.Debug)
                                            {
                                                string logmsg = string.Format("【{0}】刷卡事件之前的视频抓拍失败,无图片 ", vp.VideoSource.VideoName);
                                                Ralid.GeneralLibrary.LOG.FileLog.Log("FrmSnapShoter", logmsg);
                                            }
                                        }
                                    }
                                    else
                                    {
                                        string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                                   string.Format("{0}_{1}_{2}.jpg", "CardEvent", Guid.NewGuid().ToString(), video.VideoID));
                                        if (SnapShotTo(video, ref path, false, false))
                                        {
                                            SnapShot      shot    = new SnapShot(cardEvent.EventDateTime, video.VideoID, cardEvent.CardID, path);
                                            string        master  = AppSettings.CurrentSetting.ImageDBConnStr;
                                            string        standby = AppSettings.CurrentSetting.CurrentStandbyConnect;
                                            CommandResult result  = (new SnapShotBll(master)).Insert(shot);
                                            if (result.Result != ResultCode.Successful && !string.IsNullOrEmpty(standby))
                                            {
                                                (new SnapShotBll(standby)).Insert(shot);
                                            }

                                            //(new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                        else
                                        {
                                            if (AppSettings.CurrentSetting.Debug)
                                            {
                                                string logmsg = string.Format("【{0}】刷卡事件抓拍图片失败 ", vp.VideoSource.VideoName);
                                                Ralid.GeneralLibrary.LOG.FileLog.Log("FrmSnapShoter", logmsg);
                                            }
                                        }
                                    }

                                    vp.ClearSnapShot();//清空抓拍图片信息
                                }
                            }
                        }
                        else if (r is AlarmReport)
                        {
                            AlarmReport ar = r as AlarmReport;
                            if (ar.AlarmType == Ralid.Park.BusinessModel.Enum.AlarmType.Opendoor ||
                                ar.AlarmType == Ralid.Park.BusinessModel.Enum.AlarmType.GateAlarm)
                            {
                                string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                           string.Format("{0}_{1}_{2}.jpg", "OpenDoor", Guid.NewGuid().ToString(), video.VideoID));
                                if (SnapShotTo(video, ref path, false, true))
                                {
                                    //这里清除抓拍图片信息,是因为使用信路通或大华进行抓拍时,会保存抓拍图片和识别到的车牌,如果不清除,有可能会用到下一辆车上
                                    ClearSnapShot(video);
                                    SnapShot      shot    = new SnapShot(ar.EventDateTime, video.VideoID, string.Empty, path);
                                    string        master  = AppSettings.CurrentSetting.ImageDBConnStr;
                                    string        standby = AppSettings.CurrentSetting.CurrentStandbyConnect;
                                    CommandResult result  = (new SnapShotBll(master)).Insert(shot);
                                    if (result.Result != ResultCode.Successful && !string.IsNullOrEmpty(standby))
                                    {
                                        (new SnapShotBll(standby)).Insert(shot);
                                    }

                                    //(new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                }
                                else
                                {
                                    if (AppSettings.CurrentSetting.Debug)
                                    {
                                        string logmsg = string.Format("【{0}】报警抓拍图片失败 ", video.VideoName);
                                        Ralid.GeneralLibrary.LOG.FileLog.Log("FrmSnapShoter", logmsg);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 20
0
 public Boolean createAlarmReport(AlarmReport alarmReport)
 {
     return(dummyDB.createAlarmReport(alarmReport));
 }
Ejemplo n.º 21
0
 public Boolean createTempAlarmReport(AlarmReport alarmReport)
 {
     return(dBFacade.createTempLocalStorageAlarmReport(alarmReport));
 }
Ejemplo n.º 22
0
 public Boolean createAlarmReport(AlarmReport alarmReport)
 {
     return(dBFacade.createAlarmReport(alarmReport));
 }
Ejemplo n.º 23
0
 public Boolean createAlarmReport(AlarmReport alarmReport)
 {
     return(true);
 }
Ejemplo n.º 24
0
        public void ProcessReport(ReportBase r)
        {
            ParkInfo park = ParkBuffer.Current.GetPark(r.ParkID);

            if (park != null && park.RootParkID > 0)
            {
                park = ParkBuffer.Current.GetPark(park.RootParkID);
            }
            if (park == null)
            {
                return;
            }
            if (park.HostWorkstation == WorkStationInfo.CurrentStation.StationID) //如果本机是停车场的通讯主机,则它要负责抓拍图片
            {
                EntranceInfo entrance = ParkBuffer.Current.GetEntrance(r.EntranceID);
                if (entrance != null)
                {
                    foreach (VideoSourceInfo video in entrance.VideoSources)
                    {
                        if (r is CarSenseReport)
                        {
                            CarSenseReport cp = r as CarSenseReport;
                            if (cp.InOrOutFlag == 1)  //车到时打开视频
                            {
                                VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                if (vp != null)
                                {
                                    if (UserSetting.Current.SnapshotWhenCarArrive)  //车压地感时抓拍图片
                                    {
                                        string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                                   string.Format("{0}_{1}_{2}.jpg", "CarArrive", Guid.NewGuid().ToString(), video.VideoID));
                                        vp.Play(false);
                                        if (vp.Status == VideoStatus.Playing && vp.SnapShotTo(path))
                                        {
                                            SnapShot shot = new SnapShot(cp.EventDateTime, video.VideoID, string.Empty, path);
                                            (new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                    }
                                    else
                                    {
                                        vp.Play(true);
                                    }
                                }
                            }
                            else
                            {
                                if (AppSettings.CurrentSetting.Optimized)  //启用视频优化车走时关闭视频
                                {
                                    VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                    if (vp != null)
                                    {
                                        vp.Close();
                                    }
                                }
                            }
                        }
                        else if (r is CardEventReport)
                        {
                            CardEventReport cardEvent = r as CardEventReport;
                            if (cardEvent.EventStatus == CardEventStatus.Valid)
                            {
                                VideoPanel vp = videoGrid.VideoPanelCollection.SingleOrDefault(v => (v.VideoSource == video));
                                if (vp != null) //如果视频已经抓拍了一张,则此次用同一张图
                                {
                                    object tag = null;
                                    lock (_TagLocker)  //加锁是防止多个线程同时写
                                    {
                                        tag    = vp.Tag;
                                        vp.Tag = null;
                                    }
                                    if (tag != null)
                                    {
                                        string path = tag.ToString();
                                        if (path != "fail")
                                        {
                                            SnapShot shot = new SnapShot(cardEvent.EventDateTime, video.VideoID, cardEvent.CardID, path);
                                            (new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                    }
                                    else
                                    {
                                        string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                                   string.Format("{0}_{1}_{2}.jpg", "CardEvent", Guid.NewGuid().ToString(), video.VideoID));
                                        if (SnapShotTo(video, path, false))
                                        {
                                            SnapShot shot = new SnapShot(cardEvent.EventDateTime, video.VideoID, cardEvent.CardID, path);
                                            (new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                        }
                                    }
                                }
                            }
                        }
                        else if (r is AlarmReport)
                        {
                            AlarmReport ar = r as AlarmReport;
                            if (ar.AlarmType == Ralid.Park.BusinessModel.Enum.AlarmType.Opendoor)
                            {
                                string path = Path.Combine(TempFolderManager.GetCurrentFolder(),
                                                           string.Format("{0}_{1}_{2}.jpg", "OpenDoor", Guid.NewGuid().ToString(), video.VideoID));
                                if (SnapShotTo(video, path, false))
                                {
                                    SnapShot shot = new SnapShot(ar.EventDateTime, video.VideoID, string.Empty, path);
                                    (new SnapShotBll(AppSettings.CurrentSetting.ParkConnect)).Insert(shot);
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 25
0
 public Boolean createLocalStorageAlarmReport(AlarmReport alarmReport)
 {
     return(localStorage.saveAlarmReport(alarmReport));
 }
Ejemplo n.º 26
0
        public async Task <Boolean> createAlarmReport()
        {
            Boolean check = alarmReportMustHave();

            if (check)
            {
                String customerNameTB         = textBoxCustomerName.Text;
                long   customerNumberTB       = Convert.ToInt64(textBoxCustomerNumber.Text);
                String streetAndHouseNumberTB = textBoxStreetAndHouseNumber.Text;
                int    zipCodeTB     = Convert.ToInt32(textBoxZipCode.Text);
                String cityTB        = textBoxCity.Text;
                long   phonenumberTB = 0;
                if (!textBoxPhonenumber.Text.Equals(""))
                {
                    phonenumberTB = Convert.ToInt64(textBoxPhonenumber.Text);
                }
                DateTime date   = (DateTime)textBoxDate.Value;
                String   dateTB = date.ToString("yyyy-MM-dd");
                DateTime time   = (DateTime)textBoxTime.Value;
                String   timeTB = time.ToString("H:mm:ss");
                String   zoneTB = textBoxZone.Text;
                Boolean  burglaryVandalismCB         = (Boolean)checkBoxBurglaryVandalism.IsChecked;
                Boolean  windowDoorClosedCB          = (Boolean)checkBoxWindowDoorClosed.IsChecked;
                Boolean  apprehendedPersonCB         = (Boolean)checkBoxApprehendedPerson.IsChecked;
                Boolean  staffErrorCB                = (Boolean)checkBoxStaffError.IsChecked;
                Boolean  nothingToReportCB           = (Boolean)checkBoxNothingToReport.IsChecked;
                Boolean  technicalErrorCB            = (Boolean)checkBoxTechnicalError.IsChecked;
                Boolean  unknownReasonCB             = (Boolean)checkBoxUnknownReason.IsChecked;
                Boolean  otherCB                     = (Boolean)checkBoxOther.IsChecked;
                String   reasonCodeId                = "000";
                Boolean  cancelDuringEmergencyCB     = (Boolean)checkBoxCancelsDuringEmergency.IsChecked;
                String   cancelDuringEmergencyTimeTP = null;
                if (!timeBoxCanceledDuringEmergencyTime.Value.Equals(null))
                {
                    DateTime cancelDuringEmergencyTime = (DateTime)timeBoxCanceledDuringEmergencyTime.Value;
                    cancelDuringEmergencyTimeTP = cancelDuringEmergencyTime.ToString("H:mm:ss");
                }
                Boolean     coverMadeCB        = (Boolean)checkBoxCoverMade.IsChecked;
                String      coverMadeByTB      = textBoxCoverMadeBy.Text;
                String      remarkTB           = textBoxRemark.Text;
                String      nameTB             = textBoxName.Text;
                String      installerTB        = textBoxInstaller.Text;
                String      controlCenterTB    = textBoxControlCenter.Text;
                DateTime    guardRadioedDate   = (DateTime)textBoxGuardRadioedDate.Value;
                String      guardRadioedDateTB = guardRadioedDate.ToString("yyyy-MM-dd");
                DateTime    guardRadioedFrom   = (DateTime)textBoxGuardRadioedFrom.Value;
                String      guardRadioedFromTB = guardRadioedFrom.ToString("H:mm:ss");
                DateTime    guardRadioedTo     = (DateTime)textBoxGuardRadioedTo.Value;
                String      guardRadioedToTB   = guardRadioedTo.ToString("H:mm:ss");
                DateTime    arrivedAt          = (DateTime)textBoxArrivedAt.Value;
                String      arrivedAtTB        = arrivedAt.ToString("H:mm:ss");
                DateTime    done        = (DateTime)textBoxDone.Value;
                String      doneTB      = done.ToString("H:mm:ss");
                AlarmReport alarmReport = new AlarmReport(customerNameTB, customerNumberTB,
                                                          streetAndHouseNumberTB, zipCodeTB, cityTB, phonenumberTB, dateTB, timeTB,
                                                          zoneTB, burglaryVandalismCB, windowDoorClosedCB, apprehendedPersonCB,
                                                          staffErrorCB, nothingToReportCB, technicalErrorCB, unknownReasonCB, otherCB,
                                                          reasonCodeId, cancelDuringEmergencyCB, cancelDuringEmergencyTimeTP, coverMadeCB,
                                                          coverMadeByTB, remarkTB, nameTB, installerTB, controlCenterTB, guardRadioedDateTB,
                                                          guardRadioedFromTB, guardRadioedToTB, arrivedAtTB, doneTB, controller.getUser().Id);
                await sendAlarmReport(alarmReport);
            }
            else
            {
                MessageBox.Show(AppResources.ReportFillSpaces);
                return(check);
            }
            return(check);
        }
Ejemplo n.º 27
0
 private void CarplateRecHandler(CarplateRecReport report)
 {
     try
     {
         string carPlate = string.Empty;
         for (int i = 0; i < 10; i++)
         {
             PlateRecognitionResult ret = CarPalteRecognize(this.Park.RootParkID, this.EntranceID);
             if (ret != null && !string.IsNullOrEmpty(ret.CarPlate) && ret.CarPlate != carPlate)
             {
                 carPlate = ret.CarPlate;
                 FileLog.Log(this.EntranceName, "识别到车牌号 " + ret.CarPlate);
                 //先寻找完全匹配的车牌号,如果启用了允许车牌号有误差,再用较慢的方法寻找相匹配的车牌号
                 //这样的话只有车牌号不能完全匹配时才影响会多做一步费时的操作。
                 List <CardInfo> cards = GetCardHasCarplate(ret.CarPlate, 0);
                 if ((cards == null || cards.Count == 0) && UserSetting.Current.MaxCarPlateErrorChar > 0)
                 {
                     cards = GetCardHasCarplate(ret.CarPlate, UserSetting.Current.MaxCarPlateErrorChar);
                 }
                 if (cards != null && cards.Count == 1)
                 {
                     CardReadReport re = new CardReadReport();
                     re.CardID        = cards[0].CardID;
                     re.ParkingData   = null;
                     re.ParkID        = this.Park.ParkID;
                     re.EntranceID    = this.EntranceID;
                     re.EventDateTime = DateTime.Now;
                     re.CannotIgnored = true;
                     re.Reader        = Ralid.Park.BusinessModel.Enum.EntranceReader.DeskTopReader;
                     re.LastCarPlate  = string.Empty;
                     this.Carplate    = ret.CarPlate;
                     this.AddToReportPool(re);
                     break; //退出循环
                 }
                 else if (cards == null || cards.Count == 0)
                 {
                     AlarmReport alarm = new AlarmReport(
                         this.Park.ParkID, this.EntranceID, DateTime.Now,
                         this.EntranceName, AlarmType.CarPlateFail,
                         "未找到匹配的车牌,识别到的车牌号为:" + ret.CarPlate, string.Empty);
                     if (this.AlarmReporting != null)
                     {
                         this.AlarmReporting(this, alarm);
                     }
                 }
                 else if (cards.Count > 1)
                 {
                     if (AppSettings.CurrentSetting.Debug)
                     {
                         FileLog.Log(this.EntranceName, "多个人员匹配到车牌:" + ret.CarPlate + " 需要手动输入车牌号放行");
                     }
                     AlarmReport alarm = new AlarmReport(
                         this.Park.ParkID, this.EntranceID, DateTime.Now,
                         this.EntranceName, AlarmType.CarPlateFail,
                         "多个人员匹配到车牌:" + ret.CarPlate + " 需要手动输入车牌号放行", string.Empty);
                     if (this.AlarmReporting != null)
                     {
                         this.AlarmReporting(this, alarm);
                     }
                 }
             }
             Thread.Sleep(200);
         } //end for
     }
     catch (ThreadAbortException ex)
     {
     }
     catch (Exception ex)
     {
         Ralid.GeneralLibrary.ExceptionHandling.ExceptionPolicy.HandleException(ex);
     }
 }
Ejemplo n.º 28
0
 public async Task <Boolean> createAlarmReport(AlarmReport alarmReport)
 {
     return(await connection.sendAlarmReport(alarmReport));
 }
Ejemplo n.º 29
0
 public void fillAlarmReport(AlarmReport alarmReport)
 {
     textBoxCustomerName.Text = alarmReport.CustomerName;
     if (alarmReport.CustomerNumber == 0)
     {
         textBoxCustomerNumber.Text = "";
     }
     else
     {
         textBoxCustomerNumber.Text = "" + alarmReport.CustomerNumber;
     }
     textBoxStreetAndHouseNumber.Text = alarmReport.StreetAndHouseNumber;
     if (alarmReport.ZipCode == 0)
     {
         textBoxZipCode.Text = "";
     }
     else
     {
         textBoxZipCode.Text = "" + alarmReport.ZipCode;
     }
     textBoxCity.Text = alarmReport.City;
     if (alarmReport.Phonenumber == 0)
     {
         textBoxPhonenumber.Text = "";
     }
     else
     {
         textBoxPhonenumber.Text = "" + alarmReport.Phonenumber;
     }
     textBoxDate.Value = Convert.ToDateTime(alarmReport.Date);
     textBoxTime.Value = Convert.ToDateTime(alarmReport.Time);
     textBoxZone.Text  = alarmReport.Zone + "";
     if (alarmReport.BurglaryVandalism)
     {
         checkBoxBurglaryVandalism.IsChecked = true;
     }
     if (alarmReport.WindowDoorClosed)
     {
         checkBoxWindowDoorClosed.IsChecked = true;
     }
     if (alarmReport.ApprehendedPerson)
     {
         checkBoxApprehendedPerson.IsChecked = true;
     }
     if (alarmReport.StaffError)
     {
         checkBoxStaffError.IsChecked = true;
     }
     if (alarmReport.NothingToReport)
     {
         checkBoxNothingToReport.IsChecked = true;
     }
     if (alarmReport.TechnicalError)
     {
         checkBoxTechnicalError.IsChecked = true;
     }
     if (alarmReport.UnknownReason)
     {
         checkBoxUnknownReason.IsChecked = true;
     }
     if (alarmReport.Other)
     {
         checkBoxOther.IsChecked = true;
     }
     if (alarmReport.CancelDuringEmergency)
     {
         checkBoxCancelsDuringEmergency.IsChecked = true;
         timeBoxCanceledDuringEmergencyTime.Value = Convert.ToDateTime(alarmReport.CancelDuringEmergencyTime);
     }
     else
     {
         timeBoxCanceledDuringEmergencyTime.Value = null;
     }
     if (alarmReport.CoverMade)
     {
         checkBoxCoverMade.IsChecked = true;
         textBoxCoverMadeBy.Text     = alarmReport.CoverMadeBy;
     }
     else
     {
         textBoxCoverMadeBy.Text = alarmReport.CoverMadeBy;
     }
     textBoxRemark.Text            = alarmReport.Remark;
     textBoxName.Text              = alarmReport.Name;
     textBoxInstaller.Text         = alarmReport.Installer;
     textBoxControlCenter.Text     = alarmReport.ControlCenter;
     textBoxGuardRadioedDate.Value = Convert.ToDateTime(alarmReport.GuardRadioedDate);
     textBoxGuardRadioedFrom.Value = Convert.ToDateTime(alarmReport.GuardRadioedFrom);
     textBoxGuardRadioedTo.Value   = Convert.ToDateTime(alarmReport.GuardRadioedTo);
     textBoxArrivedAt.Value        = Convert.ToDateTime(alarmReport.ArrivedAt);
     textBoxDone.Value             = Convert.ToDateTime(alarmReport.Done);
 }