private TimesheetDto TimesheetToDto(Timesheet ts)
        {
            TimesheetDto tsdto = new TimesheetDto();

            tsdto.DateCreated  = ts.DateCreated;
            tsdto.Id           = ts.Id;
            tsdto.Owner        = ts.Owner;
            tsdto.Role         = ts.Role;
            tsdto.Username     = ts.Username;
            tsdto.WeekStarting = ts.WeekStarting;
            tsdto.Status       = ts.Status.ToString();

            tsdto.TimesheetEntries = new List <TimesheetEntryDto>();
            foreach (TimesheetEntry tse in ts.TimesheetEntries)
            {
                TimesheetEntryDto tsedto = new TimesheetEntryDto();
                tsedto.DateCreated = tse.DateCreated;
                tsedto.Day         = tse.Day;
                tsedto.Details     = tse.Details;
                tsedto.EndTime     = tse.EndTime;
                tsedto.Id          = tse.Id;
                tsedto.Code        = tse.Code;
                tsedto.StartTime   = tse.StartTime;
                tsedto.Username    = tse.Timesheet.Username;
                tsedto.Chargeable  = tse.Chargeable;

                tsdto.TimesheetEntries.Add(tsedto);
            }

            return(tsdto);
        }
Beispiel #2
0
        public IEnumerable <TimesheetEntryDto> GetTimesheetsForProjectOnDate(string proj, int month, int day, int year)
        {
            List <TimesheetEntryDto> entries = new List <TimesheetEntryDto>();
            DateTime weekStaring             = new DateTime(year, month, day);

            IEnumerable <Timesheet> timesheets = _timeSheetRepository.GetTimesheets().Where(r => r.Status.ToString().Equals("Approved"))
                                                 .OrderByDescending(r => r.WeekStarting);

            foreach (Timesheet ts in timesheets)
            {
                if (!ts.WeekStarting.Date.ToString("d").Equals(weekStaring.Date.ToString("d")))
                {
                    continue;
                }
                else
                {
                    foreach (TimesheetEntry tse in ts.TimesheetEntries)
                    {
                        //If Timesheet Entry not chargeable, ignore.
                        if (!tse.Chargeable)
                        {
                            continue;
                        }
                        if (tse.Code.Equals(proj))
                        {
                            TimesheetEntryDto tsedto = new TimesheetEntryDto();
                            tsedto.DateCreated = tse.DateCreated;
                            tsedto.Day         = tse.Day;
                            tsedto.Details     = tse.Details;
                            tsedto.EndTime     = tse.EndTime;
                            tsedto.Id          = tse.Id;
                            tsedto.Code        = tse.Code;
                            tsedto.StartTime   = tse.StartTime;
                            tsedto.Username    = tse.Timesheet.Username;
                            tsedto.Chargeable  = tse.Chargeable;

                            entries.Add(tsedto);
                        }
                    }
                }
            }
            return(entries);
        }
Beispiel #3
0
        private TimesheetDto ConvertToDto(Timesheet ts)
        {
            TimesheetDto tsdto = new TimesheetDto();

            tsdto.DateCreated  = ts.DateCreated;
            tsdto.Id           = ts.Id;
            tsdto.Owner        = ts.Owner;
            tsdto.Role         = ts.Role;
            tsdto.Username     = ts.Username;
            tsdto.WeekStarting = ts.WeekStarting;
            tsdto.Status       = ts.Status.ToString();
            if (ts.DateSubmitted.HasValue)
            {
                tsdto.DateSubmitted = ts.DateSubmitted.Value;
            }


            tsdto.TimesheetEntries = new List <TimesheetEntryDto>();
            tsdto.TimesheetNotes   = new List <TimesheetNoteDto>();

            foreach (TimesheetEntry tse in ts.TimesheetEntries)
            {
                TimesheetEntryDto tsedto = new TimesheetEntryDto();
                tsedto.DateCreated = tse.DateCreated;
                tsedto.Day         = tse.Day;
                tsedto.Details     = tse.Details;
                tsedto.EndTime     = tse.EndTime;
                tsedto.Id          = tse.Id;
                tsedto.Code        = tse.Code;
                tsedto.StartTime   = tse.StartTime;
                tsedto.Username    = tse.Timesheet.Username;
                tsedto.Chargeable  = tse.Chargeable;

                tsdto.TimesheetEntries.Add(tsedto);
            }

            foreach (TimesheetNote note in ts.TimesheetNotes)
            {
                tsdto.TimesheetNotes.Add(_mapper.Map <TimesheetNoteDto>(note));
            }

            return(tsdto);
        }