def get_case_property_updates(test, domain):
     if (test.get_case_property('datamigration_microscopy_sample_a_result')
             == 'yes'
             or test.get_case_property('migration_created_case') == 'true'
             or test.get_case_property('test_type_value')
             not in ['microscopy-zn', 'microscopy-fluorescent']
             or test.get_case_property('result_recorded') != 'yes'
             or test.get_case_property('microscopy_sample_a_result')):
         return {}
     else:
         form_data = get_result_recorded_form(test)
         if form_data is None:
             return {}
         microscopy_sample_a_result = get_form_path(
             ['microscopy', 'ql_sample_a', 'sample_a_result'],
             form_data) or get_form_path([
                 'update_test_result', 'microscopy', 'ql_result',
                 'sample_a_result'
             ], form_data) or get_form_path(
                 ['microscopy', 'ql_result', 'sample_a_result'], form_data)
         if microscopy_sample_a_result:
             return {
                 'microscopy_sample_a_result': microscopy_sample_a_result,
             }
         else:
             return {}
 def get_case_property_updates(test, domain):
     if (test.get_case_property('datamigration_sputum_visual_appearance')
             == 'yes'
             or test.get_case_property('migration_created_case') == 'true'
             or test.get_case_property('test_type_value')
             not in ['microscopy-zn', 'microscopy-fluorescent']
             or test.get_case_property('result_recorded') != 'yes'
             or test.get_case_property('sputum_visual_appearance')):
         return {}
     else:
         form_data = get_result_recorded_form(test)
         if form_data is None:
             return {}
         sputum_visual_appearance = get_form_path([
             'update_test_result', 'microscopy', 'ql_result',
             'sample_a_visual_appearance'
         ], form_data) or get_form_path([
             'update_test_result', 'microscopy', 'ql_result',
             'sample_b_visual_appearance'
         ], form_data) or get_form_path([
             'microscopy', 'ql_result', 'sample_a_visual_appearance'
         ], form_data) or get_form_path([
             'microscopy', 'ql_result', 'sample_b_visual_appearance'
         ], form_data) or get_form_path([
             'microscopy', 'ql_sample_a', 'sample_a_visual_appearance'
         ], form_data) or get_form_path(
             ['microscopy', 'ql_sample_b', 'sample_b_visual_appearance'],
             form_data)
         if sputum_visual_appearance:
             return {
                 'sputum_visual_appearance': sputum_visual_appearance,
             }
         else:
             return {}
 def get_case_property_updates(test, domain):
     if (test.get_case_property('datamigration_tu_name_at_request') == 'yes'
             or test.get_case_property('migration_created_case') == 'true'
             or test.get_case_property('tu_name_at_request')):
         return {}
     else:
         form_data = get_test_created_form(test)
         tu_name_at_request = get_form_path(['person', 'tu_name'],
                                            form_data)
         if tu_name_at_request:
             return {
                 'tu_name_at_request': tu_name_at_request,
             }
         else:
             return {}
    def get_case_property_updates(test, domain):
        if (test.get_case_property(DATAMIGRATION_CASE_PROPERTY) == 'yes'
                or test.get_case_property(REFERRING_FACILITY_ID)):
            return {}

        form_data_requesting_test = get_test_created_form(test)
        referring_facility_id = get_form_path(
            ['ql_referring_facility_details', 'referring_facility_id'],
            form_data_requesting_test)
        if not referring_facility_id:
            return {}

        update = {
            REFERRING_FACILITY_ID: referring_facility_id,
        }
        try:
            referring_facility_name = SQLLocation.objects.get(
                domain=domain,
                location_id=referring_facility_id,
            ).name
            update[REFERRING_FACILITY_SAVED_NAME] = referring_facility_name
        except SQLLocation.DoesNotExist:
            pass
        return update
Esempio n. 5
0
    def get_case_property_updates(test, domain):
        if (test.get_case_property('datamigration_cbnaat_test_fix') != 'yes'
                and test.get_case_property('updated_by_migration')
                == 'enikshay_2b_cbnaat_fix'):
            form_data = get_result_recorded_form(test)
            if form_data:
                test_success = get_form_path([
                    'update_test_result', 'cbnaat', 'ql_cbnaat', 'test_success'
                ], form_data)
                if test_success == 'success':
                    tb_detected_a = get_form_path([
                        'update_test_result', 'cbnaat', 'ql_sample_a',
                        'sample_a_mtb_result'
                    ], form_data)
                    tb_detected_b = get_form_path([
                        'update_test_result', 'cbnaat', 'ql_sample_b',
                        'sample_b_mtb_result'
                    ], form_data)
                    rif_a = get_form_path(
                        [
                            'update_test_result', 'cbnaat', 'ql_sample_a',
                            'sample_a_rif_resistance_result'
                        ],
                        form_data,
                    )
                    rif_b = get_form_path(
                        [
                            'update_test_result', 'cbnaat', 'ql_sample_b',
                            'sample_b_rif_resistance_result'
                        ],
                        form_data,
                    )

                    if tb_detected_a == 'detected' or tb_detected_b == 'detected':
                        detected = 'TB Detected'
                    else:
                        detected = 'TB Not Detected'

                    if rif_a == 'detected' or rif_b == 'detected':
                        drug_resistance_list = 'r'
                        drug_sensitive_list = ''
                        resistance_display = 'R: Res'
                    elif rif_a == 'not_detected' or rif_b == 'not_detected':
                        drug_resistance_list = ''
                        drug_sensitive_list = 'r'
                        resistance_display = 'R: Sens'
                    else:
                        drug_resistance_list = ''
                        drug_sensitive_list = ''
                        resistance_display = ''

                    result_summary_display = '\n'.join(
                        filter(None, [
                            detected,
                            resistance_display,
                        ]))
                elif test_success == 'error':
                    error_code = get_form_path(
                        ['update_test_result', 'cbnaat', 'error_code'],
                        form_data)
                    result_summary_display = 'Test Error (' + error_code + ')'
                    drug_resistance_list = ''
                    drug_sensitive_list = ''
                elif test_success == 'invalid_result':
                    result_summary_display = 'Invalid Test Result'
                    drug_resistance_list = ''
                    drug_sensitive_list = ''
                else:
                    result_summary_display = 'Unknown Result'
                    drug_resistance_list = ''
                    drug_sensitive_list = ''

                return {
                    'result_summary_display': result_summary_display,
                    'drug_resistance_list': drug_resistance_list,
                    'drug_sensitive_list': drug_sensitive_list
                }
        return {}