Agency alloctor
Design & Implementation
Module Information
Interface Definition
class AgencyAllocator(BaseService):
def allocate_agency(
self,
small_geo_list: List[Dict],
benefit_code: Dict,
program: Dict,
) -> List[Dict]:
"""
Allocates agencies to geographic zones.
Args:
small_geo_list: List of dicts with keys:
- batch_control_geo_id
- administrative_zone_id_small
- administrative_zone_mnemonic_small
benefit_code: Dict with keys:
- id
- mnemonic
program: Dict with keys:
- id
- mnemonic
Returns:
List of dicts with keys:
- batch_control_geo_id
- administrative_zone_id_small
- administrative_zone_mnemonic_small
- benefit_code_id
- program_id
- agency_id
- agency_mnemonic
- agency_name
- agency_admin_name
- agency_admin_email
- agency_admin_phone
- agency_additional_attributes
"""
raise NotImplementedError()Reference Implementation: AgencyAllocatorRefImpl
Database Models Used
Algorithm
Key Characteristics
Data Types in Response
Factory Pattern
Configuration
Database Dependencies
Tables Required
Connection
Integration Points
Celery Worker Integration
Error Handling
Implementation Notes
Last updated
Was this helpful?