|
|
@@ -342,8 +342,29 @@ async def modify_institution_controller(
|
|
|
if not add_ids and not delete_ids:
|
|
|
scope_info = None
|
|
|
log.info("scope 无变化,跳过")
|
|
|
- # 从请求中移除 scope 数据,避免与基础修改冲突
|
|
|
- data.pop("modify_scope_info", None)
|
|
|
+ elif applicable_scope in ("NONE", "none"):
|
|
|
+ # 暂不设置:清空支付宝范围(调用 scope.modify 删除所有成员)
|
|
|
+ try:
|
|
|
+ scope_old = await InstitutionScopeService.scopepageinfo_query_service(
|
|
|
+ auth=auth, institution_id=institution_id, enterprise_id=enterprise_id,
|
|
|
+ page_num=1, page_size=500,
|
|
|
+ )
|
|
|
+ old_adapter = scope_old.get("adapter_type", "")
|
|
|
+ old_ids = [str(i) for i in (scope_old.get("owner_id_list") or []) if i]
|
|
|
+
|
|
|
+ # 对非NONE的旧范围,清空所有成员
|
|
|
+ if old_adapter and old_adapter not in ("NONE",) and old_ids:
|
|
|
+ scope_info = {
|
|
|
+ "enterprise_id": enterprise_id,
|
|
|
+ "adapter_type": old_adapter,
|
|
|
+ "owner_type": "EMPLOYEE",
|
|
|
+ "delete_owner_id_list": old_ids,
|
|
|
+ }
|
|
|
+ log.info(f"暂不设置 - 清空支付宝旧成员: {old_adapter}, count={len(old_ids)}")
|
|
|
+ except Exception:
|
|
|
+ log.warning(f"查询旧scope失败,跳过清空支付宝成员")
|
|
|
+ # 从请求中移除 scope 数据,避免与基础修改冲突
|
|
|
+ data.pop("modify_scope_info", None)
|
|
|
|
|
|
# 第1次请求:仅修改制度基础信息(不含 scope)
|
|
|
base_data = {k: v for k, v in data.items() if k != "modify_scope_info"}
|