fix(cache): 修复权限缓存清理脚本并更新公司配置
- 在清理脚本中添加sys模块导入以支持命令行参数解析
- 为菜单角色ID缓存键添加扫描功能,支持通过命令行参数指定后缀
- 更新SQL注释,标记人资敏感数据权限授予操作已确认
- 交换HM和TRT公司的配置,将长辉电力分配给HM,北京同仁堂分配给TRT
| | |
| | | import socket |
| | | import re |
| | | import json |
| | | import sys |
| | | from pathlib import Path |
| | | |
| | | source = Path('yudao-server/src/main/resources/application-local.yaml').read_text(encoding='utf-8') |
| | |
| | | keys.extend(key for key in batch if key.decode().endswith(suffixes)) |
| | | if cursor == b'0': |
| | | break |
| | | menu_suffixes = tuple(':' + str(int(value)) for value in sys.argv[1:]) |
| | | if menu_suffixes: |
| | | cursor = b'0' |
| | | while True: |
| | | cursor, batch = command('SCAN', cursor, 'MATCH', '*menu_role_ids*', 'COUNT', 100) |
| | | keys.extend(key for key in batch if key.decode().endswith(menu_suffixes)) |
| | | if cursor == b'0': |
| | | break |
| | | print('Target permission cache keys:', [key.decode() for key in keys]) |
| | | if keys: |
| | | print('Deleted permission cache entries:', command('DEL', *keys)) |
| | |
| | | -- 待用户确认:给已有对应页面授权的角色补授查询权限,包含人资敏感数据。 |
| | | -- 用户于 2026-10-12 确认允许执行:给已有对应页面授权的角色补授查询权限,包含人资敏感数据。 |
| | | INSERT INTO `mom-hm`.system_role_menu (role_id,menu_id,creator,create_time,updater,update_time,deleted) |
| | | SELECT DISTINCT parentGrant.role_id,m.id,'1',NOW(),'1',NOW(),b'0' FROM `mom-hm`.system_menu m JOIN `mom-hm`.system_role_menu parentGrant ON parentGrant.menu_id=m.parent_id AND parentGrant.deleted=b'0' JOIN `mom-hm`.system_role r ON r.id=parentGrant.role_id AND r.deleted=b'0' AND r.status=0 WHERE m.permission IN ('bi:dashboard:query','bpm:oa-notice:query','crm:invoice:query','crm:sale-quotation:query','erp:purchase-request:query','hrm:overtime:query','hrm:resignation:query','hrm:transfer:query','hrm:attendance-exception:query','hrm:attendance-holiday:query','hrm:attendance-record:query','hrm:attendance-rule:query','hrm:attendance-summary:query','hrm:employee-social-security:query','hrm:salary-calculation:query','hrm:salary-payment:query','hrm:social-security-scheme:query','hrm:tax-rate-config:query','mes:pd-document:query','mes:pd-process-param:query','mes:pd-process-param-template:query','mes:pro-mps:query','srm:tender-config:query') AND m.deleted=b'0' AND m.status=0 AND NOT EXISTS (SELECT 1 FROM `mom-hm`.system_role_menu rm WHERE rm.role_id=parentGrant.role_id AND rm.menu_id=m.id); |