Exemple #1
0
        public TimeAndAttendanceScheduledToWork BuildScheduledToWork(TimeAndAttendanceScheduleView scheduleView, TimeAndAttendanceScheduleDayView dayView, EmployeeView employeeItem, string payCode)
        {
            TimeAndAttendanceScheduledToWork scheduledToWork = new TimeAndAttendanceScheduledToWork();

            applicationViewFactory.MapTimeAndAttendanceScheduledToWorkEntity(ref scheduledToWork, scheduleView, dayView, employeeItem, payCode);

            return(scheduledToWork);
        }
Exemple #2
0
        public override void MapTimeAndAttendanceScheduledToWorkEntity(ref TimeAndAttendanceScheduledToWork scheduledToWork, TimeAndAttendanceScheduleView scheduleView, TimeAndAttendanceScheduleDayView dayView, EmployeeView employeeView, string payCode)

        {
            scheduledToWork.EmployeeId    = employeeView.EmployeeId;
            scheduledToWork.EmployeeName  = employeeView.EmployeeName;
            scheduledToWork.ScheduleId    = scheduleView.ScheduleId;
            scheduledToWork.ScheduleName  = scheduleView.ScheduleName;
            scheduledToWork.StartDate     = dayView.StartDate;
            scheduledToWork.EndDate       = dayView.EndDate;
            scheduledToWork.StartDateTime = dayView.StartDateTime;
            scheduledToWork.EndDateTime   = dayView.EndDateTime;
            scheduledToWork.ShiftId       = scheduleView.ShiftId ?? 0;
            scheduledToWork.JobCode       = employeeView.JobCode;
            scheduledToWork.WorkedJobCode = employeeView.JobCode;
            scheduledToWork.PayCode       = payCode;
        }
        public IList <TimeAndAttendanceScheduledToWork> BuildScheduledToWork(TimeAndAttendanceScheduleView scheduleView, IList <EmployeeView> employeeViews, string payCode)
        {
            IList <TimeAndAttendanceScheduledToWork> retList = new List <TimeAndAttendanceScheduledToWork>();

            DateTime startDay = scheduleView.StartDate ?? DateTime.Now;
            DateTime endDay   = scheduleView.EndDate ?? DateTime.Now;

            TimeSpan difference = endDay - startDay;

            foreach (var employeeItem in employeeViews)
            {
                for (int i = 0; i <= difference.Days; i++)
                {
                    bool monday    = scheduleView.Monday ?? false;
                    bool tuesday   = scheduleView.Tuesday ?? false;
                    bool wednesday = scheduleView.Wednesday ?? false;
                    bool thursday  = scheduleView.Thursday ?? false;
                    bool friday    = scheduleView.Friday ?? false;
                    bool saturday  = scheduleView.Saturday ?? false;
                    bool sunday    = scheduleView.Sunday ?? false;


                    DateTime scheduleStartDate = scheduleView.StartDate ?? DateTime.Now;
                    DateTime currentDate       = scheduleStartDate.AddDays(i);
                    int?     durationHours     = scheduleView.DurationHours ?? 0;
                    int?     durationMinutes   = scheduleView.DurationMinutes ?? 0;

                    string shiftStartTime = scheduleView.ShiftStartTime;
                    string shiftEndTime   = scheduleView.ShiftEndTime;


                    DateTime startDate = unitOfWork.timeAndAttendanceRepository.BuildShortDate(currentDate, shiftStartTime);
                    DateTime endDate   = unitOfWork.timeAndAttendanceRepository.AddTimeShortDate(startDate, durationHours ?? 0, durationMinutes ?? 0);

                    string startDateTime = unitOfWork.timeAndAttendanceRepository.BuildLongDate(currentDate, shiftStartTime);
                    string endDateTime   = unitOfWork.timeAndAttendanceRepository.BuildLongDate(endDate);

                    TimeAndAttendanceScheduleDayView currentDayView = new TimeAndAttendanceScheduleDayView();
                    currentDayView.StartDate     = currentDate;
                    currentDayView.StartDateTime = startDateTime;
                    currentDayView.EndDate       = endDate;
                    currentDayView.EndDateTime   = endDateTime;


                    if (
                        (currentDate.DayOfWeek == DayOfWeek.Monday && monday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Tuesday && tuesday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Wednesday && wednesday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Thursday && thursday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Friday && friday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Saturday && saturday) ||
                        (currentDate.DayOfWeek == DayOfWeek.Sunday && sunday)
                        )
                    {
                        TimeAndAttendanceScheduledToWork scheduledToWork = unitOfWork.timeAndAttendanceScheduledToWorkRepository.BuildScheduledToWork(scheduleView, currentDayView, employeeItem, payCode);
                        retList.Add(scheduledToWork);
                    }
                }
            }

            return(retList);
        }
Exemple #4
0
 public abstract void MapTimeAndAttendanceScheduledToWorkEntity(ref TimeAndAttendanceScheduledToWork scheduledToWork, TimeAndAttendanceScheduleView scheduleView, TimeAndAttendanceScheduleDayView dayView, EmployeeView employeeView, string payCode);