/// <summary> /// Generates the insert script. /// </summary> /// <param name="tariffBaseUnitCost"> /// The tariff base unit cost. /// </param> /// <param name="fileItemCode"> /// The file item code. /// </param> /// <param name="fileDoctorRecommendedUnit"> /// The file doctor recommended unit. /// </param> /// <param name="newTariffNotLoadedPath"> /// The new tariff not loaded path. /// </param> /// <param name="doctorTariffData"> /// The doctor tariff data. /// </param> /// <param name="originalGazetteName"> /// Name of the original gazette. /// </param> /// <param name="dataAccessHelper"> /// The data access helper. /// </param> private static void GenerateInsertScript( TariffBaseUnitCost tariffBaseUnitCost, string fileItemCode, decimal fileDoctorRecommendedUnit, string newTariffNotLoadedPath, Tariff doctorTariffData, string originalGazetteName, TariffsDataAccessHelper dataAccessHelper) { var databaseName = tariffBaseUnitCost.Name; var pathologyGPValues = ConfigurationManager.AppSettings[Constant.PathologyGPConfigKey]; var pathologySpecialistValues = ConfigurationManager.AppSettings[Constant.PathologySpecialistConfigKey]; var clinicalProceduresGPValues = ConfigurationManager.AppSettings[Constant.ClinicalProcedureGPConfigKey]; var clinicalProceduresSpecialistValues = ConfigurationManager.AppSettings[Constant.ClinicalProcedureSpecialistConfigKey]; var radiologyGpValues = ConfigurationManager.AppSettings[Constant.RadiologyGPConfigKey]; var radiologySpecialistValues = ConfigurationManager.AppSettings[Constant.RadiologySpecialistConfigKey]; if (databaseName.Contains(Constant.Pathology, StringComparison.InvariantCultureIgnoreCase)) { InsertNewTariffScript( pathologyGPValues, fileItemCode, fileDoctorRecommendedUnit, tariffBaseUnitCost, newTariffNotLoadedPath, dataAccessHelper); return; } if (databaseName.Contains(Constant.Radiology, StringComparison.InvariantCultureIgnoreCase)) { InsertNewTariffScript( radiologyGpValues, fileItemCode, fileDoctorRecommendedUnit, tariffBaseUnitCost, newTariffNotLoadedPath, dataAccessHelper); return; } newTariffNotLoadedPath.WriteToFile( string.Format("{0} - {1}", doctorTariffData.ItemCode, originalGazetteName)); }
/// <summary> /// Gets the specialist recommended units. /// </summary> /// <param name="correctName"> /// Name of the correct. /// </param> /// <param name="fileSpecialistRecommendedUnit"> /// The file specialist recommended unit. /// </param> /// <param name="doctorRecommendedUnit"> /// The doctor recommended unit. /// </param> /// <param name="specialistTariffData"> /// The specialist tariff data. /// </param> /// <returns> /// The calculated specialist amount /// </returns> private static decimal GetSpecialistRecommendedUnits( string correctName, decimal fileSpecialistRecommendedUnit, decimal doctorRecommendedUnit, Tariff specialistTariffData) { if (specialistTariffData.PractitionerType != null && !string.IsNullOrEmpty(specialistTariffData.PractitionerType.Name) && specialistTariffData.PractitionerType.Name.Trim() .Contains(correctName, StringComparison.InvariantCultureIgnoreCase)) { return fileSpecialistRecommendedUnit; } if (specialistTariffData.PractitionerType != null && (correctName.Equals(Constant.Pathology, StringComparison.InvariantCultureIgnoreCase) && !specialistTariffData.PractitionerType.Name.Trim() .Contains(Constant.Pathology, StringComparison.InvariantCultureIgnoreCase))) { return doctorRecommendedUnit; } if (specialistTariffData.PractitionerType != null && (correctName.Equals(Constant.Radiology, StringComparison.CurrentCultureIgnoreCase) && !specialistTariffData.PractitionerType.Name.Trim() .Contains(Constant.Radiology, StringComparison.InvariantCultureIgnoreCase))) { return doctorRecommendedUnit; } if (specialistTariffData.PractitionerType != null && (!correctName.Equals(Constant.Pathology, StringComparison.InvariantCultureIgnoreCase) && specialistTariffData.PractitionerType.Name.Trim() .Contains(Constant.Pathology, StringComparison.InvariantCultureIgnoreCase))) { return doctorRecommendedUnit; } if (specialistTariffData.PractitionerType != null && (!correctName.Equals(Constant.Radiology, StringComparison.InvariantCultureIgnoreCase) && specialistTariffData.PractitionerType.Name.Trim() .Contains(Constant.Radiology, StringComparison.InvariantCultureIgnoreCase))) { return doctorRecommendedUnit; } return fileSpecialistRecommendedUnit; }