def read_wellboreidnames_from_csv()

in src/loading_manifest/common_manifest.py [0:0]


def read_wellboreidnames_from_csv(csv_file):
    dict_uniqid_boreidname = dict()
    non_uniqids = set()
    name_unique_wellbore_identifier = "Unique Wellbore Identifier"
    name_alias = "Alias"
    name_wellbore_name_set = "Wellbore Name Set"
    name_wellbore_name = "Wellbore Name"
    col_unique_wellbore_identifier = 0
    col_alias = 3
    col_wellbore_name_set = 4
    col_wellbore_name = 2

    (col_unique_wellbore_identifier, col_alias, col_wellbore_name_set, col_wellbore_name) = \
        csv_colname_to_colindex(csv_file,
                                (name_unique_wellbore_identifier, name_alias,
                                 name_wellbore_name_set, name_wellbore_name),
                                (col_unique_wellbore_identifier, col_alias,
                                 col_wellbore_name_set, col_wellbore_name))

    with open(csv_file, mode='r') as infile:
        reader = csv.reader(infile)
        for rows in reader:
            if "SHELL_UWBI" == rows[col_wellbore_name_set].strip():
                uniqid = rows[col_unique_wellbore_identifier].strip()
                wellboreid = rows[col_alias].strip()
                wellborename = rows[col_wellbore_name].strip()
                if uniqid not in non_uniqids:
                    if uniqid in dict_uniqid_boreidname:
                        # duplicate key found, do not trust and use
                        logging.warning("Duplicate wellbore ids found for uniqid: " + uniqid)
                        non_uniqids.add(uniqid)
                        del dict_uniqid_boreidname[uniqid]
                    else:
                        dict_uniqid_boreidname[uniqid] = (wellboreid, wellborename)

    return dict_uniqid_boreidname