public List <RosterData> GetByForMonth(DateTime startDate, DateTime endDate, int employeeId, int compnayId, int jobsiteId)
        {
            int sumDayOfEndTime = DateTime.DaysInMonth(endDate.Year, endDate.Month);
            var startTime       = new DateTime(startDate.Year, startDate.Month, 1, 0, 0, 0);
            var endTime         = new DateTime(endDate.Year, endDate.Month, sumDayOfEndTime, 0, 0, 0);

            var data = _rosterRepository.Find(x => x.EmployeeId == employeeId && x.Date >= startTime && x.Date <= endTime).ToList();
            // get list Shift Code
            var listShiftCode = _shiftJobSiteRepository.Find(x => x.JobSiteId == jobsiteId && x.DeleteFlag != DeleteFlg.Delete).ToList();

            //get list Shift Code
            var listShiftCodeSource = _tMSShiftRepository.Find(x => x.CompanyId == compnayId && x.DeleteFlag != DeleteFlg.Delete).ToList();

            // get list Atendance
            var lstAtendance = _attendanceRepository.Find(x => x.CompanyId == compnayId && x.DeleteFlag != DeleteFlg.Delete).ToList();

            var result = ProcessDataForTime(employeeId, startTime, endTime, data, listShiftCode, lstAtendance, listShiftCodeSource);

            return(result);
        }
        public List <TMSShiftViewModel> GetAll()
        {
            var data = _tmsShiftRepository.Find(x => x.DeleteFlag != DeleteFlg.Delete).ToList();

            return(_mapper.Map <List <TMSShift>, List <TMSShiftViewModel> >(data));
        }