public static View.AccessionSlideOrderViewCollection GetAccessionSlideOrderViewCollectionByBatchId(string batchId) { View.AccessionSlideOrderViewCollection result = new View.AccessionSlideOrderViewCollection(); MySqlCommand cmd = new MySqlCommand(); cmd.CommandText = "Select slo.* from tblSlideOrder slo join tblMaterialTrackingLog mtl on slo.SlideOrderId = mtl.MaterialId " + "join tblTestOrder t on slo.TestOrderId = t.TestOrderId " + "join tblPanelOrder po on t.PanelOrderId = po.PanelOrderId " + "where mtl.MaterialTrackingBatchId = @BatchId order by slo.SlideOrderId; " + "Select ao.MasterAccessionNo, ao.PLastName, ao.PFirstName, ao.ClientId, ao.ClientName, ao.PhysicianId, " + "ao.PhysicianName, po.ReportNo, asl.SlideOrderId " + "from tblAccessionOrder ao " + "join tblSpecimenOrder so on ao.MasterAccessionNo = so.MasterAccessionNo " + "join tblAliquotOrder a on so.specimenOrderId = a.SpecimenOrderId " + "join tblSlideOrder asl on a.AliquotOrderId = asl.AliquotOrderId " + "join tblMaterialTrackingLog astl on asl.SlideOrderId = astl.MaterialId " + "join tblTestOrder t on asl.TestOrderId = t.TestOrderId " + "join tblPanelOrder po on t.PanelOrderId = po.PanelOrderId " + "where astl.MaterialTrackingBatchId = @BatchId;"; cmd.CommandType = System.Data.CommandType.Text; cmd.Parameters.AddWithValue("@BatchId", batchId); using (MySqlConnection cn = new MySqlConnection(YellowstonePathology.Properties.Settings.Default.CurrentConnectionString)) { cn.Open(); cmd.Connection = cn; using (MySqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { View.AccessionSlideOrderView accessionSlideOrderView = new View.AccessionSlideOrderView(); Slide.Model.SlideOrder slideOrder = new Slide.Model.SlideOrder(); YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(slideOrder, dr); sqlDataReaderPropertyWriter.WriteProperties(); accessionSlideOrderView.SlideOrder = slideOrder; result.Add(accessionSlideOrderView); } dr.NextResult(); while (dr.Read()) { string slideOrderId = dr["SlideOrderId"].ToString(); foreach (View.AccessionSlideOrderView accessionSlideOrderView in result) { if (accessionSlideOrderView.SlideOrder.SlideOrderId == slideOrderId) { YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(accessionSlideOrderView, dr); sqlDataReaderPropertyWriter.WriteProperties(); break; } } } } } return(result); }
private static View.AccessionSlideOrderViewCollection BuildAccessionSlideOrderViewCollection(XElement sourceElement) { View.AccessionSlideOrderViewCollection accessionSlideOrderViewCollection = new View.AccessionSlideOrderViewCollection(); if (sourceElement != null) { foreach (XElement accessionSlideOrderViewElement in sourceElement.Elements("AccessionSlideOrderView")) { AccessionSlideOrderViewBuilder builder = new AccessionSlideOrderViewBuilder(); builder.Build(accessionSlideOrderViewElement); if (builder.AccessionSlideOrderView != null) { accessionSlideOrderViewCollection.Add(builder.AccessionSlideOrderView); } } } return(accessionSlideOrderViewCollection); }
private static View.AccessionSlideOrderViewCollection BuildAccessionSlideOrderViewCollection(XElement sourceElement) { View.AccessionSlideOrderViewCollection accessionSlideOrderViewCollection = new View.AccessionSlideOrderViewCollection(); if (sourceElement != null) { foreach (XElement accessionSlideOrderViewElement in sourceElement.Elements("AccessionSlideOrderView")) { AccessionSlideOrderViewBuilder builder = new AccessionSlideOrderViewBuilder(); builder.Build(accessionSlideOrderViewElement); if (builder.AccessionSlideOrderView != null) { accessionSlideOrderViewCollection.Add(builder.AccessionSlideOrderView); } } } return accessionSlideOrderViewCollection; }