示例#1
0
 /* Created off TimeSheetMaster ~ TimeSheetDetails */
 public void Create2ndTimeSheetDetails(TimeSheetMaster master,
                                       TimeSheetProjectsModel projectsModel)
 {   // METHOD FOR CREATING A 2ND TIMESHEETDETAIL RECORD
     try
     {
         var detailsModel2 = new TimeSheetDetails();
         detailsModel2.Hours = master.TotalHours;
         /* PERIOD */
         detailsModel2.ProjectId         = (int)projectsModel.ProjectId2;
         detailsModel2.UserId            = master.UserId;
         detailsModel2.DateCreated       = master.DateCreated;
         detailsModel2.TimeSheetMasterId = master.TimeSheetMasterId;
         detailsModel2.Sunday            = Convert.ToInt32(projectsModel.P1w2d1);
         detailsModel2.Monday            = Convert.ToInt32(projectsModel.P1w2d2);
         detailsModel2.Tuesday           = Convert.ToInt32(projectsModel.P1w2d3);
         detailsModel2.Wednesday         = Convert.ToInt32(projectsModel.P1w2d4);
         detailsModel2.Thursday          = Convert.ToInt32(projectsModel.P1w2d5);
         detailsModel2.Friday            = Convert.ToInt32(projectsModel.P1w2d6);
         detailsModel2.Saturday          = Convert.ToInt32(projectsModel.P1w2d7);
         context.TimeSheetDetails.Add(detailsModel2);
         context.SaveChanges();
         TempData["SuccessDetails"] = "2 TimeSheetDetails Created Successfully";
     }
     catch (Exception ex)
     {
         Console.Write(ex.Message);
         TempData["ErrorDetails"] = "The 2nd TimeSheetDetail Created Unsuccessfully";
     }
 }
示例#2
0
        public async Task <ActionResult> UserEditTimeSheet(TimeSheetProjectsModel model)
        {
            try
            {
                if (model == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                if (ModelState.IsValid)
                {
                    var master = await context.TimeSheetMaster.Where(t =>
                                                                     t.TimeSheetMasterId == model.TimeMasterId).FirstOrDefaultAsync();

                    master.DateCreated = model.Proj7;
                    master.FromDate    = model.Proj1;
                    master.ToDate      = model.Proj1.AddDays(7);
                    master.TotalHours  = model.ProjTotal1;
                    master.Comment     = model.ProjDesc1;
                    var details = await context.TimeSheetDetails.Where(t =>
                                                                       t.TimeSheetMasterId == model.TimeMasterId &&
                                                                       t.TimeSheetId == model.TimeDetailsId).FirstOrDefaultAsync();

                    details.ProjectId = model.ProjectId1;
                    details.Sunday    = model.P1w1d1;
                    details.Monday    = model.P1w1d2;
                    details.Tuesday   = model.P1w1d3;
                    details.Wednesday = model.P1w1d4;
                    details.Thursday  = model.P1w1d5;
                    details.Friday    = model.P1w1d6;
                    details.Saturday  = model.P1w1d7;
                    details.Hours     = model.ProjTotal1;

                    context.Entry(master).State  = EntityState.Modified;
                    context.Entry(details).State = EntityState.Modified;
                    await context.SaveChangesAsync();

                    TempData["Success"] = "TimeSheet Edit Successful";
                    return(RedirectToAction("UserTimeSheets", new { id = model.UserId }));
                }
                TempData["Error"] = "TimeSheet Edit Failure";
                return(RedirectToAction("UserTimeSheets", new { id = model.UserId }));
            }
            catch (Exception ex)
            {
                Console.Write(ex.Message);
                TempData["Error"] = "TimeSheet Edit Failure";
                return(RedirectToAction("UserTimeSheets", new { id = model.UserId }));
            }
        }
示例#3
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");
            }
        }
示例#4
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"));
            }
        }