示例#1
0
 public void Update(YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView materialTrackingScannedItemView)
 {
     this.m_MasterAccessionNo = materialTrackingScannedItemView.MasterAccessionNo;
     this.m_MaterialLabel     = materialTrackingScannedItemView.MaterialLabel;
     this.m_MaterialType      = materialTrackingScannedItemView.MaterialType;
     if (string.IsNullOrEmpty(materialTrackingScannedItemView.TestName) == false)
     {
         this.m_MaterialLabel += " - " + materialTrackingScannedItemView.TestName;
     }
 }
示例#2
0
        private void ButtonUpdateScans_Click(object sender, RoutedEventArgs e)
        {
            if (this.m_MaterialTrackingBatch.ToFacilityId != null)
            {
                this.m_MaterialTrackingLogViewCollection.Clear();
                bool anItemCouldNotBeFound = false;

                foreach (YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingLog materialTrackingLog in this.m_MaterialTrackingBatch.MaterialTrackingLogCollection)
                {
                    YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView materialTrackingScannedItemView = null;
                    switch (materialTrackingLog.MaterialType)
                    {
                    case "PSLD":
                    case "NGYNSLD":
                    case "FNASLD":
                    case "Aliquot":
                    case "Block":
                    case "FrozenBlock":
                        materialTrackingScannedItemView = YellowstonePathology.Business.Gateway.AccessionOrderGateway.GetMaterialTrackingScannedItemViewByAliquotOrderId(materialTrackingLog.MaterialId);
                        break;

                    case "Slide":
                        materialTrackingScannedItemView = YellowstonePathology.Business.Gateway.AccessionOrderGateway.GetMaterialTrackingScannedItemViewBySlideOrderId(materialTrackingLog.MaterialId);
                        break;

                    case "Container":
                        materialTrackingScannedItemView = YellowstonePathology.Business.Gateway.AccessionOrderGateway.GetMaterialTrackingScannedItemViewByContainerId(materialTrackingLog.MaterialId);
                        break;
                    }

                    YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingLogView materialTrackingLogView = new Business.MaterialTracking.Model.MaterialTrackingLogView();
                    if (materialTrackingScannedItemView != null)
                    {
                        materialTrackingLogView.FromScannedItemView(materialTrackingScannedItemView, materialTrackingLog);
                        materialTrackingLog.Update(materialTrackingScannedItemView);
                    }
                    else
                    {
                        anItemCouldNotBeFound = true;
                        materialTrackingLogView.PFirstName = "Not Found";
                        materialTrackingLogView.PLastName  = "Not Found";
                    }

                    this.m_MaterialTrackingLogViewCollection.Add(materialTrackingLogView);
                }

                if (anItemCouldNotBeFound == true)
                {
                    MessageBox.Show("One or more scanned items could not be found in the database.");
                }
                this.UpdateLocation();
            }
            else
            {
                MessageBox.Show("A To Facility is required.");
            }
        }
示例#3
0
 public void Update(YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView materialTrackingScannedItemView)
 {
     this.m_MasterAccessionNo = materialTrackingScannedItemView.MasterAccessionNo;
     this.m_MaterialLabel     = materialTrackingScannedItemView.MaterialLabel;
 }
        public static YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView GetMaterialTrackingScannedItemViewBySlideOrderId(string slideOrderId)
        {
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = "select s.SlideOrderId [MaterialId], 'Slide' [MaterialType], a.MasterAccessionNo, a.PLastName, a.PFirstName, s.Label [MaterialLabel]" +
                "from tblSlideOrder s " +
                "join tblAliquotOrder ao on s.AliquotOrderId = ao.AliquotOrderId " +
                "join tblSpecimenOrder so on ao.SpecimenOrderId = so.SpecimenOrderId " +
                "join tblAccessionOrder a on so.MasterAccessionNo = a.MasterAccessionNo " +
                "where s.SlideOrderid = @SlideOrderId ";
            cmd.CommandType = CommandType.Text;
            cmd.Parameters.Add("@SlideOrderId", SqlDbType.VarChar).Value = slideOrderId;

            YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView result = null;
            using (SqlConnection cn = new SqlConnection(YellowstonePathology.Business.BaseData.SqlConnectionString))
            {
                cn.Open();
                cmd.Connection = cn;
                using (SqlDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        result = new YellowstonePathology.Business.MaterialTracking.Model.MaterialTrackingScannedItemView();
                        YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(result, dr);
                        sqlDataReaderPropertyWriter.WriteProperties();
                    }
                }
            }
            return result;
        }