// updates the due date on an open repair public ActionResult UpdateRepairAddComment(string itemUpc, string itemLoc, string newComment) { Trello t = new Models.Trello(); var cards = t.GetCards(itemLoc); string cardId = null; foreach (var card in cards) { if (card.name == itemUpc) { cardId = card.id; continue; } } if (cardId != null) { var user = db.tb_CSULabTechs.FirstOrDefault(m => m.ENAME == SessionVariables.CurrentUserId); newComment = newComment + " -- Posted by: " + user.First_Name + " " + user.Last_Name + " (" + DateTime.Now.ToString() + ")"; var date = t.PostCardComment(cardId, newComment); TempData["message"] = "Added new comment for Item #" + itemUpc + "."; return(RedirectToAction("Index")); } else { TempData["message"] = "There was an error locating the repair history for Item #" + itemUpc + ". Please try again."; return(RedirectToAction("Index")); } }
// Marks any existing checklist items as complete, closes the due date, and marks the repair request as closed public ActionResult CloseRepair(string itemUpc, string itemLoc, string description, string confirm) { if (itemUpc == null || itemLoc == null || description == "" || confirm != "close") { TempData["message"] = "To close a request for repair, you must include a closing note and confirm that the repair has been resolved. Please try again."; return(RedirectToAction("Index")); } if (confirm == "nevermind") { TempData["message"] = "To close a request for repair, you must confirm that the repair has been resolved. Please try again."; return(RedirectToAction("Index")); } bool success = false; Trello t = new Models.Trello(); // get card id first var cards = t.GetCards(itemLoc); string cardId = null; foreach (var card in cards) { if (card.name == itemUpc) { cardId = card.id; continue; } } if (cardId != null) { var user = db.tb_CSULabTechs.FirstOrDefault(m => m.ENAME == SessionVariables.CurrentUserId); // retrieves the checklist and close any open checklist items var checklists = t.GetChecklists(cardId); var checklistId = checklists.Last().id; List <Trello.CheckItem> checklistItems = t.GetChecklistItems(checklistId); foreach (var item in checklistItems) { var result = t.PutChangeChecklistItem(cardId, item.id, "complete"); } // post the close note as a comment description = "CLOSED --> " + description + " -- Posted by: " + user.First_Name + " " + user.Last_Name + "(" + DateTime.Now.ToString() + ")"; var commentId = t.PostCardComment(cardId, description); // mark the due date as complete var dueDateClosed = t.PutCloseDueDate(cardId); // determine success if (commentId != null && dueDateClosed != null) { success = true; } } if (success) // success { TempData["message"] = "The repair request for Item #" + itemUpc + " has been closed."; return(RedirectToAction("Index")); } else { TempData["message"] = "There was a problem closing this repair. Please try again."; return(RedirectToAction("Index")); } }
public ActionResult RequestRepair(string upc, string description, string duedate) { if (upc == null || description == null) { TempData["message"] = "To submit a request for repair, you must include both a valid UPC and a description of the issue to be resolved. Please try again."; return(RedirectToAction("Index")); } bool success = false; Trello t = new Models.Trello(); // get card id first var cards = t.GetCards(SessionVariables.CurrentLocation.ToString()); string cardId = null; foreach (var card in cards) { if (card.name == upc) { cardId = card.id; continue; } } if (cardId != null) { var user = db.tb_CSULabTechs.FirstOrDefault(m => m.ENAME == SessionVariables.CurrentUserId); // submit request by creating a new checklist on the card and adding the description as a comment description = description + " -- Posted by: " + user.First_Name + " " + user.Last_Name + " (" + DateTime.Now.ToString() + ")"; var commentId = t.PostCardComment(cardId, description); var checklistId = t.PostCardChecklist(cardId, DateTime.Now.ToString()); DateTime newDate; if (duedate == "") { newDate = DateTime.Now.Date.AddDays(14); } else { newDate = Convert.ToDateTime(duedate).Date; } string newDueDate = t.PutNewDueDate(cardId, newDate); string checkItem1 = t.PostCardChecklistItem(checklistId, "Diagnose"); string checkItem2 = t.PostCardChecklistItem(checklistId, "Resolve issue"); var dueDateOpened = t.PutOpenDueDate(cardId); if (commentId != null && checklistId != null && newDueDate != null) // id's were returned, so success { success = true; } } if (success) // success { TempData["message"] = "Item " + upc + " was submitted for repair."; return(RedirectToAction("Index")); } else { TempData["message"] = "There was a problem submitting this request. Please try again."; return(RedirectToAction("Index")); } }