Files
arrr-erp/app/modules/clients/association_service.py
2026-06-20 15:01:44 +05:30

28 lines
963 B
Python

def build_client_association(current_user, role_name, selected_partner_id=None):
role = (role_name or '').lower()
if role in ('system admin', 'firm admin'):
return {
'association_type': 'firm',
'firm_tenant_id': getattr(current_user, 'tenant_id', None),
'partner_user_id': selected_partner_id,
'created_source': 'firm_admin',
}
if role == 'partner':
return {
'association_type': 'firm',
'firm_tenant_id': getattr(current_user, 'tenant_id', None),
'partner_user_id': current_user.id,
'created_source': 'partner',
}
if role == 'consultant':
return {
'association_type': 'consultant',
'consultant_id': current_user.id,
'created_source': 'consultant',
}
return {
'association_type': 'self_service_unassigned',
'created_source': 'self_service',
}