Ejemplo n.º 1
0
        private void MenuItemSendPantherOrder_Click(object sender, RoutedEventArgs e)
        {
            if (this.ListViewAccessionOrders.SelectedItem != null)
            {
                YellowstonePathology.Business.Search.ReportSearchItem reportSearchItem = (YellowstonePathology.Business.Search.ReportSearchItem) this.ListViewAccessionOrders.SelectedItem;
                if (this.m_LoginUI.AccessionOrder.SpecimenOrderCollection.HasThinPrepFluidSpecimen() == true)
                {
                    YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder = this.m_LoginUI.AccessionOrder.SpecimenOrderCollection.GetThinPrep();
                    if (specimenOrder.AliquotOrderCollection.HasPantherAliquot() == true)
                    {
                        YellowstonePathology.Business.Test.AliquotOrder            aliquotOrder  = specimenOrder.AliquotOrderCollection.GetPantherAliquot();
                        YellowstonePathology.Business.Test.PanelSetOrder           panelSetOrder = this.m_LoginUI.AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportSearchItem.ReportNo);
                        YellowstonePathology.Business.HL7View.Panther.PantherAssay pantherAssay  = null;
                        switch (panelSetOrder.PanelSetId)
                        {
                        case 14:
                            pantherAssay = new Business.HL7View.Panther.PantherAssayHPV();
                            break;

                        case 3:
                            pantherAssay = new Business.HL7View.Panther.PantherAssayNGCT();
                            break;

                        default:
                            throw new Exception(panelSetOrder.PanelSetName + " is mot implemented yet.");
                        }

                        YellowstonePathology.Business.HL7View.Panther.PantherOrder pantherOrder = new Business.HL7View.Panther.PantherOrder(pantherAssay, specimenOrder, aliquotOrder, this.m_LoginUI.AccessionOrder, panelSetOrder, YellowstonePathology.Business.HL7View.Panther.PantherActionCode.NewSample);
                        pantherOrder.Send();
                    }
                    else
                    {
                        MessageBox.Show("No Panther aliquot found.");
                    }
                }
                else
                {
                    MessageBox.Show("No Thin Prep Fluid Specimen Found.");
                }
            }
        }
Ejemplo n.º 2
0
        private void HandlePantherOrder()
        {
            if (this.m_PanelSet.SendOrderToPanther == true)
            {
                YellowstonePathology.Business.Test.AliquotOrder            aliquotOrder  = (YellowstonePathology.Business.Test.AliquotOrder) this.m_TestOrderInfo.OrderTarget;
                YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder = this.m_AccessionOrder.SpecimenOrderCollection.GetSpecimenOrderByAliquotOrderId(aliquotOrder.AliquotOrderId);

                YellowstonePathology.Business.HL7View.Panther.PantherAssay pantherAssay = null;
                switch (this.m_PanelSetOrder.PanelSetId)
                {
                case 14:
                    pantherAssay = new Business.HL7View.Panther.PantherAssayHPV();
                    break;

                case 3:
                    pantherAssay = new Business.HL7View.Panther.PantherAssayNGCT();
                    break;

                case 62:
                case 269:
                    pantherAssay = new Business.HL7View.Panther.PantherAssayHPV1618();
                    break;

                case 61:
                    pantherAssay = new Business.HL7View.Panther.PantherAssayTrich();
                    break;

                default:
                    throw new Exception(this.m_PanelSetOrder.PanelSetName + " is mot implemented yet.");
                }

                this.m_PanelSetOrder.OrderedOnId         = aliquotOrder.AliquotOrderId;
                this.m_PanelSetOrder.OrderedOn           = YellowstonePathology.Business.Specimen.Model.OrderedOn.Aliquot;
                this.m_PanelSetOrder.InstrumentOrderDate = DateTime.Now;

                YellowstonePathology.Business.HL7View.Panther.PantherOrder pantherOrder = new Business.HL7View.Panther.PantherOrder(pantherAssay, specimenOrder, aliquotOrder, this.m_AccessionOrder, this.m_PanelSetOrder, YellowstonePathology.Business.HL7View.Panther.PantherActionCode.NewSample);
                pantherOrder.Send();
            }
        }
Ejemplo n.º 3
0
 private void ResendPantherOrder(YellowstonePathology.Business.Test.PantherOrderListItem pantherOrderListItem, YellowstonePathology.Business.HL7View.Panther.PantherAssay pantherAssay)
 {
     YellowstonePathology.Business.Test.AccessionOrder accessionOrder = YellowstonePathology.Business.Persistence.DocumentGateway.Instance.PullAccessionOrder(pantherOrderListItem.MasterAccessionNo, this);
     YellowstonePathology.Business.Persistence.DocumentGateway.Instance.ReleaseLock(accessionOrder, this);
     if (accessionOrder.SpecimenOrderCollection.HasThinPrepFluidSpecimen() == true)
     {
         YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder = accessionOrder.SpecimenOrderCollection.GetThinPrep();
         if (specimenOrder.AliquotOrderCollection.HasPantherAliquot() == true)
         {
             YellowstonePathology.Business.Test.AliquotOrder            aliquotOrder  = specimenOrder.AliquotOrderCollection.GetPantherAliquot();
             YellowstonePathology.Business.Test.PanelSetOrder           panelSetOrder = accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(pantherOrderListItem.ReportNo);
             YellowstonePathology.Business.HL7View.Panther.PantherOrder pantherOrder  = new Business.HL7View.Panther.PantherOrder(pantherAssay, specimenOrder, aliquotOrder, accessionOrder, panelSetOrder, YellowstonePathology.Business.HL7View.Panther.PantherActionCode.NewSample);
             pantherOrder.Send();
             //MessageBox.Show("An order has been sent to the Panther.");
         }
         else
         {
             MessageBox.Show("No Panther aliquot found.");
         }
     }
     else
     {
         MessageBox.Show("No Thin Prep Fluid Specimen Found.");
     }
 }