def build_initial_gene_model(server:str): # server:str = 'localhost' # server: str = '165.227.89.140' # schema__graphql = 'schema.graphql' users_dict = {'*****@*****.**':'manuel', '*****@*****.**':'carrie', '*****@*****.**':'paul', '*****@*****.**':'mary', 'loader':'loader', 'updater':'updater' } # erase_neo4j(schema__graphql,server) write_users(users_dict,server) auto_user_id: str = get_editor_id('loader',server) print(auto_user_id) authors_dict = get_authors(server) reference_dict = get_literature_references(server) journals_dict = get_journals(server) hgnc_gene_name_dict = create_hgnc_gene_name_dict() write_jax_genes(server,reference_dict,journals_dict,authors_dict,auto_user_id,PMID_extractor) gene_dict = get_jax_gene_ids(server) omini_genes:list = read_omni_genes('data/tblOS_GLOBAL_GLOBAL_Ref_AllPanelsGenes.csv') write_omni_genes(omini_genes,server,auto_user_id,gene_dict,PMID_extractor,PubMed_extractor,reference_dict,journals_dict,authors_dict,hgnc_gene_name_dict)
def update_jax(server: str): # server:str = 'localhost' # server: str = '165.227.89.140' editor = 'updater' editor_id = get_editor_id(editor, server) print(editor_id) jax_dict = get_jax_descriptions(server) authors_dict = get_authors(server) reference_dict = get_literature_references(server) journals_dict = get_journals(server) omnigene_dict = get_omnigenes(server) json_files = get_list_of_files(JAX_PATH + 'genes') print('total=', len(json_files)) change_count = 0 new_count = 0 for json_file in json_files: jax: dict = read_one_gene_jax_json(json_file) if jax is not None: gene = jax['gene'] description = jax['description'] if gene in jax_dict: item = jax_dict[gene] statement = item['statement'] if description != statement: change_count += 1 print(change_count, 'description changed for', gene) print('new:' + description) print('old:' + statement) # pmid_extractor:callable,reference_dict:dict,journal_dict:dict,author_dict:dict s = create_jax_description(item['id'], item['field'], description, editor_id, PMID_extractor, reference_dict, journals_dict, authors_dict) print(s) send_mutation(s, server) print() else: new_count += 1 print(new_count, '***new entry', gene) s = write_one_jax_gene(jax, editor_id, PMID_extractor, reference_dict, journals_dict, authors_dict, omnigene_dict) print(s) send_mutation(s, server) print()
def main(): server: str = 'localhost' # server: str = '165.227.89.140' editor: str = '*****@*****.**' editor_id: str = get_editor_id(editor, server) print(editor_id) edits = read_edits('data/GeneDescriptions2.tsv') authors_dict: dict = get_authors(server) reference_dict: dict = get_literature_references(server) journals_dict: dict = get_journals(server) jax_gene_dict: dict = get_jax_gene_ids(server) omnigene_dict = get_omnigene_descriptions(server) hgnc_gene_name_dict = create_hgnc_gene_name_dict() for edit in edits: gene_name: str = edit['gene'] if gene_name in hgnc_gene_name_dict: gene_name = hgnc_gene_name_dict[gene_name] print(gene_name) # gene_id, old_description_id,field = get_id_old_id_and_field(edit['gene'], server) if gene_name not in omnigene_dict: gene_description: str = edit['description'] s = create_omni_gene(edit['gene'], gene_description, editor_id, jax_gene_dict, PMID_extractor, PubMed_extractor, reference_dict, journals_dict, authors_dict, hgnc_gene_name_dict) print(s) send_mutation(s, server) else: item = omnigene_dict[gene_name] s = write_new_gene_description(item['id'], item['statement'], item['field'], edit['description'], editor_id, PMID_extractor, reference_dict, journals_dict, authors_dict) print(s) send_mutation(s, server) print()
def write_to_prod(): return '165.227.89.140' def write_to_dev(): return '161.35.115.213' # server: str = 'localhost' # server: str = '161.35.115.213' server: str = write_to_dev() editor_ids: dict = get_editor_ids(server) authors_dict: dict = graphql_utils_extra.get_authors(server) reference_dict: dict = graphql_utils_extra.get_literature_references(server) journals_dict: dict = graphql_utils_extra.get_journals(server) jax_gene_dict:dict = get_jax_gene_ids(server) auto_user_id: str = get_editor_id('loader', server) hgnc_gene_name_dict = create_hgnc_gene_name_dict() @app.route('/new_gene/<string:gene_name>', methods=['GET']) def new_gene(gene_name): id = graphql_utils_extra.get_omnigene_ID_by_name(gene_name, server) if id==None: curation_item = {'gene': gene_name, 'description': None, 'oncogenic_category': None, 'synonmyms': None} s = graphql_utils_extra.create_omni_gene(gene_name, curation_item, editor_ids, jax_gene_dict, PMID_extractor, PubMed_extractor, reference_dict, journals_dict, authors_dict, hgnc_gene_name_dict) # print(s) if s != '': m = send_mutation(s, server)