- 移除员工同步独立的 API 凭证配置 - 复用 dingtalk 配置组的 CorpId、AppKey、AppSecret - 简化前端界面,只保留开关和测试连接
This commit is contained in:
@@ -29,17 +29,18 @@ class EmployeeSyncService:
|
||||
self._dingtalk_config = None
|
||||
|
||||
async def _get_dingtalk_config(self) -> Dict[str, str]:
|
||||
"""从数据库获取钉钉 API 配置"""
|
||||
"""从数据库获取钉钉 API 配置(复用免密登录配置)"""
|
||||
if self._dingtalk_config:
|
||||
return self._dingtalk_config
|
||||
|
||||
try:
|
||||
# 从 dingtalk 配置组读取(与免密登录共用)
|
||||
result = await self.db.execute(
|
||||
text("""
|
||||
SELECT config_key, config_value
|
||||
FROM tenant_configs
|
||||
WHERE tenant_id = :tenant_id
|
||||
AND config_group = 'employee_sync'
|
||||
AND config_group = 'dingtalk'
|
||||
"""),
|
||||
{"tenant_id": self.tenant_id}
|
||||
)
|
||||
@@ -47,7 +48,13 @@ class EmployeeSyncService:
|
||||
|
||||
config = {}
|
||||
for key, value in rows:
|
||||
config[key] = value
|
||||
# 转换 key 名称以匹配 DingTalkService 需要的格式
|
||||
if key == 'DINGTALK_CORP_ID':
|
||||
config['CORP_ID'] = value
|
||||
elif key == 'DINGTALK_APP_KEY':
|
||||
config['CLIENT_ID'] = value
|
||||
elif key == 'DINGTALK_APP_SECRET':
|
||||
config['CLIENT_SECRET'] = value
|
||||
|
||||
self._dingtalk_config = config
|
||||
return config
|
||||
|
||||
Reference in New Issue
Block a user