# division_hierarchy.py """ Mapping of specific divisions to parent departments """ # Parent Department IDs and Names DEPARTMENTS = { "40000003": "Information Technology", "40000010": "Finance", "40000005": "Human Resources", "40000009": "Legal", "40000011": "Communication", "40000012": "Business Development", "40000004": "Strategic Planning", "40000245": "Project Studies", "40000246": "Market Studies", "40020002": "Services and Facilities", "40020003": "Purchasing and Contracts", "40000794": "Governance and Compliance", "40000638": "Credit Risk", "40000565": "Portfolio Management", "40000564": "Credit Relationship", "40020004": "Credit Control Division", "40000013": "Loans Support Division", "40000667": "Enterprise Risk Management", "40001089": "Audit Excellence Unit", "40000096": "Operations Audit Division", "40001088": "Credit Audit Division", "40000097": "IT Audit Division", "40000520": "Cyber Security Division", "40020001": "SIDF Academy", "40001188": "Corporate Excellence", "40000522": "CEO Advisory Office", "40000523": "Board Secretary", "40020005": "Chief of Staff Office", "40020000": "ILab", "40000488": "Secondment", "40001063": "Credit Analysis & Advisory Division", "40000089": "VP Office Credit", } # Mapping: Division Name -> (Department Name, Department ID) DIVISION_TO_DEPARTMENT = { # FINANCE "General Accounting Division": ("Finance", "40000010"), "Accounts Payable Division": ("Finance", "40000010"), "Accounts Receivable Division": ("Finance", "40000010"), "Financial Reporting & Control Division": ("Finance", "40000010"), "Audit & Financial Analysis": ("Finance", "40000010"), # INFORMATION TECHNOLOGY "IT Governance & Quality Division": ("Information Technology", "40000003"), "Applications Development & Integrations": ("Information Technology", "40000003"), "IT Infrastructure & Operations Div.": ("Information Technology", "40000003"), "Applications Maintenance & Support Div.": ("Information Technology", "40000003"), "IT Security Implementation & Operations": ("Information Technology", "40000003"), "IT Manager's Office": ("Information Technology", "40000003"), "Enterprise Architecture Team": ("Information Technology", "40000003"), "Reporting & Data Analytics Unit": ("Information Technology", "40000003"), # HUMAN RESOURCES "Rewards & Hr Operations Division": ("Human Resources", "40000005"), "HR Business Partner": ("Human Resources", "40000005"), "Talent Development Division": ("Human Resources", "40000005"), "Od & Talent Acquisition Division": ("Human Resources", "40000005"), "Org.Culture & Initiatives Division": ("Human Resources", "40000005"), # LEGAL "Legal Agreements and Consultancy Division": ("Legal", "40000009"), "Contracts & Mortgages and Guarantees Division": ("Legal", "40000009"), "Cases Division": ("Legal", "40000009"), # COMMUNICATION "Public Relations & Media Division": ("Communication", "40000011"), "Internal Communication Unit": ("Communication", "40000011"), # BUSINESS DEVELOPMENT "Marketing Division": ("Business Development", "40000012"), "Partnerships Dev&Advisory Services Div": ("Business Development", "40000012"), # STRATEGIC PLANNING "Strategy Division": ("Strategic Planning", "40000004"), "Corporate Performance Division": ("Strategic Planning", "40000004"), "Knowledge Management Unit": ("Strategic Planning", "40000004"), # PROJECTS "Project Management Division": ("Project Studies", "40000245"), "Projects Consultancy Division": ("Project Studies", "40000245"), "Construction Consultancy Division": ("Project Studies", "40000245"), # MARKET RESEARCH "Market Research Div.": ("Market Studies", "40000246"), "Market Studies Division": ("Market Studies", "40000246"), "Business Intelligence Div.": ("Market Studies", "40000246"), # FACILITIES "Facilities Management Division": ("Services and Facilities", "40020002"), "Documents and Administrative Communications Center": ("Services and Facilities", "40020002"), "Security and Safety Division": ("Services and Facilities", "40020002"), "Industrial Safety & Loss Prevention Div": ("Services and Facilities", "40020002"), # PURCHASING "Procurements Contracts and Vendors Division": ("Purchasing and Contracts", "40020003"), "Purchasing Division": ("Purchasing and Contracts", "40020003"), # GOVERNANCE "Enterprise Governance Division": ("Governance and Compliance", "40000794"), "Compliance Regulatory Division": ("Governance and Compliance", "40000794"), "Compliance Operations Division": ("Governance and Compliance", "40000794"), "Operational Risk Management Division": ("Enterprise Risk Management", "40000667"), "Financial Risk Management Division": ("Enterprise Risk Management", "40000667"), "Cybersecurity Governance Unit": ("Cyber Security Division", "40000520"), "Cybersecurity Defense Unit": ("Cyber Security Division", "40000520"), # CREDIT "Credit Risk Division": ("Credit Risk", "40000638"), "Credit Relationships Division": ("Credit Relationship", "40000564"), "Credit Control Team - A": ("Credit Control Division", "40020004"), "Credit Control Team - B": ("Credit Control Division", "40020004"), "Collection Team": ("Credit Control Division", "40020004"), "Loan Follow-Up Team": ("Loans Support Division", "40000013"), "C&Lm Info Team": ("Credit Risk", "40000638"), # PORTFOLIO "Portfolio Manager'S Office": ("Portfolio Management", "40000565"), "Portfolio Division": ("Portfolio Management", "40000565"), "Special Assets Division": ("Portfolio Management", "40000565"), # EXCELLENCE "Programs Delivery Operations Division": ("Corporate Excellence", "40001188"), "Customer Excellence Division": ("Corporate Excellence", "40001188"), "Programs Design And Needs Assessment Division": ("Corporate Excellence", "40001188"), "Programs Evaluation & Quality Assurance Division": ("Corporate Excellence", "40001188"), "Product Dev For National Priorities Div": ("Corporate Excellence", "40001188"), "Product Dev For Customer Empowerment Div": ("Corporate Excellence", "40001188"), "Solutions & Design Division": ("Corporate Excellence", "40001188"), # AUDIT "Operations Audit Team": ("Operations Audit Division", "40000096"), # ACADEMY "Academy Strategic Partnerships Division": ("SIDF Academy", "40020001"), # EXECUTIVE "CEO Office": ("CEO Advisory Office", "40000522"), } def get_department(division_name: str) -> tuple: """ Get the parent department for a division. Args: division_name: Name of the specific division Returns: Tuple of (department_name, department_id) or (None, None) if not found """ return DIVISION_TO_DEPARTMENT.get(division_name, (None, None)) def get_department_name(division_name: str) -> str: """ Get just the department name for a division. Args: division_name: Name of the specific division Returns: Department name or "Unknown" if not found """ dept_name, _ = get_department(division_name) return dept_name or "Unknown" def get_department_id(division_name: str) -> str: """ Get just the department ID for a division. Args: division_name: Name of the specific division Returns: Department ID or None if not found """ _, dept_id = get_department(division_name) return dept_id