//
        // GET: /TimeSheetMaster/Delete/5

        public ActionResult Delete(int id = 0)
        {
            TimeSheetMaster master = TimesheetRepository.GetTimeSheetMasterById(id);

            if (master == null)
            {
                return(HttpNotFound());
            }
            return(View(master));
        }
示例#2
0
        //
        // GET: /TimeSheet/Create

        public ActionResult Create()
        {
            // Create TimeSheet Master
            // Create Detail List based on the number of days from the calendar month
            PersonRepository personRepository = new PersonRepository(new ATSCEEntities());
            Staff            staff            = personRepository.GetStaffByID(2);

            TimeSheetMaster master = TimesheetRepository.CreateTimeSheetMasterTemplate(DateTime.Today, staff);

            return(View(master));
        }
示例#3
0
        //
        // GET: /TimeSheet/Details/5

        public ActionResult Details(int id)
        {
            TimeSheetMaster master = TimesheetRepository.GetTimeSheetMasterById(id);
            var             detail = master.TimeSheetDetail;

            if (detail == null)
            {
                return(HttpNotFound());
            }
            return(View(detail.ToList()));
        }
示例#4
0
        public ActionResult Edit(TimeSheetMaster master)
        {
            TimeSheetMaster newMaster = master;

            if (ModelState.IsValid)
            {
                newMaster.Save();
                return(RedirectToAction("Index"));
            }
            return(View(master));
        }
        public int DeleteTimesheetByOnlyTimeSheetMasterID(int TimeSheetMasterID)
        {
            int resultTimeSheetMaster  = 0;
            int resultTimeSheetDetails = 0;

            try
            {
                using (var _context = new DatabaseContext())
                {
                    var timesheetcount = (from ex in _context.TimeSheetMaster
                                          where ex.TimeSheetMasterID == TimeSheetMasterID
                                          select ex).Count();

                    if (timesheetcount > 0)
                    {
                        TimeSheetMaster timesheet = (from ex in _context.TimeSheetMaster
                                                     where ex.TimeSheetMasterID == TimeSheetMasterID
                                                     select ex).SingleOrDefault();

                        _context.TimeSheetMaster.Remove(timesheet);
                        resultTimeSheetMaster = _context.SaveChanges();
                    }

                    var timesheetdetailscount = (from ex in _context.TimeSheetDetails
                                                 where ex.TimeSheetMasterID == TimeSheetMasterID
                                                 select ex).Count();

                    if (timesheetdetailscount > 0)
                    {
                        var timesheetdetails = (from ex in _context.TimeSheetDetails
                                                where ex.TimeSheetMasterID == TimeSheetMasterID
                                                select ex).ToList();

                        _context.TimeSheetDetails.RemoveRange(timesheetdetails);
                        resultTimeSheetDetails = _context.SaveChanges();
                    }

                    if (resultTimeSheetMaster > 0 || resultTimeSheetDetails > 0)
                    {
                        return(1);
                    }
                    else
                    {
                        return(0);
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
 public ActionResult Create(TimeSheetMaster master)
 {
     if (ModelState.IsValid)
     {
         TimeSheetMaster newMaster = master;
         newMaster.Save();
         return(RedirectToAction("Index"));
     }
     ViewBag.PersonId  = new SelectList(TimesheetRepository.GetAllPersons(), "PersonId", "PersonName");
     ViewBag.ManagerId = new SelectList(TimesheetRepository.GetAllSupervisors(), "PersonId", "PersonName");
     ViewBag.CompanyId = new SelectList(TimesheetRepository.GetAllCompanies(), "CompanyId", "CompanyDescription");
     return(View(master));
 }
示例#7
0
        /// <summary>
        /// Method to insert Time Sheet Audit
        /// </summary>
        /// <param name="FromDate">FromDate</param>
        /// <param name="ToDate">ToDate</param>
        /// <param name="TotalHours">TotalHours</param>
        /// <param name="Comment">Comment</param>
        /// <param name="TimesheetStatus">TimesheetStatus</param>
        /// <returns></returns>
        private int SaveTimeSheetMaster(DateTime FromDate, DateTime ToDate, int TotalHours, string Comment, int TimesheetStatus, int userid)
        {
            TimeSheetMaster objtimesheetmaster = new TimeSheetMaster();

            objtimesheetmaster.TimeSheetMasterID = 0;
            objtimesheetmaster.UserID            = userid;
            objtimesheetmaster.CreatedOn         = DateTime.Now;
            objtimesheetmaster.FromDate          = FromDate;
            objtimesheetmaster.ToDate            = ToDate;
            objtimesheetmaster.TotalHours        = TotalHours;
            objtimesheetmaster.TimeSheetStatus   = TimesheetStatus;
            objtimesheetmaster.Comment           = Comment;
            int TimeSheetMasterID = _ITimeSheetRepository.AddTimeSheetMaster(objtimesheetmaster);

            return(TimeSheetMasterID);
        }
 public int AddTimeSheetMaster(TimeSheetMaster TimeSheetMaster)
 {
     try
     {
         using (var _context = new DatabaseContext())
         {
             _context.TimeSheetMaster.Add(TimeSheetMaster);
             _context.SaveChanges();
             int id = TimeSheetMaster.TimeSheetMasterID; // Yes it's here
             return(id);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
        public ActionResult Add(TimeSheetModel timesheetmodel)
        {
            try
            {
                if (timesheetmodel == null)
                {
                    ModelState.AddModelError(string.Empty, "Values Posted Are Not Accurate");
                    return(View());
                }

                TimeSheetMaster objtimesheetmaster = new TimeSheetMaster
                {
                    TimeSheetMasterID = 0,
                    UserID            = Convert.ToInt32(Session["UserID"]),
                    CreatedOn         = DateTime.Now,
                    FromDate          = timesheetmodel.hdtext1,
                    ToDate            = timesheetmodel.hdtext7,
                    TotalHours        = CalculateTotalHours(timesheetmodel),
                    TimeSheetStatus   = 1
                };
                int TimeSheetMasterID = _ITimeSheet.AddTimeSheetMaster(objtimesheetmaster);

                var count = ProjectSelectCount(timesheetmodel);

                if (TimeSheetMasterID > 0)
                {
                    Save(timesheetmodel, TimeSheetMasterID);
                    SaveDescription(timesheetmodel, TimeSheetMasterID);
                    _ITimeSheet.InsertTimeSheetAuditLog(InsertTimeSheetAudit(TimeSheetMasterID, 1));
                }

                TempData["TimeCardMessage"] = "Data Saved Successfully";

                return(RedirectToAction("Add", "TimeSheet"));
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#10
0
        /* Created off TimeSheetMaster ~ TimeSheetDetails */
        public void CreateTimeSheetDetails(TimeSheetMaster master,
                                           TimeSheetProjectsModel projectsModel)
        {
            // CURRENTLY SETUP FOR ONLY 1 TIME DETAILS RECORD AT A TIME.
            // WILL SETUP FOR MULTIPLE TIME DETAIL RECORDS EVENTUALLY.
            try
            {
                var detailsModel = new TimeSheetDetails();
                /* DAYS OF WEEK ?? */

                detailsModel.Hours = master.TotalHours;
                /* Period   ?  detailsModel.Period = "" */

                detailsModel.ProjectId         = (int)projectsModel.ProjectId1;
                detailsModel.UserId            = master.UserId;
                detailsModel.DateCreated       = master.DateCreated;
                detailsModel.TimeSheetMasterId = master.TimeSheetMasterId;
                detailsModel.Sunday            = projectsModel.P1w1d1;
                detailsModel.Monday            = projectsModel.P1w1d2;
                detailsModel.Tuesday           = projectsModel.P1w1d3;
                detailsModel.Wednesday         = projectsModel.P1w1d4;
                detailsModel.Thursday          = projectsModel.P1w1d5;
                detailsModel.Friday            = projectsModel.P1w1d6;
                detailsModel.Saturday          = projectsModel.P1w1d7;

                context.TimeSheetDetails.Add(detailsModel);
                context.SaveChanges();

                TempData["SuccessDetails"] = "TimeSheetDetails Created Successfully";
                //return RedirectToAction("TimeSheetList", "TimeSheet");
            }
            catch (Exception ex)
            {
                Console.Write(ex.Message);
                TempData["ErrorDetails"] = "TimeSheetDetails Created Unsuccessful";
                //return RedirectToAction("TimeSheetList", "TimeSheet");
            }
        }
        public ActionResult Add(TimeSheetModel timesheetmodel)
        {
            try
            {
                if (timesheetmodel == null)
                {
                    ModelState.AddModelError("", "Values Posted Are Not Accurate");
                    return(View());
                }

                TimeSheetMaster objtimesheetmaster = new TimeSheetMaster();
                objtimesheetmaster.TimeSheetMasterID = 0;
                objtimesheetmaster.UserID            = Convert.ToInt32(Session["UserID"]);
                objtimesheetmaster.CreatedOn         = DateTime.Now;
                objtimesheetmaster.FromDate          = timesheetmodel.hdtext1;
                objtimesheetmaster.ToDate            = timesheetmodel.hdtext7;
                objtimesheetmaster.TotalHours        = CalculateTotalHours(timesheetmodel);
                objtimesheetmaster.TimeSheetStatus   = 1;
                int TimeSheetMasterID = _ITimeSheet.AddTimeSheetMaster(objtimesheetmaster);

                var count = ProjectSelectCount(timesheetmodel);

                if (TimeSheetMasterID > 0)
                {
                    Save(timesheetmodel, TimeSheetMasterID); //used to call the code which update time sheet details table
                    SaveDescription(timesheetmodel, TimeSheetMasterID);
                    _ITimeSheet.InsertTimeSheetAuditLog(InsertTimeSheetAudit(TimeSheetMasterID, 1));
                }

                TempData["TimeCardMessage"] = "Data Saved Successfully";

                return(RedirectToAction("Add", "TimeSheet"));
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#12
0
        public ActionResult AddTimeSheet(TimeSheetProjectsModel timeSheetModel)
        {
            try
            {
                if (timeSheetModel == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                //if (ModelState.IsValid) {
                TimeSheetMaster masterModel = new TimeSheetMaster();
                masterModel.FromDate = timeSheetModel.Proj1;
                masterModel.ToDate   = timeSheetModel.Proj1.AddDays(7);
                /* NEED HRS 4 WEEK/END MONTH/NEW MONTH */

                masterModel.TotalHours  = timeSheetModel.ProjTotal1;
                masterModel.UserId      = User.Identity.GetUserId();
                masterModel.DateCreated = DateTime.Now;
                /* MONTH SUBMITTED */

                masterModel.TimeSheetStatus = 1;
                masterModel.Comment         = timeSheetModel.ProjDesc1;
                context.TimeSheetMaster.Add(masterModel);
                //var detailsModel = CreateTimeSheetDetails(masterModel, timeSheetModel);
                //context.TimeSheetDetails.Add(detailsModel);

                /*  possible way to insert multiple records with ID
                 *  using (var context = new MyDbContext) {
                 *  context.Clients.Add(client);
                 *  clientDetails.ClientId = client.Id;
                 *  context.ClientDetails.Add(clientDetails);
                 *  context.SaveChanges();      */
                context.SaveChanges();
                TempData["SuccessMaster"] = "TimeSheetMaster Created Successfully";
                //Create TimeSheetDetails
                CreateTimeSheetDetails(masterModel, timeSheetModel);

                /*  Need to add seperate Dates to each Project */
                TimeSheetMaster masterModel2 = new TimeSheetMaster();
                masterModel2.FromDate        = timeSheetModel.Proj1;
                masterModel2.ToDate          = timeSheetModel.Proj1.AddDays(7);
                masterModel2.TotalHours      = timeSheetModel.ProjTotal2;
                masterModel2.UserId          = User.Identity.GetUserId();
                masterModel2.DateCreated     = DateTime.Now;
                masterModel2.TimeSheetStatus = 1;
                masterModel2.Comment         = timeSheetModel.ProjDesc2;
                if (masterModel2.TotalHours != null)
                {
                    context.TimeSheetMaster.Add(masterModel2);
                    context.SaveChanges();
                    TempData["SuccessMaster"] = "2 TimeSheetMasters have been created Successfully";
                    Create2ndTimeSheetDetails(masterModel2, timeSheetModel);
                }
                return(RedirectToAction("TimeSheetList", "TimeSheet"));

                //}
                // TempData["Error"] = "TimeSheet Create Was Unsuccessful";
                // return RedirectToAction("TimeSheetList", "TimeSheet");
            }
            catch (Exception ex)
            {
                Console.Write(ex.Message);
                TempData["ErrorMaster"] = "TimeSheet Create Was Unsuccessful";
                return(RedirectToAction("TimeSheetList", "TimeSheet"));
            }
        }
 public ActionResult DeleteConfirmed(int id)
 {
     TimeSheetMaster.Delete(id);
     return(RedirectToAction("Index"));
 }
示例#14
0
        public IHttpActionResult SaveTimeSheet(TimeSheetData timesheetdata)
        {
            try
            {
                var timesheetStatus = (int)TimeSheetStatus.Save;
                if (timesheetdata.ActionType == "SubmitToSupervisor")
                {
                    timesheetStatus = (int)TimeSheetStatus.Submit;
                }
                //if new time sheet
                if (timesheetdata.TimeSheetMasterID < 1)
                {
                    timesheetdata.TimeSheetMasterID = SaveTimeSheetMaster(timesheetdata.FromDate, timesheetdata.ToDate, timesheetdata.TotalHours, timesheetdata.Comments, timesheetStatus, timesheetdata.UserId);
                    _ITimeSheetRepository.InsertTimeSheetAuditLog(InsertTimeSheetAudit(timesheetdata.TimeSheetMasterID, timesheetStatus, timesheetdata.UserId));
                }
                else
                {
                    var timesheetMaster = new TimeSheetMaster()
                    {
                        TimeSheetMasterID = timesheetdata.TimeSheetMasterID,
                        TimeSheetStatus   = timesheetStatus,
                        TotalHours        = timesheetdata.TotalHours
                    };
                    _ITimeSheetRepository.UpdateTimeSheetMaster(timesheetMaster);
                }
                foreach (List <TimeSheetDetailsView> TimeSheetList in timesheetdata.TimeSheetList)
                {
                    foreach (TimeSheetDetailsView item in TimeSheetList)
                    {
                        if (item.TimeSheetID > 0)
                        {
                            var timeSheet = new TimeSheetDetails()
                            {
                                TimeSheetID       = item.TimeSheetID,
                                TimeSheetMasterID = item.TimeSheetMasterID,
                                DaysofWeek        = item.DaysofWeek,
                                Hours             = item.Hours,
                                Period            = Convert.ToDateTime(item.Period, new CultureInfo("es-US", true)),
                                ProjectID         = item.ProjectID,
                                TaskId            = item.TaskID
                            };
                            _ITimeSheetRepository.UpdateTimeSheetDetail(timeSheet);
                        }
                        else
                        {
                            if (item.Period != null && item.Period != "undefined")
                            {
                                var period = Convert.ToDateTime(item.Period, new CultureInfo("es-US", true));
                                SaveTimeSheetDetail(item.DaysofWeek, item.Hours, period, item.ProjectID, timesheetdata.TimeSheetMasterID, item.TaskID, timesheetdata.UserId);
                            }
                        }
                    }
                }

                if (timesheetdata.ActionType == "SubmitToSupervisor")
                {
                    _ITimeSheetRepository.UpdateTimeSheetAuditStatus(timesheetdata.TimeSheetMasterID, timesheetdata.Comments, timesheetStatus);
                }
                return(Ok(true));
            }
            catch (Exception ex)
            {
                _logger.Error(ex.Message);
                return(NotFound());
            }
        }
 public static IEnumerable <TimeSheetMaster> GetAllTimeSheetMasters()
 {
     return(TimeSheetMaster.GetAll());
 }
        //----------------------------------------------------------------------------------

        public static TimeSheetMaster GetTimeSheetMasterById(int TimeSheetMasterId)
        {
            return(TimeSheetMaster.GetById(TimeSheetMasterId));
        }