public ActionResult DeleteLinkedList(int id) { LinkedListSignature model = _db.LinkedListSignatures.Find(id); _db.LinkedListSignatures.Remove(model); _db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Forward(int id) { // Change current name attribute of routing slip //LinkedListSignatureNode llsn = _db.LinkedListSignatureNodes.SingleOrDefault(linkedlist => linkedlist.RoutingSlipID == id && linkedlist.Data.SignatureName == currname); LinkedListSignature lls = _db.LinkedListSignatures.SingleOrDefault(link => link.RoutingSlipID == id); LinkedListSignatureNode llsn = _db.LinkedListSignatureNodes.SingleOrDefault(node => node.Data.SignatureName == lls.CurrentName && node.RoutingSlipID == id); RoutingSlip rs = _db.RoutingSlips.Find(id); rs.LinkedListSignature.CurrentName = llsn.NextSNode.Data.SignatureName; //rs.LinkedListSignature.CurrentName = llsn.NextSNode.Data.SignatureName; //var newCurrent = llsn.NextSNode.Data.SignatureName; llsn.Data.DateRouted = DateTime.Now; //var model = _db.RoutingSlips.Find(id); //model.LinkedListSignature.CurrentName = newCurrent; if (ModelState.IsValid) { _db.SaveChanges(); return(RedirectToAction("Index", "RoutingSlip")); } return(View(id)); }
public ActionResult CreateLinkedList(int id) { var model = _db.RoutingSlips.Find(id); Signature Initiator = new Signature { SignatureName = model.RequestingEmployee, DateRouted = model.DateSubmitted, Status = "Originator", RoutingSlipID = id, }; LinkedListSignature lls = new LinkedListSignature { RoutingSlipID = id }; LinkedListSignatureNode headll = new LinkedListSignatureNode { Data = Initiator, RoutingSlipID = id }; List <LinkedListSignatureNode> llsn = new List <LinkedListSignatureNode> { headll }; LinkedListSignatureNode current = new LinkedListSignatureNode(); current = headll; //var count = 2; if (model.ForwardTo.Contains(",")) { model.ForwardTo = model.ForwardTo.Substring(0, model.ForwardTo.Length - 1); string[] namesArray = model.ForwardTo.Split(','); List <string> namesList = new List <string>(namesArray.Length); for (var i = 0; i < namesArray.Length; i++) { namesArray[i] = namesArray[i].Trim(); Signature s = new Signature { SignatureName = namesArray[i], Status = "N/A", RoutingSlipID = id, // //SignatureID = count++, }; LinkedListSignatureNode sNode = new LinkedListSignatureNode { Data = s, RoutingSlipID = id }; if (i == 0) { lls.CurrentName = sNode.Data.SignatureName; } llsn.Add(sNode); } } else { Signature s = new Signature { SignatureName = model.ForwardTo, Status = "N/A", RoutingSlipID = id, }; LinkedListSignatureNode sNode = new LinkedListSignatureNode { Data = s, RoutingSlipID = id }; //current.Next = sNode; llsn.Add(current); //sNode.Prev = current; current = sNode; llsn.Add(sNode); lls.CurrentName = sNode.Data.SignatureName; } lls.LLSNodes = llsn; model.LinkedListSignature = lls; if (ModelState.IsValid) { _db.SaveChanges(); return(RedirectToAction("SetPrevNext", model.RoutingSlipID)); //model } return(View(model)); }