private void ResetDistributionWhenIncompatible(YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem physicianClientDistribution) { YellowstonePathology.Business.Client.Model.Client accessionClient = YellowstonePathology.Business.Gateway.PhysicianClientGateway.GetClientByClientId(this.m_AccessionOrder.ClientId); YellowstonePathology.Business.ReportDistribution.Model.IncompatibleDistributionTypeCollection incompatibleDistributionTypeCollection = new Business.ReportDistribution.Model.IncompatibleDistributionTypeCollection(); bool distributionsAreIncompatible = incompatibleDistributionTypeCollection.TypesAreIncompatible(accessionClient.DistributionType, physicianClientDistribution.DistributionType); if (distributionsAreIncompatible == true) { YellowstonePathology.Business.Client.Model.Client distributionClient = YellowstonePathology.Business.Gateway.PhysicianClientGateway.GetClientByClientId(physicianClientDistribution.ClientId); physicianClientDistribution.DistributionType = distributionClient.AlternateDistributionType; } }
private static YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem BuildPhysicianClientDistribution(BsonDocument clientDocument, BsonDocument physicianDocument) { YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem result = new YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem(); result.ClientId = clientDocument.GetValue("ClientId").AsInt32; result.ClientName = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("ClientName")); result.LongDistance = clientDocument.GetValue("LongDistance").AsBoolean; result.FaxNumber = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("Fax")); result.DistributionType = Mongo.ValueHelper.GetStringValue(clientDocument.GetValue("DistributionType")); result.PhysicianId = physicianDocument.GetValue("PhysicianId").AsInt32; result.PhysicianName = Mongo.ValueHelper.GetStringValue(physicianDocument.GetValue("DisplayName")); return result; }
public static YellowstonePathology.Business.Client.Model.PhysicianClientDistributionList GetPhysicianClientDistributionCollection(int physicianId, int clientId) { YellowstonePathology.Business.Client.Model.PhysicianClientDistributionList result = new Client.Model.PhysicianClientDistributionList(); string sql = "Select c.ClientId, c.ClientName, ph.PhysicianId, ph.DisplayName PhysicianName, pcd.DistributionType, " + "c.Fax FaxNumber " + "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.PhysicianId = ph.PhysicianId " + "where pc.ClientId = @ClientId and pc.PhysicianId = @PhysicianId;"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandText = sql; cmd.Parameters.AddWithValue("@PhysicianId", physicianId); cmd.Parameters.AddWithValue("@ClientId", clientId); cmd.CommandType = CommandType.Text; using (MySqlConnection cn = new MySqlConnection(YellowstonePathology.Properties.Settings.Default.CurrentConnectionString)) { cn.Open(); cmd.Connection = cn; using (MySqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { string distributionType = dr["DistributionType"].ToString(); YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem physicianClientDistribution = YellowstonePathology.Business.Client.Model.PhysicianClientDistributionFactory.GetPhysicianClientDistribution(distributionType); YellowstonePathology.Business.Persistence.SqlDataReaderPropertyWriter sqlDataReaderPropertyWriter = new Persistence.SqlDataReaderPropertyWriter(physicianClientDistribution, dr); sqlDataReaderPropertyWriter.WriteProperties(); result.Add(physicianClientDistribution); } } } return(result); }
private YellowstonePathology.Business.Rules.MethodResult CanAddEpicDistribution(YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem physicianClientDistribution) { YellowstonePathology.Business.Rules.MethodResult result = new Business.Rules.MethodResult(); result.Success = true; if (this.m_PanelSetOrder.TestOrderReportDistributionCollection.DistributionTypeExists(YellowstonePathology.Business.ReportDistribution.Model.DistributionType.EPIC) == false) { List <string> clientGroupIds = new List <string>(); clientGroupIds.Add("1"); clientGroupIds.Add("2"); YellowstonePathology.Business.Client.Model.ClientGroupClientCollection stVincentAndHRHGroup = YellowstonePathology.Business.Gateway.PhysicianClientGateway.GetClientGroupClientCollectionByClientGroupId(clientGroupIds); if (stVincentAndHRHGroup.ClientIdExists(this.m_AccessionOrder.ClientId) == true) { if (string.IsNullOrEmpty(this.m_AccessionOrder.SvhAccount) == true || string.IsNullOrEmpty(this.m_AccessionOrder.SvhMedicalRecord) == true) { result.Success = false; result.Message = "Unable to add an EPIC distribution as the MRN or Account No is missing."; } else { YellowstonePathology.Business.PanelSet.Model.PanelSetCollection panelSetCollection = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll(); YellowstonePathology.Business.PanelSet.Model.PanelSet panelSet = panelSetCollection.GetPanelSet(this.m_PanelSetOrder.PanelSetId); if (panelSet.ResultDocumentSource != YellowstonePathology.Business.PanelSet.Model.ResultDocumentSourceEnum.YPIDatabase) { YellowstonePathology.Business.Client.Model.Client client = YellowstonePathology.Business.Gateway.PhysicianClientGateway.GetClientByClientId(physicianClientDistribution.ClientId); physicianClientDistribution.DistributionType = client.AlternateDistributionType; result.Success = true; } } } } else { result.Success = false; result.Message = "Only one EPIC distribution is needed."; } return(result); }
public UnableToAddEpicDistributionDialog(YellowstonePathology.Business.Client.Model.PhysicianClientDistributionListItem physicianClientDistributionListItem) { this.m_PhysicianClientDistributionListItem = physicianClientDistributionListItem; InitializeComponent(); }