Example #1
0
        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);
        }
Example #2
0
        public static View.AccessionSlideOrderView GetAccessionSlideOrderViewBySlideOrderId(string slideOrderId)
        {
            View.AccessionSlideOrderView result = null;
            MySqlCommand cmd = new MySqlCommand();

            cmd.CommandText = "Select ao.MasterAccessionNo, ao.PLastName, ao.PFirstName, ao.ClientId, ao.ClientName, " +
                              "ao.PhysicianId, ao.PhysicianName, pso.ReportNo " +
                              "from tblSlideOrder asl " +
                              "join tblTestOrder t on asl.TestOrderId = t.TestOrderId " +
                              "join tblPanelOrder po on t.PanelOrderId = po.PanelOrderId " +
                              "join tblPanelSetOrder pso on po.ReportNo = pso.ReportNo " +
                              "join tblAccessionOrder ao on pso.MasterAccessionNo = ao.MasterAccessionNo " +
                              "where asl.SlideOrderId = @SlideOrderId; " +
                              "Select * from tblSlideOrder where SlideOrderId = @SlideOrderId;";
            cmd.CommandType = System.Data.CommandType.Text;
            cmd.Parameters.AddWithValue("@SlideOrderId", slideOrderId);
            using (MySqlConnection cn = new MySqlConnection(YellowstonePathology.Properties.Settings.Default.CurrentConnectionString))
            {
                cn.Open();
                cmd.Connection = cn;
                using (MySqlDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        result = new View.AccessionSlideOrderView();
                        YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(result, dr);
                        sqlDataReaderPropertyWriter.WriteProperties();
                    }
                    dr.NextResult();
                    while (dr.Read())
                    {
                        Slide.Model.SlideOrder slideOrder = new Slide.Model.SlideOrder();
                        YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(slideOrder, dr);
                        sqlDataReaderPropertyWriter.WriteProperties();
                        result.SlideOrder = slideOrder;
                    }
                }
            }
            return(result);
        }
Example #3
0
 public override object BuildNew()
 {
     YellowstonePathology.Business.Slide.Model.SlideOrder slideOrder = new Slide.Model.SlideOrder();
     this.Build(slideOrder);
     return(slideOrder);
 }