def path_stage(self): module_name = self.module_list[3] check = False while not check: category = "pT" options = ["is", "0", "1", "2", "3", "4", "Other"] pt = ask.ask_option(category, options) category = "pN" options = ["0", "1", "2", "3", "4", "Other"] pn = ask.ask_option(category, options) category = ("M") options = ["0", "1", "Other"] m = ask.ask_option(category, options) path_stage, clinical_stage = BlockDescription.stage(pt, pn, m) last_update = datetime.now().strftime("%Y-%b-%d %H:%M") data_list = [ pt, pn, m, path_stage, clinical_stage, self.user_name, last_update ] columns_list = names(module_name) check = sql.review_input(self.file_number, columns_list, data_list) return (tuple(data_list))
def surgery_block_information_2(self): module_name = self.module_list[2] data_list = ['NA', ] * 18 check = False while not check: ihc_report = BlockDescription.ihc_report(ihc_type='Tumour_surgery_block') surgery_er, surgery_er_percent, surgery_pr, surgery_pr_percent, surgery_her2, surgery_her2_grade, \ surgery_fish, surgery_ki67 = ihc_report surgery_subtype = breast_cancer_subtype('surgery', surgery_er, surgery_pr, surgery_her2, surgery_her2_grade, surgery_fish) node_details = self.node_details() sentinel_node_number_removed, sentinel_node_number_positive, axillary_node_number_removed, \ axillary_node_number_positive, apical_node_number_removed, apical_node_number_positive = node_details surgery_perinodal_spread = ask.ask_list('Perinodal Spread', ask.create_yes_no_options ('Perinodal Spread', not_cancer='requires_follow_up')) pathological_pt = input('Pathological T Status (Enter T0/T1/T2 etc as given in report): ') pathological_pn = input('Pathological N Status (Enter N0/N1/N2 etc as given in report): ') metastasis = ask.ask_y_n('Did the patient have metastasis at diagnosis?') nat = sql.get_value(col_name='neoadjuvant_therapy', table=self.table_name, pk=self.fk, cursor=self.cursor, pk_name='fk', error_statement='what is the nact status?') if nat != 'nact_no': prefix = 'yp' else: prefix = 'p' pathological_stage, clinical_stage = BlockDescription.stage(pathological_pt, pathological_pn, metastasis, prefix) data_list = [surgery_er, surgery_er_percent, surgery_pr, surgery_pr_percent, surgery_her2, surgery_her2_grade, surgery_fish, surgery_ki67, surgery_subtype, sentinel_node_number_removed, sentinel_node_number_positive, axillary_node_number_removed, axillary_node_number_positive, apical_node_number_removed, apical_node_number_positive, surgery_perinodal_spread, pathological_pt, pathological_pn, str(metastasis).lower(), pathological_stage, clinical_stage, self.user_name, sql.last_update()] columns_list = names(module_name) check = sql.review_input(self.file_number, columns_list[:-2], data_list[:-2]) return data_list