fix: convert UPN @sibcem.ru to @tcs.sibcem.ru for SD API

This commit is contained in:
Денис Кривоченко
2026-07-29 00:41:53 +07:00
parent 09a2ccc6b4
commit baeac6b1cc
+3 -3
View File
@@ -94,11 +94,11 @@ def get_ad_user_info(user_id: str) -> dict | None:
raw_mail = str(entry.mail) if 'mail' in entry else ""
# mail может быть "[]" (пустой LDAP объект), "" или "N/A" — фильтруем
mail = raw_mail if raw_mail and raw_mail not in ("[]", "N/A", "") else None
# Fallback: используем UPN если mail пустой
# Fallback: используем UPN если mail пустой, конвертируем @sibcem.ru → @tcs.sibcem.ru
if not mail:
raw_upn = str(entry.userPrincipalName) if 'userPrincipalName' in entry else ""
if raw_upn and raw_upn not in ("[]", "N/A", ""):
mail = raw_upn
mail = raw_upn.replace("@sibcem.ru", "@tcs.sibcem.ru")
city = str(entry.l) if 'l' in entry and entry.l.value else "Кемерово"
return {"cn": cn, "mail": mail, "city": city}
except Exception as e:
@@ -216,7 +216,7 @@ async def create_sd_ticket_for_trueconf(user_id: str, cn: str) -> str | None:
# Получаем email из AD
ad_info = get_ad_user_info(user_id)
requester_email = ad_info.get("mail") or DEFAULT_REQUESTER
requester_email = ad_info.get("mail") or user_id or DEFAULT_REQUESTER
city = ad_info.get("city", "Кемерово") if ad_info else "Кемерово"
description = (