}//edit // GET: WorkAssignments/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkAssignments workassdetail = db.WorkAssignments.Find(id); if (workassdetail == null) { return(HttpNotFound()); } WorkAssignmentsViewModel view = new WorkAssignmentsViewModel(); view.Id_WorkAssignment = workassdetail.Id_WorkAssignment; view.Title = workassdetail.Title; view.Description = workassdetail.Description; view.Deadline = workassdetail.Deadline; view.InProgress = workassdetail.InProgress; view.InProgressAt = workassdetail.InProgressAt; view.CompletedAt = workassdetail.CompletedAt; view.Completed = workassdetail.Completed; view.LastModifiedAt = DateTime.Now; view.DeletedAt = DateTime.Now; view.Active = workassdetail.Active; view.Id_Customer = workassdetail.Customers?.Id_Customer; view.CustomerName = workassdetail.Customers?.CustomerName; return(View(view)); }
// GET: WorkAssignments/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkAssignments workassdetail = db.WorkAssignments.Find(id); if (workassdetail == null) { return(HttpNotFound()); } WorkAssignmentsViewModel view = new WorkAssignmentsViewModel(); view.Id_WorkAssignment = workassdetail.Id_WorkAssignment; view.Title = workassdetail.Title; view.Description = workassdetail.Description; view.Deadline = workassdetail.Deadline.GetValueOrDefault(); view.CreatedAt = workassdetail.CreatedAt.GetValueOrDefault(); view.InProgress = workassdetail.InProgress; view.InProgressAt = workassdetail.InProgressAt.GetValueOrDefault(); view.CompletedAt = workassdetail.CompletedAt.GetValueOrDefault(); view.Completed = workassdetail.Completed; view.LastModifiedAt = workassdetail.LastModifiedAt; view.DeletedAt = workassdetail.DeletedAt.GetValueOrDefault(); view.Active = workassdetail.Active; view.Id_Customer = workassdetail.Customers?.Id_Customer; view.CustomerName = workassdetail.Customers?.CustomerName; ViewBag.CustomerName = new SelectList((from c in db.Customers select new { Id_Customer = c.Id_Customer, CustomerName = c.CustomerName }), "Id_Customer", "CustomerName", view.Id_Customer); return(View(view)); }
public ActionResult Edit(WorkAssignmentsViewModel model) { WorkAssignments wam = db.WorkAssignments.Find(model.Id_WorkAssignment); wam.Title = model.Title; wam.Description = model.Description; wam.Deadline = model.Deadline.GetValueOrDefault(); wam.CreatedAt = model.CreatedAt.GetValueOrDefault(); wam.InProgress = model.InProgress; wam.InProgressAt = model.InProgressAt.GetValueOrDefault(); //wam.CompletedAt = model.CompletedAt.GetValueOrDefault(); wam.CompletedAt = DateTime.Now; wam.Completed = model.Completed; wam.LastModifiedAt = DateTime.Now; wam.DeletedAt = model.DeletedAt.GetValueOrDefault(); wam.Active = true; int customerId = int.Parse(model.CustomerName); if (customerId > 0) { Customers cus = db.Customers.Find(customerId); wam.Id_Customer = cus.Id_Customer; } ViewBag.CustomerName = new SelectList((from c in db.Customers select new { Id_Customer = c.Id_Customer, CustomerName = c.CustomerName }), "Id_Customer", "CustomerName", wam.Id_Customer); db.SaveChanges(); return(RedirectToAction("Index")); }//edit
public WorkModel GetModel(string workName) { panconDatabaseEntities entities = new panconDatabaseEntities(); try { string chosenWorkId = workName; WorkAssignments chosenWorkData = (from cw in entities.WorkAssignments where (cw.Active == true) && (cw.WorkAssignmentId.ToString() == chosenWorkId) select cw).FirstOrDefault(); WorkModel chosenWorkModel = new WorkModel() { WorkTitle = chosenWorkData.Title, Description = chosenWorkData.Description, Deadline = chosenWorkData.Deadline.Value }; return(chosenWorkModel); } finally { entities.Dispose(); } }
public ActionResult DeleteConfirmed(int id) { WorkAssignments workAssignments = db.WorkAssignments.Find(id); db.WorkAssignments.Remove(workAssignments); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult CreateNew([FromBody] WorkAssignments workAssignment) { tuntidbContext db = new tuntidbContext(); try { db.WorkAssignments.Add(workAssignment); db.SaveChanges(); return(Ok(workAssignment.IdWorkAssignment)); } catch { return(BadRequest("Adding work assignment failed")); } finally { db.Dispose(); } }
}//Index // GET: WorkAssignments/Details/5 public ActionResult Details(int?id) { WorkAssignmentsViewModel model = new WorkAssignmentsViewModel(); MobileWorkDataEntities entities = new MobileWorkDataEntities(); try { WorkAssignments workassdetail = entities.WorkAssignments.Find(id); if (workassdetail == null) { return(HttpNotFound()); } // muodostetaan näkymämalli tietokannan rivien pohjalta WorkAssignmentsViewModel view = new WorkAssignmentsViewModel(); view.Id_WorkAssignment = workassdetail.Id_WorkAssignment; view.Title = workassdetail.Title; view.Description = workassdetail.Description; view.Deadline = workassdetail.Deadline; view.CreatedAt = workassdetail.CreatedAt; view.InProgress = workassdetail.InProgress; view.InProgressAt = workassdetail.InProgressAt; view.CompletedAt = workassdetail.CompletedAt; view.Completed = workassdetail.Completed; view.LastModifiedAt = workassdetail.LastModifiedAt; view.DeletedAt = workassdetail.DeletedAt; view.Active = workassdetail.Active; view.Id_Customer = workassdetail.Customers?.Id_Customer; view.CustomerName = workassdetail.Customers?.CustomerName; ViewBag.CustomerName = new SelectList((from c in db.Customers select new { Id_Customer = c.Id_Customer, CustomerName = c.CustomerName }), "Id_Customer", "CustomerName", view.Id_Customer); model = view; } finally { entities.Dispose(); } return(View(model)); }//details
public ActionResult Create(WorkAssignmentsViewModel model) { MobileWorkDataEntities db = new MobileWorkDataEntities(); WorkAssignments wam = new WorkAssignments(); wam.Title = model.Title; wam.Description = model.Description; wam.Deadline = model.Deadline; wam.CreatedAt = DateTime.Now; wam.InProgress = model.InProgress; wam.InProgressAt = model.InProgressAt; wam.CompletedAt = model.CompletedAt; wam.Completed = model.Completed; wam.LastModifiedAt = DateTime.Now; wam.Active = true;; db.WorkAssignments.Add(wam); int customerId = int.Parse(model.CustomerName); if (customerId > 0) { Customers cus = db.Customers.Find(customerId); wam.Id_Customer = cus.Id_Customer; } ViewBag.CustomerName = new SelectList((from c in db.Customers select new { Id_Customer = c.Id_Customer, CustomerName = c.CustomerName }), "Id_Customer", "CustomerName", null); try { db.SaveChanges(); } catch (Exception ex) { } return(RedirectToAction("Index")); }//create
[HttpPost] //verbiattribuutti public bool PostStatus(WorkAssignmentOperationModel input) { MobileWorkDataEntities entities = new MobileWorkDataEntities(); try { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } //NumberStyles style; //CultureInfo provider; //provider = new CultureInfo("fi-FI"); //string valueString = input.Latitude.ToString("R", CultureInfo.InvariantCulture); //style = NumberStyles.AllowDecimalPoint; if (input.Operation == "Start") { int assignmentId = assignment.Id_WorkAssignment; Timesheets newEntry = new Timesheets() { Id_WorkAssignment = assignmentId, StartTime = DateTime.Now, WorkComplete = false, Active = true, CreatedAt = DateTime.Now }; entities.Timesheets.Add(newEntry); } else if (input.Operation == "Stop") { int assignmentId = assignment.Id_WorkAssignment; Timesheets existing = (from ts in entities.Timesheets where (ts.Id_WorkAssignment == assignmentId) && (ts.Active == true) && (ts.WorkComplete == false) orderby ts.StartTime descending select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public bool PostStatus(WorkAssignmentOperationModel input) { TimesheetEntities entities = new TimesheetEntities(); try { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } if (input.Operation == "Start") { int assignmentId = assignment.Id_WorkAssignment; Timesheets newEntry = new Timesheets() { Id_WorkAssignment = assignmentId, StartTime = DateTime.Now, WorkComplete = false, Active = true, CreatedAt = DateTime.Now }; entities.Timesheets.Add(newEntry); //Päivitetään samalla work-assignmentin tilatietoja assignment.InProgress = true; assignment.InProgressAt = DateTime.Now; assignment.LastModifiedAt = DateTime.Now; } else if (input.Operation == "Stop") { int assignmentId = assignment.Id_WorkAssignment; Timesheets existing = (from ts in entities.Timesheets where (ts.Id_WorkAssignment == assignmentId) && (ts.Active == true) && (ts.WorkComplete == false) orderby ts.StartTime descending select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; //Päivitetään samalla work-assignmentin tilatietoja assignment.InProgress = false; assignment.Completed = true; assignment.CompletedAt = DateTime.Now; assignment.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public bool PostWork(WorkModel model) { panconDatabaseEntities entities = new panconDatabaseEntities(); Customers customer = (from cu in entities.Customers where (cu.Active == true) && (cu.CustomerName == model.CustomerName) select cu).FirstOrDefault(); try { if (model.Operation == "Save") { WorkAssignments newEntry = new WorkAssignments() { CustomerId = customer.CustomerId, Title = model.WorkTitle, Description = model.Description, Deadline = model.Deadline, InProgress = true, CreatedAt = DateTime.Now, Active = true }; entities.WorkAssignments.Add(newEntry); } else if (model.Operation == "Modify") { WorkAssignments existing = (from wa in entities.WorkAssignments where (wa.WorkAssignmentId == model.WorkId) && (wa.Active == true) select wa).FirstOrDefault(); if (existing != null) { existing.Title = model.WorkTitle; existing.Description = model.Description; existing.Deadline = model.Deadline; existing.LastModified = DateTime.Now; } else { return(false); } } else if (model.Operation == "Delete") { WorkAssignments existing = (from wa in entities.WorkAssignments where (wa.WorkAssignmentId == model.WorkId) select wa).FirstOrDefault(); if (existing != null) { entities.WorkAssignments.Remove(existing); } else { return(false); } } else if (model.Operation == "Assign") { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.WorkAssignmentId == model.WorkId) && (wa.Active == true) && (wa.InProgress == true) select wa).FirstOrDefault(); if (assignment == null) { return(false); } Employees emp = (from e in entities.Employees where (e.EmployeeId == model.EmployeeId) select e).FirstOrDefault(); if (emp == null) { return(false); } int workId = assignment.WorkAssignmentId; int customerId = assignment.CustomerId.Value; assignment.InProgressAt = DateTime.Now; Timesheets newEntry = new Timesheets() { CustomerId = customerId, ContractorId = emp.ContractorId, EmployeeId = emp.EmployeeId, WorkAssignmentId = workId, StartTime = DateTime.Now, CreatedAt = DateTime.Now, Active = true, WorkComplete = false }; entities.Timesheets.Add(newEntry); } else if (model.Operation == "MarkComplete") { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.WorkAssignmentId == model.WorkId) && (wa.Active == true) && (wa.InProgress == true) && (wa.InProgressAt != null) select wa).FirstOrDefault(); if (assignment == null) { return(false); } int workId = assignment.WorkAssignmentId; int customerId = assignment.CustomerId.Value; assignment.CompletedAt = DateTime.Now; assignment.Completed = true; assignment.InProgress = false; Timesheets existing = (from ts in entities.Timesheets where (ts.WorkAssignmentId == workId) && (ts.CustomerId == customerId) select ts).FirstOrDefault(); if (existing != null) { existing.WorkComplete = true; existing.StopTime = DateTime.Now; existing.LastModified = DateTime.Now; existing.Comments = "Work set to completed by Admin"; } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public bool PostStatus(WorkAssignmentOperationModel input) // Todo: Ota myös customer ja employee tieto { tuntidbContext context = new tuntidbContext(); try { //Ensin haetaan työtehtävä Otsikon (title) perusteella ja nimetään se assignment muuttujaksi WorkAssignments assignment = (from wa in context.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } //--------------------------IF--START---------------------------------------------------------------------- else if (input.Operation == "Start") { if (assignment.InProgress == true || assignment.Completed == true) // Lisätty 4.5. { return(false); } else { int assignmentId = assignment.IdWorkAssignment; // Luodaan uusi timesheet työlle Timesheet newEntry = new Timesheet() { IdWorkAssignment = assignmentId, StartTime = DateTime.Now, //WorkComplete = false, ------------ poistettu turha kenttä Active = true, CreatedAt = DateTime.Now }; context.Timesheet.Add(newEntry); // Päivitetään työtehtävän tilaa myös work assignments tauluun WorkAssignments assignments = (from wa in context.WorkAssignments where (wa.IdWorkAssignment == assignmentId) && (wa.Active == true) select wa).FirstOrDefault(); assignment.InProgress = true; assignment.WorkStartedAt = DateTime.Now; assignment.LastModifiedAt = DateTime.Now; context.SaveChanges(); // talletetaan kaikki em muutokset } } //--------------------------------IF--STOP---------------------------------------------------------------------- else if (input.Operation == "Stop") { int assignmentId = assignment.IdWorkAssignment; // Halutaan muuttaa tietoja sekä timesheetiin... Timesheet existing = (from ts in context.Timesheet where (ts.IdWorkAssignment == assignmentId) && (ts.Active == true) select ts).FirstOrDefault(); //............että work assignmentteihin WorkAssignments assignments = (from wa in context.WorkAssignments where (wa.IdWorkAssignment == assignmentId) && (wa.Active == true) select wa).FirstOrDefault(); if (existing != null && assignment != null) { if (assignment.InProgress == false || assignment.Completed == true) // Muutettu 4.5. { return(false); } else { // Timesheetin uudet arvot existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; // Assignmentin uudet arvot assignment.LastModifiedAt = DateTime.Now; assignment.Completed = true; assignment.CompletedAt = DateTime.Now; assignment.InProgress = false; } } else { return(false); // Jos id tieto on null jommassa kummassa. } } context.SaveChanges(); // talletetaan kaikki em muutokset } catch { return(false); // Jos jotain muuta menee pileen. } finally { context.Dispose(); } return(true); // Mobiilisovellukselle palautetaan true }
public bool PostStatus(WorkAssignmentOperationModel input) { ProjektitDBCareContext context = new ProjektitDBCareContext(); try { // Haetaan aktiiviset työtehtävät nimen perusteella ja sijoitetaan se oneAssignment-muuttujaan WorkAssignments oneAssignment = (from wa in context.WorkAssignments where wa.Active == true && wa.Title == input.AssignmentTitle //Otsikko vastaa sitä, mitä mobiilisovellus on lähettänyt select wa).FirstOrDefault(); //Hajautetaan valitun työntekijän nimi kahteen muuttujaan etu- ja sukunimeksi //(Lisättiin WorkAssingmentOperationModel.cs:ään prop Name) string[] nameParts = input.Name.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); string fname = nameParts[0]; string lname = nameParts[1]; //Luodaan Employees tyyppinen olio (employee) edellisen nimen jaon perusteella Employees employee = (from e in context.Employees where e.Active == true && e.FirstName == fname && e.LastName == lname select e).FirstOrDefault(); if (oneAssignment == null) { return(false); } // ---------- Jos painettu "ALOITA TYÖ" -------------// else if (input.Operation == "Start") { if (oneAssignment.InProgress == true || oneAssignment.Completed == true) { return(false); } else { int assignmentId = oneAssignment.IdWorkAssignment; int employeeId = employee.IdEmployee; string oneComment = input.Comment; string latitude = input.Latitude; string longitude = input.Longitude; //Luodaan työlle uusi TimeSheet Timesheet newEntry = new Timesheet() { IdWorkAssignment = assignmentId, IdEmployee = employeeId, StartTime = DateTime.Now, Active = true, Comments = oneComment + " - " + fname, Longitude = longitude, Latitude = latitude, CreatedAt = DateTime.Now, LastModifiedAt = DateTime.Now }; context.Timesheet.Add(newEntry); //Päivitetään samalla myös WorkAssignments-taulua oneAssignment.InProgress = true; oneAssignment.WorkStartedAt = DateTime.Now; oneAssignment.LastModifiedAt = DateTime.Now; } //Tallennetaan kaikki em. muutokset tietokantaan context.SaveChanges(); } // ---------- Jos painettu "LOPETA TYÖ" -------------// else if (input.Operation == "Stop") { string oneFinalComment = input.Comment; int assignmentId = oneAssignment.IdWorkAssignment; //Haetaan tiedot Timesheet ja WorkAssignments-tauluista ja..... Timesheet timesheet = (from ts in context.Timesheet where ts.IdWorkAssignment == assignmentId && ts.Active == true select ts).FirstOrDefault(); WorkAssignments assignments = (from wa in context.WorkAssignments where wa.IdWorkAssignment == assignmentId && wa.Active == true select wa).FirstOrDefault(); //....muutetaan niiden tietoja if (timesheet != null && assignments != null) { if (assignments.InProgress == false || assignments.Completed == true) { return(false); } else { //Timesheet-taulun uudet tiedot timesheet.StopTime = DateTime.Now; timesheet.LastModifiedAt = DateTime.Now; timesheet.Comments = oneFinalComment + " - " + fname; //WorkAssignments-taulun uudet tiedot assignments.Completed = true; assignments.CompletedAt = DateTime.Now; assignments.InProgress = false; assignments.LastModifiedAt = DateTime.Now; } } else { return(false); //Jos id-tieto on null jommassa kummassa } } context.SaveChanges(); } catch (Exception) { return(false); //jos jotain meni pieleen } finally { context.Dispose(); } return(true); //Mobiilisovellukselle palautetaan true, kun kaikki onnistui }
public bool PostStatus(WorkAssignmentOperationModel input) { TimesheetMobileEntities entities = new TimesheetMobileEntities(); try { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } if (input.Operation == "Start") { int assignmentId = assignment.Id_WorkAssignment; Timesheet newEntry = new Timesheet() { Id_WorkAssignment = assignmentId, WorkComplete = false, StartTime = DateTime.Now, Active = true, CreatedAt = DateTime.Now }; entities.Timesheet.Add(newEntry); } else if (input.Operation == "Stop") { int assignmentId = assignment.Id_WorkAssignment; Timesheet existing = (from ts in entities.Timesheet where (ts.Id_WorkAssignment == assignmentId) && (ts.Active == true) select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }