/* GetAllHelperServices*/ public async Task <HelperServiceModel> GetHelperServices(int UserId) { HelperServiceModel helperServices = new HelperServiceModel(); try { if (CrossConnectivity.Current.IsConnected) { HttpClient httpClient = new HttpClient(); var uri = new Uri(string.Concat(Constants.baseUrl, "api/GetAllHelperServices?id=" + UserId)); //var response = await httpClient.GetAsync(uri); var requestTask = httpClient.GetAsync(uri); var response = Task.Run(() => requestTask); if (response.Result.IsSuccessStatusCode) { string result = await response.Result.Content.ReadAsStringAsync(); helperServices = JsonConvert.DeserializeObject <HelperServiceModel>(result); } else { } } } catch (Exception e) { Console.Write(e.StackTrace); } return(helperServices); }
// GET: Home/Details/5 public ActionResult Details(Guid?id) { ViewBag.Message = ""; FileLogger fileLogger = new FileLogger(); if (id == null) { //return new HttpStatusCodeResult(HttpStatusCode.BadRequest); ViewBag.Message = "Bad request, missing identifier."; fileLogger.ErrorLog("Home: Bad Request"); return(View()); } HelperServiceModel helperServiceModel = oHSR.Get(id.Value); if (helperServiceModel == null) { //return HttpNotFound(); ViewBag.Message = "Bad identifier, helper not found."; fileLogger.ErrorLog("Home: Bad identifier"); return(View()); } OpenClosedStatus(helperServiceModel); // add hours fileLogger.StateLog("Home: Detail"); return(View(helperServiceModel)); }
public void SetHelpCenterCurrentStatus(HelperServiceModel helpcenter, List <int> openingHours) { if (openingHours != null) { TimeSpan start = new TimeSpan(openingHours[0], 0, 0); TimeSpan end = new TimeSpan(openingHours[1], 0, 0); TimeSpan now = DateTime.Now.TimeOfDay; var dateTimeEnd = new DateTime(end.Ticks); // Date part is 01-01-0001 var formattedEndTime = dateTimeEnd.ToString("hh:mm"); var dateTimeStart = new DateTime(start.Ticks); // Date part is 01-01-0001 var formattedStartTime = dateTimeStart.ToString("hh:mm"); if ((now > start) && (now < end)) { //match found helpcenter.CurrentStatus = "open"; helpcenter.CurrentStatusInfo = "OPEN - OPEN TODAY UNTIL " + formattedEndTime.ToString() + " PM"; } else if ((now < start) && (now < end)) { helpcenter.CurrentStatus = "close"; helpcenter.CurrentStatusInfo = "CLOSED - OPEN TODAY AT " + formattedStartTime.ToString() + " AM"; } else { helpcenter.CurrentStatus = "close"; helpcenter.CurrentStatusInfo = FindNextWorkingDayDisplayText(helpcenter); } } else { helpcenter.CurrentStatus = "Not available"; helpcenter.CurrentStatusInfo = "We're sorry, we are temporarily unable to display"; } }
public static List <int> TodaysHours(HelperServiceModel service) { DateTime now = DateTime.Now; switch (now.DayOfWeek) { case DayOfWeek.Monday: return(service.MondayOpeningHours); case DayOfWeek.Tuesday: return(service.TuesdayOpeningHours); case DayOfWeek.Wednesday: return(service.WednesdayOpeningHours); case DayOfWeek.Thursday: return(service.ThursdayOpeningHours); case DayOfWeek.Friday: return(service.FridayOpeningHours); case DayOfWeek.Saturday: return(service.SaturdayOpeningHours); case DayOfWeek.Sunday: default: return(service.SundayOpeningHours); } }
//TODO: Unit tests public static string OpeningHours(HelperServiceModel service) { if (service == null) { return(string.Empty); } int currentHour = DateTime.Now.Hour; List <int> openingHours = TodaysHours(service); if (openingHours == null) { return(string.Empty); } if (!IsOpen(openingHours, currentHour)) { if (openingHours[0] > currentHour) { return($"Opens at {FormatTime(openingHours[0])}"); } return(NextOpenDay(service)); } else { return($"Open until {FormatTime(openingHours[1])}"); } }
public void PrepareOpeningTimes(HelperServiceModel helpcenter) { int dayOfWeek = (int)System.DateTime.Now.DayOfWeek; List <int> openingHours = FindOpeningTimes(helpcenter, dayOfWeek); SetHelpCenterCurrentStatus(helpcenter, openingHours); }
public void OpeningHours_NullService_ReturnEmptyString() { HelperServiceModel helperService = new HelperServiceModel(); var result = ServiceHelpers.OpeningHours(helperService); Assert.AreEqual(result, string.Empty); }
async void GotoNextService(int i) { if (i >= helperServices.Service.Count) { helperServices = (await(new HelpersServices()).SaveHelperServices(helperServices)); if (helperServices.HelperId != 0) { RegisterUserModel user = App.Database.GetUsers(helperServices.UserId); user.IsServiced = true; App.Database.SaveUser(user); await DisplayAlert("Information", "Services saved successfully", "Ok"); GoToBuildTrust(); } else { await DisplayAlert("Error", "Somethin wrong! Please try again.", "Ok"); } return; // Call HelperServices and go to Build Trust } var g = gridHelperEditServices.Children.ElementAt(i + 1); g.BackgroundColor = Color.FromHex("#FF748C"); svHelperEditServices.IsVisible = false; svHelperRegHelperHome.IsVisible = true; // Reset data HelperServices service = helperServices.Service.ElementAt(i); btnHelperRegSelectedService.Text = service.ServiceName; SetScopes(service.ServiceId); SetPriceType(); helperServices.Service[i].Scopes = new List <HelperScopes>(); entryHelperRegLocation.Text = ""; //btnHelperRegHourly.isSelected = false; gridPriceHour.IsVisible = false; //btnHelperRegMonthly.isSelected = false; gridPriceMonth.IsVisible = false; //btnHelperRegDaily.isSelected = false; gridPriceDay.IsVisible = false; //btnHelperRegTbd.isSelected = false; }
void GoToEditServices() { helperCompleteRegisterTitle.Text = "Helper Sign Up 2/3"; gridHelperEditServices.BackgroundColor = Color.Transparent; gridHelperEditServices.Children.ElementAt(0).BackgroundColor = Color.FromHex("#FF748C"); svHelperBasicInfo.IsVisible = false; svHelperEditServices.IsVisible = true; helperServices = new HelperServiceModel(); helperServices.Service = new List <HelperServices>(); }
private string FindNextWorkingDayDisplayText(HelperServiceModel helpcenter) { string nextWorkingDayDisplayText = string.Empty; int dayOfWeek = (int)System.DateTime.Now.DayOfWeek; ArrayList holidaysOfWeek = new ArrayList(); List <int> NextWorkingDay; if (helpcenter.SundayOpeningHours != null && helpcenter.SundayOpeningHours[0] == 0) { holidaysOfWeek.Add(0); } if (helpcenter.MondayOpeningHours != null && helpcenter.MondayOpeningHours[0] == 0) { holidaysOfWeek.Add(1); } if (helpcenter.TuesdayOpeningHours != null && helpcenter.TuesdayOpeningHours[0] == 0) { holidaysOfWeek.Add(2); } if (helpcenter.WednesdayOpeningHours != null && helpcenter.WednesdayOpeningHours[0] == 0) { holidaysOfWeek.Add(3); } if (helpcenter.ThursdayOpeningHours != null && helpcenter.ThursdayOpeningHours[0] == 0) { holidaysOfWeek.Add(4); } if (helpcenter.FridayOpeningHours != null && helpcenter.FridayOpeningHours[0] == 0) { holidaysOfWeek.Add(5); } if (helpcenter.SaturdayOpeningHours != null && helpcenter.SaturdayOpeningHours[0] == 0) { holidaysOfWeek.Add(6); } do { dayOfWeek++; dayOfWeek = dayOfWeek % 7; } while (holidaysOfWeek.Contains(dayOfWeek)); NextWorkingDay = FindOpeningTimes(helpcenter, dayOfWeek); nextWorkingDayDisplayText = "CLOSED - REOPENS " + Enum.GetName(typeof(DayOfWeek), dayOfWeek) + " at " + NextWorkingDay[0].ToString() + " AM"; return(nextWorkingDayDisplayText); }
private static Dictionary <DayOfWeek, List <int> > PopulateDictionary(HelperServiceModel o) { Dictionary <DayOfWeek, List <int> > result = new Dictionary <DayOfWeek, List <int> >(); result.Add(DayOfWeek.Sunday, o.SundayOpeningHours); result.Add(DayOfWeek.Monday, o.MondayOpeningHours); result.Add(DayOfWeek.Tuesday, o.TuesdayOpeningHours); result.Add(DayOfWeek.Wednesday, o.WednesdayOpeningHours); result.Add(DayOfWeek.Thursday, o.ThursdayOpeningHours); result.Add(DayOfWeek.Friday, o.FridayOpeningHours); result.Add(DayOfWeek.Saturday, o.SaturdayOpeningHours); return(result); }
/// <summary> /// Shows message if service center has no openclosed timings /// Sets the next workind day based on openclosed timings /// </summary> /// <param name="helperService"></param> /// <param name="day"></param> private void SetClosedStatus(HelperServiceModel helperService, DateTime day) { helperService.ServiceCenterStatus.IsOpen = false; DateTime nextOpenDay = (day).AddDays(1); if (dayCount <= 7) { SetOpenigHours(helperService, nextOpenDay, true); } else { helperService.ServiceCenterStatus.IsOpen = false; helperService.ServiceCenterStatus.OpenClosedStatus = Constants.TIMING_MESSAGE; } }
public void Test_GetOpeningClosedStatus_WhenClosedMessageOpenCheck() { //Arrange HelperServiceFactory helperServiceFactory = new HelperServiceFactory(); var input = new HelperServiceModel { Title = "East London Helper Service", Description = "Test data", Id = Guid.Parse("FD15B5C7-EF00-4623-8CEA-20E7513283FC"), MondayOpeningHours = new List <int> { 0, 0 }, TuesdayOpeningHours = new List <int> { 0, 0 }, WednesdayOpeningHours = new List <int> { 0, 0 }, ThursdayOpeningHours = new List <int> { 0, 0 }, FridayOpeningHours = new List <int> { 0, 0 }, SaturdayOpeningHours = new List <int> { 9, 12 }, SundayOpeningHours = new List <int> { 0, 0 }, TelephoneNumber = "0207 0000000", Location = "London" }; //Act helperServiceFactory.GetOpeningClosedStatus(input); //Assert if ((DateTime.Now.DayOfWeek.ToString() == "Saturday") && ((DateTime.Now.Hour >= 9) && (DateTime.Now.Hour <= 12))) { Assert.AreEqual("Open Today until 12 PM", input.ServiceCenterStatus.OpenClosedStatus); } else { Assert.AreEqual("Reopens Saturday at 9 AM", input.ServiceCenterStatus.OpenClosedStatus); } }
public void Test_GetOpeningClosedStatus_WhenOpenStatusCheck() { //Arrange HelperServiceFactory helperServiceFactory = new HelperServiceFactory(); var input = new HelperServiceModel { Title = "East London Helper Service", Description = "Test data", Id = Guid.Parse("FD15B5C7-EF00-4623-8CEA-20E7513283FC"), MondayOpeningHours = new List <int> { 9, 12 }, TuesdayOpeningHours = new List <int> { 9, 12 }, WednesdayOpeningHours = new List <int> { 9, 12 }, ThursdayOpeningHours = new List <int> { 9, 12 }, FridayOpeningHours = new List <int> { 9, 12 }, SaturdayOpeningHours = new List <int> { 9, 12 }, SundayOpeningHours = new List <int> { 9, 12 }, TelephoneNumber = "0207 0000000", Location = "London" }; //Act helperServiceFactory.GetOpeningClosedStatus(input); //Assert if ((DateTime.Now.Hour >= 9) && (DateTime.Now.Hour <= 12)) { Assert.AreEqual(input.ServiceCenterStatus.IsOpen, true); } else { Assert.AreEqual(input.ServiceCenterStatus.IsOpen, false); } }
/// <summary> /// Get the OpeningTimes and Open or Closed status of service center /// </summary> /// <param name="helperService"></param> public void GetOpeningClosedStatus(HelperServiceModel helperService) { FileLogger.Log("GetOpeningClosedStatus Initialized ", Constants.INFO); try { helperService.ServiceCenterStatus = new ServiceCenterStatus { IsOpen = true }; dayCount = 0; SetOpenigHours(helperService, DateTime.Today, false); } catch (Exception ex) { FileLogger.Log(ex.Message, "Error"); throw ex; } }
public async Task <HelperServiceModel> SaveHelperServices(HelperServiceModel helperService) { HelperResponseModel helpers = new HelperResponseModel(); try { if (CrossConnectivity.Current.IsConnected) { HttpClient httpClient = new HttpClient(); var uri = new Uri(string.Concat(Constants.baseUrl, "api/HelperServices")); var json = JsonConvert.SerializeObject(helperService); var content = new StringContent(json, Encoding.UTF8, "application/json"); var response = await httpClient.PostAsync(uri, content); //var requestTask = httpClient.PostAsync(uri, content); //var response = Task.Run(() => requestTask); if (response.IsSuccessStatusCode) { string result = await response.Content.ReadAsStringAsync(); helpers = JsonConvert.DeserializeObject <HelperResponseModel>(result); helperService.HelperId = helpers.helperid; } else { string result = await response.Content.ReadAsStringAsync(); var message = JsonConvert.DeserializeObject <ResponseModel>(result); } } } catch (Exception e) { Console.Write(e.StackTrace); } return(helperService); }
private static List <int> FindOpeningTimes(HelperServiceModel helpcenter, int dayOfWeek) { List <int> openingHours = null; switch (dayOfWeek) { case 0: openingHours = helpcenter.SundayOpeningHours; break; case 1: openingHours = helpcenter.MondayOpeningHours; break; case 2: openingHours = helpcenter.TuesdayOpeningHours; break; case 3: openingHours = helpcenter.WednesdayOpeningHours; break; case 4: openingHours = helpcenter.ThursdayOpeningHours; break; case 5: openingHours = helpcenter.FridayOpeningHours; break; case 6: openingHours = helpcenter.SaturdayOpeningHours; break; default: //This should never hit, System.DateTime.Now.DayOfWeek should give a value within 0-6 break; } return(openingHours); }
public void Test_GetOpeningClosedStatus_WhenClosedMessageCheck() { //Arrange HelperServiceFactory helperServiceFactory = new HelperServiceFactory(); var input = new HelperServiceModel { Title = "East London Helper Service", Description = "Test data", Id = Guid.Parse("FD15B5C7-EF00-4623-8CEA-20E7513283FC"), MondayOpeningHours = new List <int> { 0, 0 }, TuesdayOpeningHours = new List <int> { 0, 0 }, WednesdayOpeningHours = new List <int> { 0, 0 }, ThursdayOpeningHours = new List <int> { 0, 0 }, FridayOpeningHours = new List <int> { 0, 0 }, SaturdayOpeningHours = new List <int> { 0, 0 }, SundayOpeningHours = new List <int> { 0, 0 }, TelephoneNumber = "0207 0000000", Location = "London" }; //Act helperServiceFactory.GetOpeningClosedStatus(input); //Assert Assert.AreEqual("We're sorry, we are temporarily unable to display", input.ServiceCenterStatus.OpenClosedStatus); }
private static string NextOpenDay(HelperServiceModel service) { try { DayOfWeek dayToCheck = DateTime.Now.DayOfWeek; for (var daysTried = 0; daysTried < 7; daysTried++) { if (dayToCheck > DayOfWeek.Saturday) { dayToCheck = DayOfWeek.Sunday; } else { dayToCheck = ++dayToCheck; } switch (dayToCheck) { case DayOfWeek.Monday: if (service.MondayOpeningHours[0] > 0) { return($"Reopens Monday {FormatTime(service.MondayOpeningHours[0])}"); } break; case DayOfWeek.Tuesday: if (service.TuesdayOpeningHours[0] > 0) { return($"Reopens Tuesday {FormatTime(service.TuesdayOpeningHours[0])}"); } break; case DayOfWeek.Wednesday: if (service.WednesdayOpeningHours[0] > 0) { return($"Reopens Wednesday {FormatTime(service.WednesdayOpeningHours[0])}"); } break; case DayOfWeek.Thursday: if (service.ThursdayOpeningHours[0] > 0) { return($"Reopens Thursday {FormatTime(service.ThursdayOpeningHours[0])}"); } break; case DayOfWeek.Friday: if (service.FridayOpeningHours[0] > 0) { return($"Reopens Friday {FormatTime(service.FridayOpeningHours[0])}"); } break; case DayOfWeek.Saturday: if (service.SaturdayOpeningHours[0] > 0) { return($"Reopens Saturday {FormatTime(service.SaturdayOpeningHours[0])}"); } break; case DayOfWeek.Sunday: if (service.SaturdayOpeningHours[0] > 0) { return($"Reopens Saturday {FormatTime(service.SaturdayOpeningHours[0])}"); } break; } } } catch (InvalidOperationException ex) { } return(string.Empty); }
/// <summary> /// Open-Closed helper function /// </summary> /// <param name="helperServiceModel"></param> /// <returns>Open/Closed text, and style-class</returns> //public static string OpenClosedStatus(HelperServiceModel helperServiceModel) public void OpenClosedStatus(HelperServiceModel helperServiceModel) { string sRet = "We're sorry, we are temporarily unable to display Opening Times"; var dayOfWeek = DateTime.Today.DayOfWeek; var timeOfDay = DateTime.Now.TimeOfDay; int nOpen = 0; int nClose = 0; bool bOpenNClosed = false; int nOffset = 0; string sOpenDay = ""; const string sorry1 = "Closed: We're sorry, we are temporarily unable to display the next Opening Time."; // bad times const string sorry2 = "We're sorry, we are temporarily unable to display Opening Times"; const string sorry3 = "We're sorry, we are temporarily unable to display Opening Times"; // bad day default const string sorry4 = "Closed: please see one of our other Helper Services."; string sHoursStyle = "bg-color-light-grey"; try { switch (dayOfWeek) { case DayOfWeek.Sunday: if (helperServiceModel.SundayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.SundayOpeningHours[0]; nClose = helperServiceModel.SundayOpeningHours[1]; break; case DayOfWeek.Monday: if (helperServiceModel.MondayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.MondayOpeningHours[0]; nClose = helperServiceModel.MondayOpeningHours[1]; break; case DayOfWeek.Tuesday: if (helperServiceModel.TuesdayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.TuesdayOpeningHours[0]; nClose = helperServiceModel.TuesdayOpeningHours[1]; break; case DayOfWeek.Wednesday: if (helperServiceModel.WednesdayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.WednesdayOpeningHours[0]; nClose = helperServiceModel.WednesdayOpeningHours[1]; break; case DayOfWeek.Thursday: if (helperServiceModel.ThursdayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.ThursdayOpeningHours[0]; nClose = helperServiceModel.ThursdayOpeningHours[1]; break; case DayOfWeek.Friday: if (helperServiceModel.FridayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.FridayOpeningHours[0]; nClose = helperServiceModel.FridayOpeningHours[1]; break; case DayOfWeek.Saturday: if (helperServiceModel.SaturdayOpeningHours == null) { throw new ApplicationException(sorry2); } nOpen = helperServiceModel.SaturdayOpeningHours[0]; nClose = helperServiceModel.SaturdayOpeningHours[1]; break; default: // null throw new ApplicationException(sorry3); } // check if open now, assume nOpen=0 for closed all day if (nOpen > 0) { // check opening time if (TimeSpan.Compare(timeOfDay, TimeSpan.FromHours(nOpen)) > 0) { // after opening time, check closing time if (TimeSpan.Compare(timeOfDay, TimeSpan.FromHours(nClose)) < 0) { // we are open bOpenNClosed = true; sRet = "Open today until " + ((nClose > 12) ? (nClose - 12).ToString() + "PM" : nClose.ToString() + "AM"); sHoursStyle = "bg-color-donation-orange"; } } else { // before opening time bOpenNClosed = true; sRet = "Closed: Opening today at " + ((nOpen > 12) ? (nOpen - 12).ToString() + "PM" : nOpen.ToString() + "AM"); sHoursStyle = "bg-color-donation-orange"; } } if (!bOpenNClosed) { // closed, find next open day/time nOpen = 0; switch (dayOfWeek) { case DayOfWeek.Sunday: nOffset = 0; break; case DayOfWeek.Monday: nOffset = 1; break; case DayOfWeek.Tuesday: nOffset = 2; break; case DayOfWeek.Wednesday: nOffset = 3; break; case DayOfWeek.Thursday: nOffset = 4; break; case DayOfWeek.Friday: nOffset = 5; break; case DayOfWeek.Saturday: nOffset = 6; break; } for (int day = 0; day < 7; day++) { if (nOpen > 0) { break; } switch (day + nOffset) { case 0: case 7: if (helperServiceModel.MondayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.MondayOpeningHours[0]; sOpenDay = "Monday"; break; case 1: case 8: if (helperServiceModel.TuesdayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.TuesdayOpeningHours[0]; sOpenDay = "Tuesday"; break; case 2: case 9: if (helperServiceModel.WednesdayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.WednesdayOpeningHours[0]; sOpenDay = "Wednesday"; break; case 3: case 10: if (helperServiceModel.ThursdayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.ThursdayOpeningHours[0]; sOpenDay = "Thursday"; break; case 4: case 11: if (helperServiceModel.FridayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.FridayOpeningHours[0]; sOpenDay = "Friday"; break; case 5: case 12: if (helperServiceModel.SaturdayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.SaturdayOpeningHours[0]; sOpenDay = "Saturday"; break; case 6: case 13: if (helperServiceModel.SundayOpeningHours == null) { throw new ApplicationException(sorry1); } nOpen = helperServiceModel.SundayOpeningHours[0]; sOpenDay = "Sunday"; break; } } // check for opening hour if (nOpen == 0) { throw new ApplicationException(sorry4); } sRet = "Closed: Re-opens on " + sOpenDay + " at " + ((nOpen > 12) ? (nOpen - 12).ToString() + "PM" : nOpen.ToString() + "AM"); } } catch (Exception ex) { sRet = ex.Message; } //return sRet; helperServiceModel.HoursText = sRet; helperServiceModel.HoursStyle = sHoursStyle; } // end of (o)s
public void GetOpeningClosedStatus(HelperServiceModel helperService) { new HelperServiceFactory().GetOpeningClosedStatus(helperService); }
internal static List <HelperServiceModel> Create() { var weekdayOpeningTimes = new List <int> { 9, 17 }; var alternativeOpeningTime = new List <int> { 8, 12 }; //### //var alternativeOpeningTime = new List<int> { 8, 22 }; var weekendOpeningTimes = new List <int> { 10, 12 }; var closedTimes = new List <int> { 0, 0 }; var description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum"; var eastLondonHelper = new HelperServiceModel { Title = "East London Helper Service", Description = description, Id = Guid.Parse("FD15B5C7-EF00-4623-8CEA-20E7513283FC"), MondayOpeningHours = closedTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = alternativeOpeningTime, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = closedTimes, SundayOpeningHours = closedTimes, TelephoneNumber = "0207 0000000" }; var northLondonHelper = new HelperServiceModel { Title = "North London Helper Service", Description = description, Id = Guid.Parse("BB1FDCB3-AA8B-4A86-8DFD-74F0C475118F"), MondayOpeningHours = weekdayOpeningTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = closedTimes, SaturdayOpeningHours = closedTimes, SundayOpeningHours = closedTimes, TelephoneNumber = "0207 0000000" }; var bristolHelper = new HelperServiceModel { Title = "Bristol Helper Service", Description = description, Id = Guid.Parse("DC7F8E65-E8DB-4294-973B-569DA4EC280C"), MondayOpeningHours = closedTimes, TuesdayOpeningHours = closedTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = closedTimes, SundayOpeningHours = closedTimes, TelephoneNumber = "0117 0000000" }; var somersetHelper = new HelperServiceModel { Title = "Somerset Helper Service", Description = description, Id = Guid.Parse("B133869D-EB46-4F6B-B1D1-6B57581AAC92"), MondayOpeningHours = alternativeOpeningTime, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = closedTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = closedTimes, SundayOpeningHours = closedTimes, TelephoneNumber = "0207 0000000" }; var nottinghamHelper = new HelperServiceModel { Title = "Nottingham Helper Service", Description = description, Id = Guid.Parse("284BCC28-6E47-4EB2-B7BB-B9A1BB1CD4B4"), MondayOpeningHours = alternativeOpeningTime, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = closedTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = weekdayOpeningTimes, SundayOpeningHours = weekdayOpeningTimes, TelephoneNumber = "0116 0000000" }; var liverpoolHelper = new HelperServiceModel { Title = "Liverpool Helper Service", Description = description, Id = Guid.Parse("FD15B5C7-EF00-4623-8CEA-20E7513283FC"), MondayOpeningHours = weekdayOpeningTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = alternativeOpeningTime, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = weekendOpeningTimes, SundayOpeningHours = weekendOpeningTimes, TelephoneNumber = "0151 0000000" }; var northernIrelandHelper = new HelperServiceModel { Title = "Belfast Helper Service", Description = description, Id = Guid.Parse("3FCE3EFD-9713-4449-8DFF-A6FF3D771993"), MondayOpeningHours = weekdayOpeningTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = weekdayOpeningTimes, SundayOpeningHours = weekendOpeningTimes, TelephoneNumber = "0289 0000000" }; var westMidlandsHelper = new HelperServiceModel { Title = "West Midlands Helper Service", Description = description, Id = Guid.Parse("7BA5E5E1-C29E-40BA-832B-F145DEE37A5D"), MondayOpeningHours = alternativeOpeningTime, TuesdayOpeningHours = alternativeOpeningTime, WednesdayOpeningHours = alternativeOpeningTime, ThursdayOpeningHours = alternativeOpeningTime, FridayOpeningHours = alternativeOpeningTime, SaturdayOpeningHours = alternativeOpeningTime, SundayOpeningHours = alternativeOpeningTime, TelephoneNumber = "0289 0000000" }; var walesHelper = new HelperServiceModel { Title = "Wales Helper Service", Description = description, Id = Guid.Parse("C9EB3091-CDF0-4F7E-9435-3ACEF695EDFE"), MondayOpeningHours = weekdayOpeningTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = weekdayOpeningTimes, SundayOpeningHours = weekendOpeningTimes, TelephoneNumber = "029 8800000" }; var fifeHelper = new HelperServiceModel { Title = "Fife Helper Service", Description = description, Id = Guid.Parse("078767E1-5695-42DD-AD9A-4310535C93F0"), MondayOpeningHours = weekdayOpeningTimes, TuesdayOpeningHours = weekdayOpeningTimes, WednesdayOpeningHours = weekdayOpeningTimes, ThursdayOpeningHours = weekdayOpeningTimes, FridayOpeningHours = weekdayOpeningTimes, SaturdayOpeningHours = weekdayOpeningTimes, SundayOpeningHours = weekendOpeningTimes, TelephoneNumber = "0159 2000000" }; var openingHours = new List <HelperServiceModel> { eastLondonHelper, northLondonHelper, bristolHelper, somersetHelper, nottinghamHelper, liverpoolHelper, northernIrelandHelper, westMidlandsHelper, walesHelper, fifeHelper }; return(DeliberateBug(openingHours));//### }
/// <summary> /// Sets the OpeningTimes and Open or Closed status of service center based on the Current day /// </summary> /// <param name="helperService"></param> /// <param name="day"></param> /// <param name="nextDaystatus"></param> private void SetOpenigHours(HelperServiceModel helperService, DateTime day, bool nextDaystatus) { List <int> openHours = new List <int>(); switch (day.DayOfWeek.ToString()) { case "Monday": openHours = helperService.MondayOpeningHours; break; case "Tuesday": openHours = helperService.TuesdayOpeningHours; break; case "Wednesday": openHours = helperService.WednesdayOpeningHours; break; case "Thursday": openHours = helperService.ThursdayOpeningHours; break; case "Friday": openHours = helperService.FridayOpeningHours; break; case "Saturday": openHours = helperService.SaturdayOpeningHours; break; case "Sunday": openHours = helperService.SundayOpeningHours; break; } if (openHours == null) //Handles Deliberate bug { helperService.ServiceCenterStatus.OpenClosedStatus = Constants.TIMING_MESSAGE; } else { if ((openHours[0] > 0)) //Checks if open on that day { if (!nextDaystatus) //Checks if current day { if ((DateTime.Now.Hour >= openHours[0]) && (DateTime.Now.Hour < openHours[1])) //Checks if open at current time and current day { helperService.ServiceCenterStatus.OpenClosedStatus = Constants.OPEN_STATUS + ConvertTime(openHours[1].ToString()); } else if ((DateTime.Now.Hour < openHours[0])) { helperService.ServiceCenterStatus.OpenClosedStatus = Constants.CLOSED_STATUS + day.DayOfWeek.ToString() + " at " + ConvertTime(openHours[0].ToString()); helperService.ServiceCenterStatus.IsOpen = false; } else { dayCount++; SetClosedStatus(helperService, day); } } else // setting Reopen day and time { helperService.ServiceCenterStatus.OpenClosedStatus = Constants.CLOSED_STATUS + day.DayOfWeek.ToString() + " at " + ConvertTime(openHours[0].ToString()); } } else { dayCount++; SetClosedStatus(helperService, day); } } }