コード例 #1
0
        public void AddVacationDay(int year, int month, int day, string employeeName)
        {
            Employee employee = DatabaseHandler.GetEmployee(employeeName);

            if (employee == null)
            {
                employee = new Employee {
                    Name = employeeName
                };
                employee.Id = DatabaseHandler.AddEmployee(employee);
            }

            VacationDay vacationDay = new VacationDay {
                Date = new DateTime(year, month, day), EmployeeId = employee.Id
            };

            VacationDay existingVacationDay = DatabaseHandler.GetVacationDay(vacationDay.Date, employee.Id);

            if (existingVacationDay == null)
            {
                DatabaseHandler.AddVacationDay(vacationDay);
            }
            else
            {
                Response.StatusCode = (int)HttpStatusCode.Conflict;
            }
        }
コード例 #2
0
 private static void GenerateVacationDaysListFromBooking(VacationBooking vacationBooking, List <DateTime> holidayList, List <DateTime> userVacDates, List <DateTime> previousDates,
                                                         out List <DateTime> doubleBookingDatesList, out List <VacationDay> vacdayList)
 {
     doubleBookingDatesList = new List <DateTime>();
     vacdayList             = new List <VacationDay>();
     for (DateTime d = vacationBooking.FromDate; d <= vacationBooking.ToDate; d = d.AddDays(1))
     {
         var vacday = new VacationDay()
         {
             Id                = 0,
             VacationDate      = d,
             VacationBookingId = vacationBooking.Id,
         };
         if (d.DayOfWeek == DayOfWeek.Saturday || d.DayOfWeek == DayOfWeek.Sunday)
         {
             continue;
         }
         if (holidayList.Contains(d))
         {
             continue;
         }
         if (previousDates.Contains(d))
         {
             vacdayList.Add(vacday);
             continue;
         }
         if (userVacDates.Contains(d))
         {
             doubleBookingDatesList.Add(d);
             continue;
         }
         vacdayList.Add(vacday);
     }
 }
コード例 #3
0
        public List <VacationDay> GetVacationDayFromBookings(VacationBooking vacationBooking)
        {
            var vacdayList = new List <VacationDay>();

            for (DateTime d = vacationBooking.FromDate; d <= vacationBooking.ToDate; d = d.AddDays(1))
            {
                var vacday = new VacationDay()
                {
                    Id                = 0,
                    VacationDate      = d,
                    VacationBookingId = vacationBooking.Id,
                };
                if (d.DayOfWeek == DayOfWeek.Saturday || d.DayOfWeek == DayOfWeek.Sunday)
                {
                    continue;
                }
                vacdayList.Add(vacday);
            }
            return(vacdayList);
        }