【BOS基础系统_权限】权限常见问题之-脏数据导致的问题

【BOS基础系统_权限】权限常见问题之-脏数据导致的问题
【问题1】:分配角色报错,分配权限报错等
客户端错误堆栈:
The argument 'id' is invalid. '*******PERMITEM' length:43
解决方法:
1、报错日志中:存在非法id e98bf***************968bPERMITEM 长度为43,合法长度应该为44,应该是老的版本的遗留数据。
2、select * from T_pm_permitem where fid = 'e98bf***************968bPERMITEM' 查询不到数据
3、根据错误堆栈找到代码中执行的sql,根因在于表T_pm_userorgperm(或者t_pm_roleperm)中存在FpermitemID为上面非法id
(select * from T_pm_userorgperm where fpermitemId = 'e98bf***************968bPERMITEM' ;
select * from t_pm_roleperm where fpermitemId = 'e98bf***************968bPERMITEM')
4、同步权限项,确认一下权限项元数据中是否存在该权限项,同步之后发现该权限项依然查不到。
5、备份T_pm_userorgperm数据: select * into T_pm_userorgperm20200427 from T_pm_userorgperm;同理如果是t_pm_roleperm,就备份t_pm_roleperm的数据
6、删除脏数据:delete from T_pm_userorgperm where fpermitemId = 'e98bf*****
【BOS基础系统_权限】权限常见问题之-脏数据导致的问题
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



