private WorkWeek ForMockWorkWeek() { var workWeek = new WorkWeek("test"); workWeek.Id = Guid.NewGuid(); return(workWeek); }
private void CreateMissingWorkWeeks(IEnumerable <WorkDay> workdays, List <WorkWeek> weeks, AppUser user) { foreach (var day in workdays) { var firstDay = day.Date.GetWholeWeek().First(); var matchingWeek = weeks.FirstOrDefault(x => x.WeekStart.Date == firstDay.Date); if (matchingWeek == null) { var week = new WorkWeek { ContractId = user.Id, WeekStart = firstDay, WeekNumber = firstDay.GetWeekNumber(), }; _context.WorkWeeks.Add(week); weeks.Add(week); day.WorkWeek = week; } else { day.WorkWeek = matchingWeek; } } }
public void HoursDuration_EmptyWorkWeekSchouldReturn0() { WorkMonth wm = new WorkMonth(2011, 1, null, new WorkDayParserSettings(), 1); WorkWeek ww = new WorkWeek(wm, 1); Assert.AreEqual(0, ww.HoursDuration); }
public static WorkWeek GetShifts(List <DateTime> availableDates) { var workWeek = new WorkWeek(); for (var i = 0; i < availableDates.Count; i++) { var availableDate = availableDates[i]; var workDay = new WorkDay { Name = availableDate.DayOfWeek }; foreach (var shiftTime in ShiftTimes) { var start = availableDate.AddHours(shiftTime.Start); var end = availableDate.AddHours(shiftTime.End); workDay.Shifts.Add(new Shift { Time = end - start }); } workWeek.Days.Add(workDay); } return(workWeek); }
public WorkWeekEntity MapToEntity(WorkWeek workWeek) { Id = workWeek.Id; Description = workWeek.Description; return(this); }
public async Task <WorkWeek> GetWeek(DateTimeOffset date) { WorkWeek workWeek; try { workWeek = await _dateService.GetWeek(date); } catch (WeekDoesNotExistException) { var firstDayOfGivenWeek = date.GetFirstDayOfWeek(); //Week did not exist, create a new one. workWeek = new WorkWeek(firstDayOfGivenWeek); //Add all default dates foreach (DayOfWeek dayOfWeek in _neededDays) { var workDayDate = firstDayOfGivenWeek.AddDays((int)dayOfWeek - 1); var workDay = new WorkDay(workDayDate); workWeek.WorkDays.Add(workDay); } workWeek = await _dateService.AddWeek(workWeek); } return(workWeek); }
public async Task ProcessSpecificWorkWeek(RecalculateMyWeeksRequest request) { var workDays = await _context.WorkDays.Include(x => x.WorkingPeriods).Include(x => x.WorkWeek).Include(x => x.Contract) .Where(new RecalculateMyWeeksSpecification(request.User.Id, request.DaysInWeek).ToExpression()) .ToListAsync(); var totalHours = workDays.Sum(x => CalculateTotalHoursFromWorkDay(x)); var totalOverhours = workDays.Sum(x => x.GetOverhours()); var totalRequiredHours = workDays.Sum(x => x.RequiredHours); var daysOffWork = workDays.Count(x => x.WorkDayType != Domain.Models.WorkDayType.Workday && x.WorkDayType != Domain.Models.WorkDayType.Undefined); var daysWorked = workDays.Count(x => x.WorkDayType == Domain.Models.WorkDayType.Workday); var workWeek = await _context.WorkWeeks.FirstOrDefaultAsync(x => x.ContractId == request.CurrentContract.Id && x.WeekNumber == request.CalendarWeek); if (workWeek == null) { workWeek = new WorkWeek { WeekNumber = request.CalendarWeek, WeekStart = request.DaysInWeek.First(), ContractId = request.User.Id }; _context.WorkWeeks.Add(workWeek); } workWeek.TotalHours = totalHours; workWeek.TotalOverhours = totalOverhours; workWeek.TotalRequiredHours = totalRequiredHours; workWeek.DaysOffWork = daysOffWork; workWeek.DaysWorked = daysWorked; await _context.SaveChangesAsync(); }
public WorkWeek GetWorkWeek(string username, DateTime date) { List <WorkShift> workWeek = new List <WorkShift>(); try { //get the monday of this week containing date int delta = DayOfWeek.Monday - date.DayOfWeek; DateTime monday = date.AddDays(delta); workWeek.Add(GetWorkShift("", monday)); workWeek.Add(GetWorkShift("", monday.AddDays(1))); workWeek.Add(GetWorkShift("", monday.AddDays(2))); workWeek.Add(GetWorkShift("", monday.AddDays(3))); workWeek.Add(GetWorkShift("", monday.AddDays(4))); workWeek.Add(GetWorkShift("", monday.AddDays(5))); workWeek.Add(GetWorkShift("", monday.AddDays(6))); } catch (Exception ex) { } WorkWeek ww = new WorkWeek(); ww.WorkShifts = workWeek; return(ww); }
public static void WorkWithWorkWeek() { // ExStart // ExFor: WorkWeek // ExFor: WorkWeek.#ctor // ExFor: WorkWeek.Name // ExFor: WorkWeek.ParentCalendar // ExFor: WorkWeek.FromDate // ExFor: WorkWeek.ToDate // ExFor: WorkWeek.WeekDays // ExSummary: Shows how to read work week information from the project. var project = new Project(); var calendar = project.Calendars.Add("Standard"); Calendar.MakeStandardCalendar(calendar); var item = new WorkWeek(calendar); item.Name = "My Work Week"; item.FromDate = new DateTime(2020, 4, 13, 8, 0, 0); item.ToDate = new DateTime(2020, 4, 17, 17, 0, 0); item.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday)); item.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday)); item.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday)); item.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Thursday)); item.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday)); item.WeekDays.Add(new WeekDay(DayType.Saturday)); item.WeekDays.Add(new WeekDay(DayType.Sunday)); calendar.WorkWeeks.Add(item); Console.WriteLine("Work Week Number: " + calendar.WeekDays.Count); foreach (var workWeek in calendar.WorkWeeks) { // Display work week name, parent calendar name, from, and to dates Console.WriteLine("Name: " + workWeek.Name); Console.WriteLine("Parent calendar name: " + workWeek.ParentCalendar.Name); Console.WriteLine("From Date: " + workWeek.FromDate); Console.WriteLine("To Date: " + workWeek.ToDate); Console.WriteLine(); // This data is all about "Details." button you can set special working times for special WeekDay or even make it nonworking List <WeekDay> weekDays = workWeek.WeekDays.ToList(); foreach (var day in weekDays) { Console.WriteLine(day.DayType.ToString()); // You can further traverse through working times and display these foreach (var workingTime in day.WorkingTimes) { Console.WriteLine(workingTime.FromTime); Console.WriteLine(workingTime.ToTime); } } Console.WriteLine(); } // ExEnd }
public ActionResult DeleteConfirmed(int id) { WorkWeek workWeek = db.WorkWeek.Find(id); db.WorkWeek.Remove(workWeek); db.SaveChanges(); return(RedirectToAction("Index")); }
public Subject CreateNew(string name, Day dayOfWeek, DateTime time, int audienceNumber, string fullNameTeacher, WorkWeek workWeek) //+ { var newSubject = new Subject(name, dayOfWeek, time, audienceNumber, fullNameTeacher); newSubject.WorkWeek = workWeek; return(repository.Save(newSubject)); }
public JObject Post([FromBody] JObject jsonResult) //+ { WorkWeekDTO workWeekDto = JsonConvert.DeserializeObject <WorkWeekDTO>(jsonResult.ToString()); WorkWeek workWeek = workWeekDto.MapToModel(); WorkWeekBLL workWeekBll = new WorkWeekBLL(repository); workWeekBll.CreateWorkWeek(workWeek); return(jsonResult); }
public WorkWeekDTO MapFromModel(WorkWeek workWeek) { var subjects = workWeek.Subjects.Select(x => new SubjectDTO().MapFromModel(x)).ToList(); Id = workWeek.Id; Description = workWeek.Description; Subjects = subjects; return(this); }
public List <WorkWeek> findAll(int id) { List <WorkWeek> semanas = new List <WorkWeek>(); using (SqlConnection con = new SqlConnection(strConnection)) { SqlCommand cmd = new SqlCommand("sp_Select_Semanas_from_Mesociclo", con); //SqlCommand cmd = new SqlCommand(sql, con); con.Open(); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@MesocicloId", id); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { WorkWeek semana = new WorkWeek(); semana.weekId = Convert.ToInt32(reader[0]); semana.weekName = reader[1].ToString(); semana.weekObjective = reader[2].ToString(); if (!(reader[3] is DBNull)) { semana.mesocicloId = Convert.ToInt32(reader[3]); } else { semana.mesocicloId = null; } semana.mesocicleName = reader[4].ToString(); semana.mesocicleObjective = reader[5].ToString(); if (!(reader[6] is DBNull)) { semana.macrocicleId = Convert.ToInt32(reader[6]); } else { semana.macrocicleId = null; } //if (!(reader[9] is DBNull)) //{ // usuario.userType = Convert.ToInt16(reader[9]); //} //else //{ // usuario.userType = null; //} //usuario.fechaNac = reader[8].ToString(); semanas.Add(semana); } } return(semanas); }
public ActionResult Edit([Bind(Include = "Id,StartWeek,UserId")] WorkWeek workWeek) { if (ModelState.IsValid) { db.Entry(workWeek).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.UserId = new SelectList(db.Users, "Id", "Email", workWeek.UserId); return(View(workWeek)); }
public WorkWeek MapToModel() { var workWeek = new WorkWeek(Description) { Id = this.Id }; ((List <Subject>)workWeek.Subjects).AddRange(this.Subjects.Select(x => x.MapToModel(workWeek))); return(workWeek); }
public ShortcutViewModel(ShortCut shortCut, WorkWeek workWeek, MoniSettings settings, Action closeAction) { this.viewcloseAction = closeAction; this.MoniSettings = settings; this.workWeek = workWeek; this.Model = shortCut ?? new ShortCut(); this.IsNew = shortCut == null; this.ShortCutKey = this.Model.Key; this.ShortCutGroup = settings.ParserSettings.ShortCutGroups.FirstOrDefault(sg => Equals(sg.Key, this.Model.Group)); this.ShortCutGroupKey = this.Model.Group; }
public Subject MapToModel(WorkWeek workWeek) { var subject = new Subject(Name, DayOfWeek, Time, AudienceNumber, FullName) { Id = this.Id }; subject.WorkWeek = workWeek; return(subject); }
public ActionResult Create([Bind(Include = "Id,StartWeek,UserId")] WorkWeek workWeek) { if (ModelState.IsValid) { db.WorkWeek.Add(workWeek); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.UserId = new SelectList(db.Users, "Id", "Email", workWeek.UserId); return(View(workWeek)); }
public void RemoveWorkWeekTrue() { var repository = new Mock <IRepository>(); var subjectBll = new Mock <ISubjectBLL>(); var workWeekBllM = new Mock <IWorkWeekBLL>(); var res = new WorkWeek("test"); workWeekBllM.Setup(workWeekBll => workWeekBll.CreateWorkWeek("test")).Returns(res); var workWeek = workWeekBllM.Object.CreateWorkWeek("test"); Assert.False(workWeekBllM.Object.Remove(workWeek.Id)); }
protected void WorkWeekGrid_OnInitNewRow(object sender, ASPxDataInitNewRowEventArgs e) { var workWeek = WorkWeek.GetTheMostRecentWorkWeek(); if (workWeek != null) { var startDate = workWeek.EndDate.AddDays(1); e.NewValues["StartDate"] = startDate; e.NewValues["EndDate"] = startDate.AddDays(6); e.NewValues["Caption"] = string.Format("{0}-ს", startDate.ToString("MMM dd, yyyy", CultureInfo.CreateSpecificCulture("ka-ge"))); } }
public async Task <string> UpdateWorkWeek(int id, WorkWeek WorkWeek) { try { var res = await _repository.UpdateWorkWeek(id, WorkWeek); return(res); } catch (Exception ex) { throw ex; } }
public async Task <WorkWeek> CreateNewWorkWeek(WorkWeek WorkWeek) { try { var res = await _repository.CreateNewWorkWeek(WorkWeek); return(res); } catch (Exception ex) { throw ex; } }
// GET: WorkWeeks/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkWeek workWeek = db.WorkWeek.Find(id); if (workWeek == null) { return(HttpNotFound()); } return(View(workWeek)); }
public async Task <WorkWeek> CreateNewWorkWeek(WorkWeek workWeek) { try { _context.WorkWeeks.Add(workWeek); await _context.SaveChangesAsync(); return(workWeek); } catch (Exception ex) { throw ex; } }
// GET: WorkWeeks/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkWeek workWeek = db.WorkWeek.Find(id); if (workWeek == null) { return(HttpNotFound()); } ViewBag.UserId = new SelectList(db.Users, "Id", "Email", workWeek.UserId); return(View(workWeek)); }
public LaborScheduling(string LocationCode) { //EmployeeListAll = FakeAPI.GetAllEmployees(); //EmployeeListStore = FakeAPI.GetEmployeesForStore(storeCode); ManagerMessageList = FakeAPI.GetMessagesForManager(LocationCode); ThisWeek = new WorkWeek(); /// <summary> /// A horizontal table to display the amount of employees needed for each hour of a selected day /// </summary> DataTable AssignmentTable = new DataTable(); }
public async Task <WorkWeek> AddWeek(WorkWeek workWeek) { workWeek.FirstDateOfWeek = workWeek.FirstDateOfWeek.AddHours(1); //Workaround for a bug that decreases the date for one hour foreach (WorkDay workDay in workWeek.WorkDays) { workDay.Date = workDay.Date.AddHours(1); //Workaround for a bug that decreases the date for one hour } await _databaseConnection.InsertWithChildrenAsync(workWeek); FireWeekAddedEvent(workWeek); foreach (WorkDay workDay in workWeek.WorkDays) { FireDayAddedEvent(workDay); } return(workWeek); }
public async Task <IActionResult> CreateWorkWeek(WorkWeek wWorkWeek) { try { var response = await _service.CreateNewWorkWeek(wWorkWeek); if (response != null) { return(Ok(response)); } return(StatusCode(StatusCodes.Status204NoContent)); } catch (Exception ex) { throw ex; } }
public async Task <IActionResult> UpdateWorkWeek(int WorkWeekId, WorkWeek wWorkWeek) { try { var res = await _service.UpdateWorkWeek(WorkWeekId, wWorkWeek); if (res != null) { return(Ok(res)); } return(StatusCode(StatusCodes.Status204NoContent)); } catch (Exception ex) { throw; } }
//Get all employees work in terms of weeks public static List<WorkWeek> GetAllTimeSheet() { List<WorkWeek> workWeekList = new List<WorkWeek>(); string statement = "SELECT * FROM TIMESHEET ORDER BY TableID"; SqlConnection conn = GetConnectionTimeSheet(); SqlCommand cmd = new SqlCommand(statement, conn); //Try to read try { conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); //Read from SQL with SqlDataReader while (reader.Read()) { WorkWeek workWeek = new WorkWeek(); //Initialize properties workWeek.TableID = (int)reader["TableID"]; workWeek.EmployeeID = reader["EmployeeID"].ToString().Trim(); workWeek.FirstName = reader["FirstName"].ToString().Trim(); workWeek.LastName = reader["LastName"].ToString().Trim(); workWeek.PunchIn = reader["PunchIn"].ToString().Split(); workWeek.PunchOut = reader["PunchOut"].ToString().Split(); workWeek.LunchIn = reader["LunchIn"].ToString().Split(); workWeek.LunchOut = reader["LunchOut"].ToString().Split(); workWeek.Reason = reader["Reason"].ToString().Split(); workWeek.Assoc = reader["Assoc"].ToString().Split(); workWeek.Admin = reader["Admin"].ToString().Split(); workWeek.Week = reader["Week"].ToString().Trim(); //Add to list workWeekList.Add(workWeek); } reader.Close(); } catch (Exception exception) { throw exception;} finally { conn.Close(); } return workWeekList; }
//Update changes in cells //Split the string array first, before putting them in cells private void Display(WorkWeek workWeek) { Type type = typeof(WorkWeek); //Initialize grid Search for all text boxes for (int i = 0; i < allCells.Count(); i++) { //Reflection; get field inside employee of name stem PropertyInfo property = type.GetProperty(allCells[i].Name.Substring(6)); //Calling property of name if (property != null && property.GetValue(workWeek, null).ToString().Trim() != String.Empty) { string[] cellParse = ParseCellName(allCells[i].Name); string[] tempPropertyArr = (string[])property.GetValue(workWeek, null); //Assign row values to grid - property based on column grid[(int)WorkWeek.daysDict[cellParse[1]]][(int)WorkWeek.recsDict[cellParse[2]]] = tempPropertyArr[(int)WorkWeek.daysDict[cellParse[1]]]; allCells[i].Text = grid[(int)WorkWeek.daysDict[cellParse[1]]][(int)WorkWeek.recsDict[cellParse[2]]]; //Check for dummies and apply format to them CheckForDummies((TextBox)allCells[i]); } } //Upgrade grid //UpdateGrid(); //Display Hours double hrs = CalculateHours(); lblTotal.Text = Math.Round(hrs, 1).ToString(); }
//Read from table Timsheet first workweek of employee's: only need FirstName and LastName public static List<WorkWeek> GetAllWorkWeekForSingleEmployee(string firstName, string lastName) { string searchStatement = "SELECT * FROM TIMESHEET WHERE FirstName = @firstName AND LastName = @lastName ORDER BY TableID"; SqlConnection conn = GetConnectionTimeSheet(); SqlCommand cmd = new SqlCommand(searchStatement, conn); //Fill in the command parameters cmd.Parameters.AddWithValue("@firstName", firstName); cmd.Parameters.AddWithValue("@lastName", lastName); List<WorkWeek> workWeekList = new List<WorkWeek>(); //Try to execute try { conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { WorkWeek workWeek = new WorkWeek(); workWeek.TableID = (int)reader["TableID"]; workWeek.EmployeeID = reader["EmployeeID"].ToString().Trim(); workWeek.FirstName = reader["FirstName"].ToString().Trim(); workWeek.LastName = reader["LastName"].ToString().Trim(); workWeek.PunchIn = reader["PunchIn"].ToString().Split(); //Split workWeek.PunchOut = reader["PunchOut"].ToString().Split(); workWeek.LunchIn = reader["LunchIn"].ToString().Split(); workWeek.LunchOut = reader["LunchOut"].ToString().Split(); workWeek.Reason = reader["Reason"].ToString().Split(); workWeek.Assoc = reader["Assoc"].ToString().Split(); workWeek.Admin = reader["Admin"].ToString().Split(); workWeek.Week = reader["Week"].ToString().Trim(); workWeekList.Add(workWeek); } } catch (SqlException exception) { throw exception; } finally { conn.Close(); } return workWeekList; }
/* ================================================================================ * Event for combo box items change * - Includes display * - Changes current workweek * ================================================================================ */ private void cmbWeekSpan_SelectedValueChanged(object sender, EventArgs e) { //When initialized disable buttons save, back, and forth. if (cmbWeekSpan.Text == "") { btnSave.Enabled = false; btnBack.Enabled = false; btnForth.Enabled = false; } else { btnSave.Enabled = true; btnBack.Enabled = true; btnForth.Enabled = true; //Disable forth DateTime cmbDate = WorkWeek.LastBeginningOfWeek(currentWorkWeek.Week); //Date we are in DateTime cmbMonday = WorkWeek.LastBeginningOfWeek(cmbDate.ToString()); DateTime date = UtilDotNET.StringToDate(WorkWeek.ConvertWeekSpanToBeginningOfWeek(cmbWeekSpan.Text)); //Date we want to go to (because it change) //MessageBox.Show(cmbMonday + " " + date); //Only execute on different date selections if (cmbMonday != date) { //Load corresponding week int currentIndex = cmbWeekSpan.Items.IndexOf(cmbWeekSpan.Text); currentWorkWeek = employeeWorkWeekList[currentIndex]; Display(currentWorkWeek); } } }
/* * Open and Save events */ //Display current week of data private void btnOpen_Click(object sender, EventArgs e) { if (txtFirstName.Text != "" || txtLastName.Text != "") { //Update for autocompletion... employeeWorkWeekList = TimeSheetDatabase.GetAllWorkWeekForSingleEmployee(txtFirstName.Text, txtLastName.Text); //Exit on empty list if (employeeWorkWeekList.Count == 0) return; currentWorkWeek = WorkWeek.GetCurrentWorkWeek(employeeWorkWeekList); //Split the string array first, before putting them in cells Display(currentWorkWeek); UpdateWeekComboBox(currentWorkWeek); //Display Hours double hrs = CalculateHours(); lblTotal.Text = Math.Round(hrs, 3).ToString(); //Feedback MessageBox.Show(string.Format("WorkWeek for employee:\n{0} {1}.", currentWorkWeek.FirstName.Trim(), currentWorkWeek.LastName.Trim())); } else { MessageBox.Show("Missing data! Please enter employee's first and last name."); } }
/* ================================================================== * btnForth_click event * ***************************************************************** * Description: Creates a new WorkWeek, only 1 above current date * Notes: * 1. Create new WorkWeek with EmployeeID, FirstName, LastName, * empty data cells (like when in EmployeeForm). * 2. Set Week to be +7 days from current date. * 3. Display (includes add to weekspan combobox) * 4. Only 1 week above current date allowed. * * ================================================================== */ private void btnForth_Click(object sender, EventArgs e) { //Prevent logic error - user changes names but does not click 'open records' if (CheckValidTransition()) { //Correct the error - user change dropdown list selection but did not open txtFirstName.Text = currentWorkWeek.FirstName; txtLastName.Text = currentWorkWeek.LastName; } else return; //Move to next workWeek when not in last week int index = employeeWorkWeekList.IndexOf(currentWorkWeek); if (index == (employeeWorkWeekList.Count - 1)) //Last item { //Add new WorkWeek to table TimeSheet, with Week +7 of current week () //--Update timesheet table with new employee - name and employee id, the rest of the fields empty DateTime dateNextWeek; if (DateTime.TryParse(currentWorkWeek.Week, out dateNextWeek)) { dateNextWeek = dateNextWeek.AddDays(7); } //Add to timesheet table TimeSheetDatabase.AddWeekWork(currentWorkWeek.EmployeeID.ToString(), currentWorkWeek.FirstName, currentWorkWeek.LastName, WorkWeek.zeroDummy, WorkWeek.zeroDummy, WorkWeek.zeroDummy, WorkWeek.zeroDummy, WorkWeek.ellipsisDummy, WorkWeek.dashDummy, WorkWeek.dashDummy, dateNextWeek.ToString()); //Update employee WorkWeek list, and set currentWorkWeek employeeWorkWeekList = TimeSheetDatabase.GetAllWorkWeekForSingleEmployee(txtFirstName.Text, txtLastName.Text); currentWorkWeek = employeeWorkWeekList.Last(); //MessageBox.Show(currentWorkWeek.Week.ToString()); //Display UpdateWeekComboBox(currentWorkWeek); Display(currentWorkWeek); //Display Hours double hrs = CalculateHours(); lblTotal.Text = Math.Round(hrs, 1).ToString(); //Feedback MessageBox.Show(string.Format("Added new Time Sheet for employee {0} {1}", currentWorkWeek.FirstName, currentWorkWeek.LastName)); } else { //Change combobox cmbWeekSpan.SelectedItem = cmbWeekSpan.Items[index + 1]; } }
//After work week modification, and change selected item private void UpdateWeekComboBox(WorkWeek workWeek) { //Set combo box for weeks cmbWeekSpan.Items.Clear(); for (int i = 0; i < employeeWorkWeekList.Count; i++) { cmbWeekSpan.Items.Add(WorkWeek.DateToWeekSpan(employeeWorkWeekList[i].Week)); //Call convert date before entering val } cmbWeekSpan.SelectedItem = cmbWeekSpan.Items[employeeWorkWeekList.IndexOf(workWeek)]; }