public ActionResult OrderSummary(int?id) { var workOrders = db.WorkOrders.Include(w => w.Client).Include(w => w.QuoteEstimate); List <AssayOrderWithTestResults> AssayOrderList = new List <AssayOrderWithTestResults>(); IEnumerable <AssayOrder> AssayList = db.AssayOrders.ToList(); IEnumerable <TestResult> TestResList = db.TestResults.ToList(); foreach (AssayOrder item in AssayList) { if (item.WorkOrderID == id) { AssayOrderWithTestResults assayOrder = new AssayOrderWithTestResults(); assayOrder.AssayOrder = item; foreach (TestResult val in TestResList) { if (val.AssayOrderID == item.AssayOrderID) { assayOrder.testResults.Add(val); } } AssayOrderList.Add(assayOrder); } } return(View(AssayOrderList)); }
// GET: AssayOrder/Edit/5 public ActionResult Edit(int?id, int?WorkOrderID) { AssayOrderWithTestResults assayOrderWithTestResults = new AssayOrderWithTestResults(); ViewBag.WorkOrderID = WorkOrderID; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AssayOrder assayOrder = db.AssayOrders.Find(id); if (assayOrder == null) { return(HttpNotFound()); } ViewBag.PriorityLevelID = new SelectList(db.PriorityLevels, "PriorityLevelID", "ModifiedBy", assayOrder.PriorityLevelID); ViewBag.AssayID = new SelectList(db.ProtocolNotebooks, "AssayID", "AssayName", assayOrder.AssayID); assayOrderWithTestResults.AssayOrder = assayOrder; IEnumerable <TestResult> TestResList = db.TestResults.ToList(); foreach (TestResult val in TestResList) { if (val.AssayOrderID == assayOrder.AssayOrderID) { assayOrderWithTestResults.testResults.Add(val); } } return(View(assayOrderWithTestResults)); }
public ActionResult Edit([Bind(Include = "AssayOrderID,WorkOrderID,PriorityLevelID,AssayID,ModifiedBy,ModifiedDate,CreatedBy,CreatedDate,CompoundID")] AssayOrder assayOrder, int?WorkOrderID) { AssayOrderWithTestResults assayOrderWithTestResults = new AssayOrderWithTestResults(); if (ModelState.IsValid) { db.Entry(assayOrder).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Details", "WorkOrders", new { id = assayOrder.WorkOrderID })); } ViewBag.PriorityLevelID = new SelectList(db.PriorityLevels, "PriorityLevelID", "ModifiedBy", assayOrder.PriorityLevelID); ViewBag.AssayID = new SelectList(db.ProtocolNotebooks, "AssayID", "AssayName", assayOrder.AssayID); assayOrderWithTestResults.AssayOrder = assayOrder; return(View(assayOrderWithTestResults)); }
// GET: Client public ActionResult ClientOrderStatus(int?ordernum) { if (!IsClient()) { RedirectToAction("Index"); } ViewBag.ordernumber = ordernum; //need a list of assays where the work order is equal to the ordernum List <AssayOrderWithTestResults> AssayOrderList = new List <AssayOrderWithTestResults>(); //List<AssayOrder> assays = new List<AssayOrder>(); IEnumerable <AssayOrder> AssayList = db.AssayOrders.ToList(); IEnumerable <TestResult> TestResList = db.TestResults.ToList(); //Dictionary<int, TestResult> TestResDictionary = new Dictionary<int, TestResult>(); foreach (AssayOrder item in AssayList) { if (item.WorkOrderID == ordernum) { AssayOrderWithTestResults assayOrder = new AssayOrderWithTestResults(); //assays.Add(item); assayOrder.AssayOrder = item; foreach (TestResult val in TestResList) { if (val.AssayOrderID == item.AssayOrderID) { //TestResDictionary.Add(item.AssayOrderID, val); assayOrder.testResults.Add(val); } } AssayOrderList.Add(assayOrder); } } //ViewBag.testresults = TestResDictionary; return(View(AssayOrderList)); }
// GET: WorkOrders/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkOrder workOrder = db.WorkOrders.Find(id); if (workOrder == null) { return(HttpNotFound()); } var workOrders = db.WorkOrders.Include(w => w.Client).Include(w => w.QuoteEstimate); WorkOrderWithDetails workOrderWithDetails = new WorkOrderWithDetails(); workOrderWithDetails.workOrder = workOrder; IEnumerable <AssayOrder> AssayList = db.AssayOrders.ToList(); IEnumerable <TestResult> TestResList = db.TestResults.ToList(); foreach (AssayOrder item in AssayList) { if (item.WorkOrderID == id) { AssayOrderWithTestResults assayOrder = new AssayOrderWithTestResults(); assayOrder.AssayOrder = item; foreach (TestResult val in TestResList) { if (val.AssayOrderID == item.AssayOrderID) { assayOrder.testResults.Add(val); } } workOrderWithDetails.assayOrderWithTestResultsList.Add(assayOrder); } } ViewBag.ClientID = new SelectList(db.Clients, "ClientID", "CompanyName", workOrder.ClientID); ViewBag.QuoteID = new SelectList(db.QuoteEstimates, "QuoteID", "ModifiedBy", workOrder.QuoteID); return(View(workOrderWithDetails)); }
public async System.Threading.Tasks.Task <ActionResult> CreateWorkOrderReport(int workorderid) { IEnumerable <AssayOrder> assayOrderList = db.AssayOrders.ToList(); IEnumerable <TestResult> ResultsList = db.TestResults.ToList(); List <AssayOrder> myAssays = new List <AssayOrder>(); WorkOrderWithDetails myOrder = new WorkOrderWithDetails(); myOrder.workOrder = db.WorkOrders.Find(workorderid); myOrder.workOrder.Client = db.Clients.Find(myOrder.workOrder.ClientID); foreach (AssayOrder assay in assayOrderList) { if (assay.WorkOrderID == workorderid) { AssayOrderWithTestResults myItem = new AssayOrderWithTestResults(); myItem.AssayOrder = assay; foreach (TestResult myTest in ResultsList) { if (myTest.AssayOrderID == assay.AssayOrderID) { myItem.testResults.Add(myTest); } } myOrder.assayOrderWithTestResultsList.Add(myItem); } } var body = "<div style='width:800px;margin-left:auto; margin-right:auto;'>" + "<div style='text-align:center;'>" + "<h2> Northwest Labs</h2>" + "<h3> Order Number: " + myOrder.workOrder.WorkOrderID + "</h3>" + "</div>" + "<div>" + "<p><b>Client Name:</b> " + myOrder.workOrder.Client.CompanyName + "</p>" + "<p><b>Address Line 1:</b> " + myOrder.workOrder.Client.Address1 + "</p>" + "<p><b>Address Line 2:</b> " + myOrder.workOrder.Client.Address2 + "</p>" + "<p><b>Contact Name:</b> " + myOrder.workOrder.Client.ContactFirstName + " " + myOrder.workOrder.Client.ContactLastName + "</p>" + "<p><b>Phone:</b> " + myOrder.workOrder.Client.Phone + "</p>" + "<p><b>Email:</b> " + myOrder.workOrder.Client.Email + "</p>" + "</div>" + "<div>"; foreach (NorthWestLabs.Models.AssayOrderWithTestResults item in myOrder.assayOrderWithTestResultsList) { body += "<h3>Compound ID:</h3> " + item.AssayOrder.CompoundID + "<div>"; foreach (NorthWestLabs.Models.TestResult result in item.testResults) { body += "<ul>" + "<li>Status: " + result.Status.StatusName + "</li>" + "<li>Test Tube: " + result.TestTubeID + "</li>" + "<li>Test ID: " + result.TestID + "</li>" + "</ul>"; } body += "</div>" + "<br />"; } body += "</div><div></div></div>"; var message = new MailMessage(); message.To.Add(new MailAddress(myOrder.workOrder.Client.Email)); // replace with valid value message.From = new MailAddress("*****@*****.**", "Northwest Labs"); // replace with valid value message.Subject = "Northwest Labs - Work Order Report"; message.Body = string.Format(body); message.IsBodyHtml = true; //message.Attachments() add attachments using (var smtp = new SmtpClient()) { var credential = new NetworkCredential { UserName = "******", // replace with valid value Password = "******" // replace with valid value }; smtp.Credentials = credential; smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.EnableSsl = true; await smtp.SendMailAsync(message); } return(View(myOrder)); }