def __init__(self, context): IPreProcessScript.__init__(self, context) self.frequency_code_index = None self.type_of_bill_code_index = None self.claim_id_index = None self.link_claim_id_index = None self.linked_claim_replacement_dic = {}
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnablePullingProviderInformationFromNPPESForChartReview', 'EnablePullingProviderInformationFromNPPESForMedicalClaim')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) enable_chart_review = IPreProcessScript.to_boolean(configurations[ 'EnablePullingProviderInformationFromNPPESForChartReview']) enable_claim = IPreProcessScript.to_boolean(configurations[ 'EnablePullingProviderInformationFromNPPESForMedicalClaim']) if enable_chart_review is False and enable_claim is False: return False self._load_npi_configurations() if enable_chart_review and enable_claim: return True is_chart_review = self.file_name.startswith('ChartReview_Merged_') if enable_chart_review and is_chart_review: return True elif enable_claim and is_chart_review is False: return True return False
def __init__(self, context): IPreProcessScript.__init__(self, context) self.npi_ids = set() self.npi_field_index = [] self.temp_table_name = 'Temp_Update_Npi_Ids_{0}_{1}'.format( self.entity_type, self.map_id).replace('-', '') pre_process_folder = os.path.split(self.merge_root_path)[-1] self.temp_folder = '{0}/Input/UpdateNpiDatabase'.format( self.merge_root_path) self.temp_s3_folder = 'PythonPreProcess/{0}/Input/UpdateNpiDatabase'.format( pre_process_folder)
def __init__(self, context): IPreProcessScript.__init__(self, context) self.linked_claim_id_column_index = None self.cross_reference_number_index = None self.claim_process_status_code_index = None self.system_assigned_number_index = None self.linked_claim_id_file_column_name = None self.linked_claim_id_by_previous_claim_number = {} self.previous_claim_ids = set() self.temp_table_name = 'Temp_PreviousClaimIds_{0}_{1}'.format(self.entity_type, self.map_id).replace('-', '') pre_process_folder = os.path.split(self.merge_root_path)[-1] self.temp_folder = '{0}/Input/LinkedClaimPopulationFromPreviousClaimId'.format(self.merge_root_path) self.temp_s3_folder = 'PythonPreProcess/{0}/Input/LinkedClaimPopulationFromPreviousClaimId'.format(pre_process_folder)
def __init__(self, context): IPreProcessScript.__init__(self, context) self.npi_ids = set() self.npi_field_maps = [] self.npi_field_dic = {} self.configurations_map = {} self.npi_lookup_dict = {} self.temp_table_name = 'Temp_NpiIds_{0}_{1}'.format( self.entity_type, self.map_id).replace('-', '') pre_process_folder = os.path.split(self.merge_root_path)[-1] self.temp_folder = '{0}/Input/PullingProviderInformationFromNpiTable'.format( self.merge_root_path) self.temp_s3_folder = 'PythonPreProcess/{0}/Input/PullingProviderInformationFromNpiTable'.format( pre_process_folder)
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableClaimDiagnosisFlattening')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnableClaimDiagnosisFlattening']) is False: return False self.claim_id_index = self.map_columns.where( lambda x: x['redshift_name' ] == 'claim_id_medical_claim_header').first()['index'] claim_type_code_field = self.map_columns.where(lambda x: x[ 'redshift_name'] == 'medical_claim_type_code_medical_claims_header' ).first_or_default() if claim_type_code_field is None: return False self.claim_type_code_index = claim_type_code_field['index'] claim_line_number_field = self.map_columns.where( lambda x: x['redshift_name'] == 'claim_line_number_medical_claims_detail').first_or_default() if claim_line_number_field is None: return False self.claim_line_number_index = claim_line_number_field['index'] return True
def __init__(self, context): IPreProcessScript.__init__(self, context) self.npi_ids = set() self.npi_taxonomy_code_map = [] self.npi_ncpdp_map = [] self.npi_field_index = [] self.npi_lookup_dict = {} self.npi_header_columns = {} self.temp_table_name = 'Temp_Taxonomies_Npi_Ids_{0}_{1}'.format( self.entity_type, self.map_id).replace('-', '') pre_process_folder = os.path.split(self.merge_root_path)[-1] self.temp_folder = '{0}/Input/TaxonomyCodePopulation'.format( self.merge_root_path) self.temp_s3_folder = 'PythonPreProcess/{0}/Input/TaxonomyCodePopulation'.format( pre_process_folder)
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableLinkedClaimIdPopulationFromPreviousClaimId')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean(configurations['EnableLinkedClaimIdPopulationFromPreviousClaimId']) is False: return False return self.has_required_column()
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableClaimHICNReplacement', 'MBITransitionDate')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnableClaimHICNReplacement']) is False: return False self.mbi_transition_date = configurations['MBITransitionDate'] return self._has_required_column()
def __init__(self, context): IPreProcessScript.__init__(self, context) self.claim_member_id_index = None self.claim_hicn_index = None self.claim_payment_date_index = None self.claim_contract_id_index = None self.mbi_transition_date = None self.unload_columns = [ 'member_id_member', 'contract_id_product_reference', 'hicn_member', 'mbi_member' ] self.unload_columns_index = dict( (k[1], k[0]) for k in enumerate(self.unload_columns)) self.member_contract_set = set() self.member_dict = {} self.temp_table_name = 'Temp_ClaimHICNReplacement_{0}_{1}'.format( self.entity_type, self.map_id).replace('-', '') pre_process_folder = os.path.split(self.merge_root_path)[-1] self.temp_folder = '{0}/Input/ClaimHICNReplacement'.format( self.merge_root_path) self.temp_s3_folder = 'PythonPreProcess/{0}/Input/ClaimHICNReplacement'.format( pre_process_folder)
def will_execute(self): query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableDataLoadingFilterCriteria', 'DataLoadingFilterCriteria')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnableDataLoadingFilterCriteria'] ) is False or configurations['DataLoadingFilterCriteria'].strip( ) == '': return False self.data_loading_filter_criteria = FilterExpressionParser( configurations['DataLoadingFilterCriteria'].lower(), self.header_columns).to_filter_expression() if self.data_loading_filter_criteria: return True return False
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableLoadingWeeklyPaidClaims')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnableLoadingWeeklyPaidClaims']) is False: return False paid_date_field = self.map_columns.where( lambda x: x['redshift_name'] == 'paid_date_medical_claims_header' ).first_or_default() if paid_date_field: self.paid_date_index = paid_date_field['index'] return True return False
def will_execute(self): if self.entity_type not in ['Claim', 'DentalClaim']: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableDentalAndMedicalClaimExtractor')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean(configurations['EnableDentalAndMedicalClaimExtractor']) is False: return False if self.entity_type == 'DentalClaim': procedure_code = self.map_columns.where(lambda x: x['redshift_name'] == 'procedure_code_dental_claim_detail').first_or_default() else: procedure_code = self.map_columns.where(lambda x: x['redshift_name'] == 'procedure_code_medical_claims_detail').first_or_default() if procedure_code is None: return False self.procedure_code_index = procedure_code['index'] return True
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnableChartPOSTOBPopulation')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnableChartPOSTOBPopulation']) is False: return False is_chart_review = rds_provider.fetch_one( 'SELECT IsChartReview FROM ControlFiles WHERE Id={}'.format( self.control_file_id))[0] if is_chart_review is False: return False provider_type_field = self.map_columns.where(lambda x: x[ 'redshift_name'] == 'medical_claim_type_code_medical_claims_header' ).first_or_default() if provider_type_field is None: return False self.provider_type_code_index = provider_type_field['index'] place_of_service_code_field = self.map_columns.where( lambda x: x['redshift_name'] == 'place_of_service_code_medical_claims_header').first_or_default() if place_of_service_code_field is not None: self.place_of_service_code_index = place_of_service_code_field[ 'index'] type_of_bill_code_field = self.map_columns.where( lambda x: x['redshift_name'] == 'type_of_bill_code_medical_claims_header').first_or_default() if type_of_bill_code_field is not None: self.type_of_bill_code_index = type_of_bill_code_field['index'] if place_of_service_code_field is None and type_of_bill_code_field is None: return False return True
def will_execute(self): if self.entity_type != EntityType.Claim.name: return False query = "SELECT [Key],Value FROM Configurations WHERE [Key] IN ('EnablePopulatingDiagnosisPointer')" data = rds_provider.fetch_all(query) configurations = dict((k[0], k[1]) for k in data) if IPreProcessScript.to_boolean( configurations['EnablePopulatingDiagnosisPointer']) is False: return False is_chart_review = self.file_name.startswith('ChartReview_Merged_') if is_chart_review: return False claim_type_code_field = self.map_columns.where(lambda x: x[ 'redshift_name'] == 'medical_claim_type_code_medical_claims_header' ).first_or_default() if claim_type_code_field is None: return False self.claim_type_code_index = claim_type_code_field['index'] return True
def __init__(self, context): IPreProcessScript.__init__(self, context) self.claim_source_index = None self.claim_id_index = None
def __init__(self, context): IPreProcessScript.__init__(self, context) self.diagnosis_codes_map = [] self.claim_type_code_index = None self.claim_id_index = None self.claim_line_number_index = None
def __init__(self, context): IPreProcessScript.__init__(self, context) self.max_paid_date = None self.paid_date_index = None self.any_records_found = False
def __init__(self, context): IPreProcessScript.__init__(self, context) self.diagnosis_pointers_map = [] self.diagnosis_codes_map = [] self.claim_type_code_index = None
def __init__(self, context): IPreProcessScript.__init__(self, context) self.data_loading_filter_criteria = None self.any_records_found = False
def __init__(self, context): IPreProcessScript.__init__(self, context) self.procedure_code_index = None
def __init__(self, context): IPreProcessScript.__init__(self, context) self.provider_type_code_index = None self.place_of_service_code_index = None self.type_of_bill_code_index = None