コード例 #1
0
        public List <YellowstonePathology.Business.Test.Model.DualStain> GetSelectedDualStains()
        {
            List <YellowstonePathology.Business.Test.Model.DualStain> result = new List <YellowstonePathology.Business.Test.Model.DualStain>();

            YellowstonePathology.Business.Test.Model.DualStainCollection dualStainCollection = YellowstonePathology.Business.Test.Model.DualStainCollection.GetAll();

            foreach (XElement element in this.m_OrderItemElementList)
            {
                if (element.Element("ItemType").Value == "DualStain")
                {
                    if (element.Element("Order").Value == "True")
                    {
                        string testId = element.Element("Id").Value;
                        YellowstonePathology.Business.Test.Model.DualStain dualStain = dualStainCollection.Get(testId);
                        string testOrderComment = element.Element("Comment").Value;
                        dualStain.OrderComment = testOrderComment;
                        result.Add(dualStain);
                    }
                }
            }
            return(result);
        }
コード例 #2
0
        private void ButtonOrder_Click(object sender, RoutedEventArgs e)
        {
            bool isDualStain = false;

            YellowstonePathology.Business.Test.Model.Test      test      = null;
            YellowstonePathology.Business.Test.Model.DualStain dualStain = null;

            if (this.m_Test is YellowstonePathology.Business.Test.Model.Test)
            {
                test = (YellowstonePathology.Business.Test.Model.Test) this.m_Test;
            }
            else if (this.m_Test is YellowstonePathology.Business.Test.Model.DualStain)
            {
                dualStain   = (YellowstonePathology.Business.Test.Model.DualStain) this.m_Test;
                isDualStain = true;
            }

            if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "FNASLD")
            {
                if (this.m_PassNumber.HasValue == true)
                {
                    this.AddFNASlide(true, this.m_PassNumber.Value);
                }
                else
                {
                    this.AddFNASlide(false, 0);
                }
            }
            else if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "NGYNSLD")
            {
                this.AddNGYNSlide();
            }
            else if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "CESLD")
            {
                this.AddCESlide();
            }
            else if (this.m_Aliquots.HasValue)
            {
                if (this.m_Aliquot != null)
                {
                    if (this.Test != null)
                    {
                        if (isDualStain == false)
                        {
                            this.OrderAliquotsAndTestOnSelectedSpecimen(test, isDualStain);
                        }
                        else
                        {
                            this.OrderAliquotsAndTestOnSelectedSpecimen(dualStain.FirstTest, isDualStain);
                            this.OrderAliquotsAndTestOnSelectedSpecimen(dualStain.SecondTest, isDualStain);
                        }
                    }
                }
            }
            else if (this.Test != null)
            {
                if (isDualStain == false)
                {
                    this.OrderTestOnSelectedAliquots(test, isDualStain);
                }
                else
                {
                    this.OrderTestOnSelectedAliquots(dualStain.FirstTest, isDualStain);
                    this.OrderTestOnSelectedAliquots(dualStain.SecondTest, isDualStain);
                }
            }

            this.m_AccessionOrder.TakeATrip(this.m_StainAcknowledgementTaskOrderVisitor);

            this.m_AliquotAndStainOrderView.Refresh(true, this.m_PanelSetOrder);
            this.NotifyPropertyChanged("AliquotAndStainOrderView");
            this.Aliquots = null;
            this.Test     = null;
            this.Aliquot  = null;
        }
コード例 #3
0
        private void OrderStain(bool useWetProtocol)
        {
            if (this.m_PanelSetOrder.PanelSetId == 216)
            {
                MessageBox.Show("Warning: Stains should only be added to Informal Consults when adding client accessioned blocks/slide/stains.");
            }
            if (this.m_PanelSetOrder.PanelSetId == 197)  //Peer Review
            {
                MessageBox.Show("Sorry, I can't let you add stains to a Peer Review.");
                return;
            }

            bool isDualStain = false;

            YellowstonePathology.Business.Test.Model.Test      test      = null;
            YellowstonePathology.Business.Test.Model.DualStain dualStain = null;

            if (this.m_Test is YellowstonePathology.Business.Test.Model.Test)
            {
                test = (YellowstonePathology.Business.Test.Model.Test) this.m_Test;
            }
            else if (this.m_Test is YellowstonePathology.Business.Test.Model.DualStain)
            {
                dualStain   = (YellowstonePathology.Business.Test.Model.DualStain) this.m_Test;
                isDualStain = true;
            }

            if (this.m_Aliquot != null && this.m_Aliquot.AliquotType == "Wash")
            {
                AddWash();
            }

            if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "FNASLD")
            {
                if (this.m_PassNumber.HasValue == true)
                {
                    this.AddFNASlide(true, this.m_PassNumber.Value);
                }
                else
                {
                    this.AddFNASlide(false, 0);
                }
            }
            else if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "NGYNSLD")
            {
                this.AddNGYNSlide();
            }
            else if (this.m_Aliquots.HasValue == true && this.m_Aliquot != null && this.m_Aliquot.AliquotType == "CESLD")
            {
                this.AddCESlide();
            }
            else if (this.m_Aliquots.HasValue)
            {
                if (this.m_Aliquot != null)
                {
                    if (this.Test != null)
                    {
                        if (isDualStain == false)
                        {
                            this.OrderAliquotsAndTestOnSelectedSpecimen(test, isDualStain);
                        }
                        else
                        {
                            this.OrderAliquotsAndTestOnSelectedSpecimen(dualStain.FirstTest, isDualStain);
                            this.OrderAliquotsAndTestOnSelectedSpecimen(dualStain.SecondTest, isDualStain);
                        }
                    }
                }
            }
            else if (this.Test != null)
            {
                if (isDualStain == false)
                {
                    this.OrderTestOnSelectedAliquots(test, isDualStain);
                }
                else
                {
                    this.OrderTestOnSelectedAliquots(dualStain.FirstTest, isDualStain);
                    this.OrderTestOnSelectedAliquots(dualStain.SecondTest, isDualStain);
                }
            }

            this.m_AccessionOrder.TakeATrip(this.m_StainAcknowledgementTaskOrderVisitor);
            this.m_AliquotAndStainOrderView.Refresh(true, this.m_PanelSetOrder);
            this.NotifyPropertyChanged("AliquotAndStainOrderView");
            this.Aliquots = null;
            this.Test     = null;
            this.Aliquot  = null;
        }