Example #1
0
    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 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 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()
Example #5
0
 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
Example #7
0
    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
Example #9
0
    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