public static List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> GetPhysicianClientDistributions(int physicianClientId)
        {
            List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> result = new List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView>();
            YellowstonePathology.Business.Mongo.Server server = new Business.Mongo.TestServer(YellowstonePathology.Business.Mongo.MongoTestServer.LISDatabaseName);
            MongoCollection physicianClientCollection = server.Database.GetCollection<BsonDocument>("PhysicianClient");
            MongoCollection physicianCollection = server.Database.GetCollection<BsonDocument>("Physician");
            MongoCollection clientCollection = server.Database.GetCollection<BsonDocument>("Client");
            MongoCollection physicianClientDistributionCollection = server.Database.GetCollection<BsonDocument>("PhysicianClientDistribution");
            MongoCursor physicianClientDistributionCursor = physicianClientDistributionCollection.FindAs<BsonDocument>(Query.EQ("PhysicianClientID", BsonValue.Create(physicianClientId)));

            foreach(BsonDocument physicianClientDistributionDocument in physicianClientDistributionCursor)
            {
                BsonDocument physicianClientDocument = physicianClientCollection.FindOneAs<BsonDocument>(Query.EQ("PhysicianClientId", physicianClientDistributionDocument.GetValue("DistributionID")));
                BsonDocument clientDocument = clientCollection.FindOneAs<BsonDocument>(Query.EQ("ClientId", physicianClientDocument.GetValue("ClientId")));
                BsonDocument physicianDocument = physicianCollection.FindOneAs<BsonDocument>(Query.EQ("PhysicianId", physicianClientDocument.GetValue("PhysicianId")));

                YellowstonePathology.Business.Client.Model.PhysicianClientDistribution physicianClientDistribution = (YellowstonePathology.Business.Client.Model.PhysicianClientDistribution)Mongo.BSONObjectBuilder.Build(physicianClientDistributionDocument, typeof(YellowstonePathology.Business.Client.Model.PhysicianClientDistribution));

                YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView physicianClientDistributionView = new YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView(physicianClientDistribution);
                physicianClientDistributionView.ClientId = clientDocument.GetValue("ClientId").AsInt32;
                physicianClientDistributionView.ClientName = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("ClientName"));
                physicianClientDistributionView.DistributionType = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("DistributionType"));
                physicianClientDistributionView.PhysicianId = physicianDocument.GetValue("PhysicianId").AsInt32;
                physicianClientDistributionView.PhysicianName = Mongo.ValueHelper.GetStringValue(physicianDocument.GetValue("DisplayName"));

                result.Add(physicianClientDistributionView);
            }
            return result;
        }
예제 #2
0
        public static List <YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> GetPhysicianClientDistributions(int physicianClientId)
        {
            List <YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> result = new List <YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView>();

            YellowstonePathology.Business.Mongo.Server server = new Business.Mongo.TestServer(YellowstonePathology.Business.Mongo.MongoTestServer.LISDatabaseName);
            MongoCollection physicianClientCollection         = server.Database.GetCollection <BsonDocument>("PhysicianClient");
            MongoCollection physicianCollection = server.Database.GetCollection <BsonDocument>("Physician");
            MongoCollection clientCollection    = server.Database.GetCollection <BsonDocument>("Client");
            MongoCollection physicianClientDistributionCollection = server.Database.GetCollection <BsonDocument>("PhysicianClientDistribution");
            MongoCursor     physicianClientDistributionCursor     = physicianClientDistributionCollection.FindAs <BsonDocument>(Query.EQ("PhysicianClientID", BsonValue.Create(physicianClientId)));

            foreach (BsonDocument physicianClientDistributionDocument in physicianClientDistributionCursor)
            {
                BsonDocument physicianClientDocument = physicianClientCollection.FindOneAs <BsonDocument>(Query.EQ("PhysicianClientId", physicianClientDistributionDocument.GetValue("DistributionID")));
                BsonDocument clientDocument          = clientCollection.FindOneAs <BsonDocument>(Query.EQ("ClientId", physicianClientDocument.GetValue("ClientId")));
                BsonDocument physicianDocument       = physicianCollection.FindOneAs <BsonDocument>(Query.EQ("PhysicianId", physicianClientDocument.GetValue("PhysicianId")));

                YellowstonePathology.Business.Client.Model.PhysicianClientDistribution physicianClientDistribution = (YellowstonePathology.Business.Client.Model.PhysicianClientDistribution)Mongo.BSONObjectBuilder.Build(physicianClientDistributionDocument, typeof(YellowstonePathology.Business.Client.Model.PhysicianClientDistribution));

                YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView physicianClientDistributionView = new YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView(physicianClientDistribution);
                physicianClientDistributionView.ClientId         = clientDocument.GetValue("ClientId").AsInt32;
                physicianClientDistributionView.ClientName       = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("ClientName"));
                physicianClientDistributionView.DistributionType = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("DistributionType"));
                physicianClientDistributionView.PhysicianId      = physicianDocument.GetValue("PhysicianId").AsInt32;
                physicianClientDistributionView.PhysicianName    = Mongo.ValueHelper.GetStringValue(physicianDocument.GetValue("DisplayName"));

                result.Add(physicianClientDistributionView);
            }
            return(result);
        }
        public static List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> GetPhysicianClientDistributionsV2(string physicianClientId)
        {
            List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView> result = new List<YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView>();
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = "Select pcd.*, c.ClientId, c.ClientName, ph.PhysicianId, ph.ObjectId as ProviderId, ph.DisplayName [PhysicianName], c.DistributionType " +
                "from tblPhysicianClient pc " +
                "join tblPhysicianClientDistribution pcd on pc.PhysicianClientId = pcd.PhysicianClientId " +
                "join tblPhysicianClient pc2 on pcd.DistributionId = pc2.PhysicianClientId " +
                "join tblClient c on pc2.ClientId = c.ClientId " +
                "join tblPhysician ph on pc2.ProviderId = ph.ObjectId " +
                "where pc.PhysicianClientId = @PhysicianClientId ";
            cmd.CommandType = CommandType.Text;
            cmd.Parameters.Add("@PhysicianClientId", SqlDbType.VarChar).Value = physicianClientId;

            using (SqlConnection cn = new SqlConnection(YellowstonePathology.Business.BaseData.SqlConnectionString))
            {
                cn.Open();
                cmd.Connection = cn;
                using (SqlDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        YellowstonePathology.Business.Client.Model.PhysicianClientDistribution physicianClientDistribution = new YellowstonePathology.Business.Client.Model.PhysicianClientDistribution();
                        YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(physicianClientDistribution, dr);
                        sqlDataReaderPropertyWriter.WriteProperties();
                        YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView physicianClientDistributionView = new YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView(physicianClientDistribution);
                        sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(physicianClientDistributionView, dr);
                        sqlDataReaderPropertyWriter.WriteProperties();
                        result.Add(physicianClientDistributionView);
                    }
                }
            }
            return result;
        }
예제 #4
0
        private void ButtonRemoveFromDistribution_Click(object sender, RoutedEventArgs e)
        {
            if (this.ListBoxDistributionSelection.SelectedItem != null)
            {
                MessageBoxResult result = MessageBox.Show("Remove the selected item?", "Remove", MessageBoxButton.OKCancel);
                if (result == MessageBoxResult.OK)
                {
                    YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView physicianClientDistributionView = (YellowstonePathology.Business.Client.Model.PhysicianClientDistributionView) this.ListBoxDistributionSelection.SelectedItem;
                    YellowstonePathology.Business.Persistence.DocumentGateway.Instance.DeleteDocument(physicianClientDistributionView.PhysicianClientDistribution, this.m_ParentWindow);

                    this.m_PhysicianClientDistributionViewList = YellowstonePathology.Business.Gateway.PhysicianClientGateway.GetPhysicianClientDistributionsV2(this.m_PhysicianClientId);
                    this.NotifyPropertyChanged("PhysicianClientDistributionViewList");
                }
            }
        }