Beispiel #1
0
        private void AddPreviousTimeSheets(TimeSheetInfo item)
        {
            if (item.ActualHoursNotOnTimeSheet.HasValue && item.ActualHoursNotOnTimeSheet > 0)
            {
                TimeSheetPeriod PastPeriod = new TimeSheetPeriod();
                PastPeriod.StartDate           = item.StartDate;
                PastPeriod.EndDate             = item.EndDate;
                PastPeriod.ActualHours         = (item.ActualHoursNotOnTimeSheet ?? 0);
                PastPeriod.ActualHoursFormated = item.ActualHoursNotOnTimeSheetFormattedString;
                PastPeriod.Status           = item.TimeSheet != null ? item.TimeSheet.ApprovalStatus : 0;
                PastPeriod.ShowSubmitButton = true;

                viewModel.PastPeriods.Add(PastPeriod);

                if (item.AllTimeSheetsForPeriod != null && item.AllTimeSheetsForPeriod.Count > 0)
                {
                    foreach (var ts in item.AllTimeSheetsForPeriod)
                    {
                        AddTimeSheet(ts);
                    }
                }
            }
            else
            {
                if (item.AllTimeSheetsForPeriod != null && item.AllTimeSheetsForPeriod.Count > 0)
                {
                    foreach (var ts in item.AllTimeSheetsForPeriod)
                    {
                        AddTimeSheet(ts);
                    }
                }
            }
        }
        /// <summary>
        /// CreatedBy : sangee
        /// CreatedOn : 15 Jan, 2017
        /// Description : Add Time Sheet Entry
        /// </summary>
        /// <param name="TimeSheetInfo"></param>
        /// <returns></returns>
        public bool AddLogTime(TimeSheetInfo TimeSheetInfo)
        {
            TimeSheetEntry timeSheetEntry = new TimeSheetEntry();

            try
            {
                if (TimeSheetInfo == null)
                {
                    return(false);
                }

                _unitOfWork.TimeSheetInfoRepository.Add(TimeSheetInfo);
                _unitOfWork.Commit();
                timeSheetEntry.ResourceInfoId  = TimeSheetInfo.ResourceId;
                timeSheetEntry.TimeSheetInfoId = TimeSheetInfo.Id;
                _unitOfWork.TimeSheetEntryRepository.Add(timeSheetEntry);
                _unitOfWork.Commit();

                if (TimeSheetInfo.Id > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex) { return(false); }
        }
 public IActionResult UpdateLogTimeSheetEntry([FromBody] TimeSheetInfo timeSheetInfo)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         bool status = _ITimeSheetEntryService.UpdateLogTimeSheetEntry(timeSheetInfo);
         if (status)
         {
             return(Ok());
         }
         else
         {
             return(NotFound());
         }
     }
     catch (Exception ex) { return(BadRequest(ex)); }
 }
        /// <summary>
        /// CreatedBy : sangee
        /// CreatedOn : 15 Jan, 2017
        /// Description : Update time sheet entry
        /// </summary>
        /// <param name="id"></param>
        /// <param name="timeSheetInfo"></param>
        /// <returns></returns>
        public bool UpdateLogTimeSheetEntry(TimeSheetInfo timeSheetInfo)
        {
            try
            {
                TimeSheetInfo _timeSheetInfoDb = _unitOfWork.TimeSheetInfoRepository.GetSingle(timeSheetInfo.Id);
                if (_timeSheetInfoDb == null)
                {
                    return(false);
                }

                _timeSheetInfoDb.ProjectId     = timeSheetInfo.ProjectId;
                _timeSheetInfoDb.Date          = timeSheetInfo.Date;
                _timeSheetInfoDb.Task          = timeSheetInfo.Task;
                _timeSheetInfoDb.TaskDetails   = timeSheetInfo.TaskDetails;
                _timeSheetInfoDb.Hours         = timeSheetInfo.Hours;
                _timeSheetInfoDb.BillingStatus = timeSheetInfo.BillingStatus;
                _unitOfWork.TimeSheetInfoRepository.Update(_timeSheetInfoDb);
                _unitOfWork.Commit();
                return(true);
            }
            catch (Exception ex) { return(false); }
        }
Beispiel #5
0
        public ActionResult CreateTimeSheet(string startDate, string endDate, string assignedProjects = "true", string completed = "false")
        {
            ProjectRequestEntities request = new ProjectRequestEntities();

            int sheetID = Convert.ToInt32(Request.QueryString["sheetID"]);

            string name = Convert.ToString(User.Identity.Name);

            name = name.Remove(0, 8).ToLower();

            IEnumerable <Chore> chores = request.Chores.Where(c => c.sheetID == sheetID);

            IEnumerable <Request> requests = request.Requests;

            IEnumerable <Location> locations = request.Locations.OrderBy(l => l.name);

            TimeSheet timeSheet = request.TimeSheets.FirstOrDefault(t => t.sheetID == sheetID);

            Regex reg = new Regex(@"^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$");

            if (startDate != null && reg.IsMatch(startDate))
            {
                try
                {
                    requests = requests.Where(i => i.dateRequested >= Convert.ToDateTime(startDate));
                }
                catch { }
            }

            if (endDate != null && reg.IsMatch(endDate))
            {
                try
                {
                    requests = requests.Where(i => i.dateRequested < Convert.ToDateTime(endDate).AddDays(1));
                }
                catch { }
            }

            if (completed == "false")
            {
                requests = requests.Where(i => i.completed == false);
            }

            if (assignedProjects == "true")
            {
                var assignments = request.RequestAssignments.Where(r => r.staffID == name).Select(r => r.requestID).ToList();
                requests = requests.Where(r => assignments.Contains(r.reuqestID));
            }

            TimeSheetInfo sheetInfo = new TimeSheetInfo
            {
                requests          = requests,
                chores            = chores,
                locations         = locations,
                timeSheet         = timeSheet,
                startDate         = startDate,
                endDate           = endDate,
                completedProjects = completed,
                assignedProjects  = assignedProjects
            };

            return(View(sheetInfo));
        }