/* 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"; } }
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 })); } }
/* 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 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")); } }