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); }
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); }
public abstract void MapTimeAndAttendanceScheduledToWorkEntity(ref TimeAndAttendanceScheduledToWork scheduledToWork, TimeAndAttendanceScheduleView scheduleView, TimeAndAttendanceScheduleDayView dayView, EmployeeView employeeView, string payCode);