index.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import { config } from '@/api/request/config.js'
  2. /* 操作权限验证
  3. * str 为权限字符 用于匹配操作角色的字符
  4. * str === performEvacuation 应急疏散操作权限
  5. * str === checkGentle 安全检查
  6. */
  7. export function controlsRestrictVerify(str) {
  8. if(str){
  9. let controlsRestrict = uni.getStorageSync('controlsRestrict');
  10. return controlsRestrict.indexOf(str) != -1;
  11. }else{
  12. return false
  13. }
  14. }
  15. /* 页面权限验证
  16. * str 为权限字符 用于匹配操作角色的字符
  17. */
  18. export function pageRestrictVerify(str) {
  19. if(str){
  20. let permissions = uni.getStorageSync('permissions')+'';
  21. return permissions.indexOf(str) != -1;
  22. }else{
  23. return false
  24. }
  25. }
  26. /* 硬件控制与视频监控权限验证(校级管理员/院级管理员/实验室管理员)
  27. subAdminId 传入的实验室管理员ID
  28. schoolId 校级管理员身份ID
  29. collegeId 院级管理员身份ID
  30. userInfo.position 当前用户身份ID (系统用户为NULL)
  31. userInfo.userId 当前用户userID
  32. */
  33. export function itoOrVideoLimits(subAdminId,safeIds) {
  34. let userInfo = uni.getStorageSync('user');
  35. let schoolId = config.schoolId;
  36. let collegeId = config.collegeId;
  37. //如果 当前用户userId 与 安全员ID相等
  38. if(safeIds){
  39. for(let i=0;i<safeIds.length;i++){
  40. if( userInfo.userId == safeIds[i]){
  41. return true
  42. }
  43. }
  44. }
  45. if(userInfo.position == null){
  46. //如果是管理员(系统用户)
  47. return true
  48. }else if(userInfo.position == schoolId || userInfo.position == collegeId){
  49. //如果是校级管理员/院级管理员
  50. return true
  51. }else if(userInfo.userId == subAdminId){
  52. //如果当前用户userId 与 管理员ID相等
  53. return true
  54. }else{
  55. return false
  56. }
  57. }