|
26 | 26 |
|
27 | 27 | import pyard.load |
28 | 28 | from pyard.smart_sort import smart_sort_comparator |
29 | | -from . import db, broad_splits |
| 29 | +from . import db |
| 30 | +from .broad_splits import broad_splits_dna_mapping |
30 | 31 | from .load import ( |
31 | 32 | load_g_group, |
32 | 33 | load_p_group, |
@@ -216,7 +217,7 @@ def generate_alleles_and_xx_codes_and_who( |
216 | 217 | xx_codes = xx_df.groupby(["1d"]).apply(lambda x: list(x["Allele"])).to_dict() |
217 | 218 |
|
218 | 219 | # Update xx codes with broads and splits |
219 | | - for broad, splits in broad_splits.broad_splits_dna_mapping.items(): |
| 220 | + for broad, splits in broad_splits_dna_mapping.items(): |
220 | 221 | for split in splits: |
221 | 222 | if broad in xx_codes: |
222 | 223 | xx_codes[broad].extend(xx_codes[split]) |
@@ -354,7 +355,9 @@ def to_serological_name(locus_name: str): |
354 | 355 | return sero_name |
355 | 356 |
|
356 | 357 |
|
357 | | -def generate_serology_mapping(db_connection: sqlite3.Connection, imgt_version): |
| 358 | +def generate_serology_mapping( |
| 359 | + db_connection: sqlite3.Connection, serology_mapping, imgt_version |
| 360 | +): |
358 | 361 | if not db.table_exists(db_connection, "serology_mapping"): |
359 | 362 | df_sero = load_serology_mappings(imgt_version) |
360 | 363 |
|
@@ -396,7 +399,7 @@ def generate_serology_mapping(db_connection: sqlite3.Connection, imgt_version): |
396 | 399 |
|
397 | 400 | # map alleles for split serology to their corresponding broad |
398 | 401 | # Update xx codes with broads and splits |
399 | | - for broad, splits in broad_splits.broad_splits_ser_mapping.items(): |
| 402 | + for broad, splits in serology_mapping.broad_splits_map.items(): |
400 | 403 | for split in splits: |
401 | 404 | try: |
402 | 405 | sero_mapping[broad] = "/".join( |
@@ -450,15 +453,19 @@ def get_db_version(db_connection: sqlite3.Connection): |
450 | 453 | return db.get_user_version(db_connection) |
451 | 454 |
|
452 | 455 |
|
453 | | -def generate_serology_broad_split_mapping( |
454 | | - db_connection: sqlite3.Connection, imgt_version |
455 | | -): |
| 456 | +def generate_broad_splits_mapping(db_connection: sqlite3.Connection, imgt_version): |
456 | 457 | if not db.table_exists(db_connection, "serology_broad_split_mapping"): |
457 | | - sero_mapping = pyard.load.load_serology_broad_split_mapping(imgt_version) |
| 458 | + sero_mapping, associated_mapping = pyard.load.load_serology_broad_split_mapping( |
| 459 | + imgt_version |
| 460 | + ) |
458 | 461 | db.save_serology_broad_split_mappings(db_connection, sero_mapping) |
459 | | - return sero_mapping |
| 462 | + db.save_serology_associated_mappings(db_connection, associated_mapping) |
| 463 | + return sero_mapping, associated_mapping |
| 464 | + |
| 465 | + sero_mapping = db.load_serology_broad_split_mappings(db_connection) |
| 466 | + associated_mapping = db.load_serology_associated_mappings(db_connection) |
460 | 467 |
|
461 | | - return db.load_serology_broad_split_mappings(db_connection) |
| 468 | + return sero_mapping, associated_mapping |
462 | 469 |
|
463 | 470 |
|
464 | 471 | def generate_cwd_mapping(db_connection: sqlite3.Connection): |
|
0 commit comments