Ver Fonte

1、调试宝终端功能菜单权限sql
2、根据当前登录用户,查询是否已绑定调试宝设备

liweimin há 2 semanas atrás
pai
commit
784a0532f0

+ 41 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/device/TsbWebSocketController.java

@@ -0,0 +1,41 @@
+package com.ruoyi.web.controller.device;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.device.domain.model.TsbUserDeviceBind;
+import com.ruoyi.device.mapper.TsbUserDeviceMapper;
+import jakarta.annotation.Resource;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 调试宝 WebSocket连接 辅助接口
+ * 测试是否可以连接
+ *
+ * @author lwm
+ */
+@RestController
+@RequestMapping("/tsb/ws")
+public class TsbWebSocketController extends BaseController
+{
+    @Resource
+    private TsbUserDeviceMapper tsbUserDeviceMapper;
+
+    /**
+     * 当前登录用户的设备绑定信息(建立 WebSocket 前校验)
+     */
+    @GetMapping("/bind")
+    public AjaxResult bindInfo()
+    {
+        Long userId = SecurityUtils.getUserId();
+        TsbUserDeviceBind bind = tsbUserDeviceMapper.selectBindByUserId(userId);
+        if (bind == null || bind.getDeviceSn() == null || StringUtils.isEmpty(bind.getDeviceType()))
+        {
+            return error("当前用户未绑定调试宝设备,无法建立实时连接");
+        }
+        return success(bind);
+    }
+}

+ 90 - 0
sql/tsb_3.0.sql

@@ -64,3 +64,93 @@ INSERT INTO sys_role_menu VALUES ('2', '3203');
 INSERT INTO sys_role_menu VALUES ('2', '3204');
 INSERT INTO sys_role_menu VALUES ('2', '3205');
 INSERT INTO sys_role_menu VALUES ('2', '3206');
+
+
+
+-- ----------------------------
+-- 调试宝终端功能菜单权限(若依 sys_menu)
+-- 依据 tsb_home_page.lua:第一层为选项卡目录(M),第二层为功能菜单(C)
+-- 目录 menu_id 按 100 跨度预留,便于后续扩展按钮权限(F)
+-- 权限标识 下发至设备登录 permissions 字段,供终端按功能鉴权
+-- icon:目录与菜单均使用若依内置 SVG 图标名
+-- ----------------------------
+
+-- ========== 第一层:目录(对应 tab_names,menu_id 3300/3400/3500/3600) ==========
+
+-- 常用功能
+INSERT INTO sys_menu VALUES ('3300', '常用功能', '0', '6', 'app-common', NULL, '', '', 1, 0, 'M', '0', '0', '', 'dashboard', 'admin', sysdate(), '', NULL, '终端-常用功能目录');
+-- 目标设备监测
+INSERT INTO sys_menu VALUES ('3400', '目标设备监测', '0', '7', 'app-monitor', NULL, '', '', 1, 0, 'M', '0', '0', '', 'monitor', 'admin', sysdate(), '', NULL, '终端-目标设备监测目录');
+-- 目标设备管理
+INSERT INTO sys_menu VALUES ('3500', '目标设备管理', '0', '8', 'app-manage', NULL, '', '', 1, 0, 'M', '0', '0', '', 'tool', 'admin', sysdate(), '', NULL, '终端-目标设备管理目录');
+-- 本机设备管理
+INSERT INTO sys_menu VALUES ('3600', '本机设备管理', '0', '9', 'app-local', NULL, '', '', 1, 0, 'M', '0', '0', '', 'phone', 'admin', sysdate(), '', NULL, '终端-本机设备管理目录');
+
+
+-- ========== 第二层:菜单(对应 demos_by_tab) ==========
+
+-- ---------- 常用功能(3301-3399 预留) ----------
+INSERT INTO sys_menu VALUES ('3301', '报税口',     '3300', '1', 'tax', 'app-common/tax/index', '', '', 1, 0, 'C', '0', '0', 'common:tax',      'money',         'admin', sysdate(), '', NULL, '报税口 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3302', '液位仪',     '3300', '2', 'opw', 'app-common/opw/index', '', '', 1, 0, 'C', '0', '0', 'common:opw',      'slider',        'admin', sysdate(), '', NULL, '液位仪 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3303', '提枪信号',   '3300', '3', 'raise', 'app-common/raise/index', '', '', 1, 0, 'C', '0', '0', 'common:raise',       'radio',         'admin', sysdate(), '', NULL, '提枪信号 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3304', '编码器',     '3300', '4', 'coder', 'app-common/coder/index', '', '', 1, 0, 'C', '0', '0', 'common:coder',      'code',          'admin', sysdate(), '', NULL, '编码器 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3305', '简易示波器', '3300', '5', 'oscilloscope', 'app-common/oscilloscope/index', '', '', 1, 0, 'C', '0', '0', 'common:oscilloscope', 'chart',         'admin', sysdate(), '', NULL, '简易示波器 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3306', '帮助',       '3300', '6', 'help', 'app-common/help/index', '', '', 1, 0, 'C', '0', '0', 'common:help',     'question',      'admin', sysdate(), '', NULL, '帮助 Web 镜像页');
+
+-- ---------- 目标设备监测(3401-3499 预留) ----------
+INSERT INTO sys_menu VALUES ('3401', '日志监测',       '3400', '1', 'devlog', 'app-monitor/devlog/index', '', '', 1, 0, 'C', '0', '0', 'monitor:devlog', 'log',         'admin', sysdate(), '', NULL, '日志监测 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3402', '485监测',        '3400', '2', '485', 'app-monitor/485/index', '', '', 1, 0, 'C', '0', '0', 'monitor:485',    'component',   'admin', sysdate(), '', NULL, '485监测 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3403', '232监测',        '3400', '3', '232', 'app-monitor/232/index', '', '', 1, 0, 'C', '0', '0', 'monitor:232',    'link',        'admin', sysdate(), '', NULL, '232监测 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3404', '射频局域网监测', '3400', '4', 'lora', 'app-monitor/lora/index', '', '', 1, 0, 'C', '0', '0', 'monitor:lora',   'online',      'admin', sysdate(), '', NULL, '射频局域网监测 Web 镜像页');
+
+-- ---------- 目标设备管理(3501-3599 预留) ----------
+INSERT INTO sys_menu VALUES ('3501', '固件包下载', '3500', '1', 'firm', 'app-manage/firm/index', '', '', 1, 0, 'C', '0', '0', 'manage:firm',    'download',      'admin', sysdate(), '', NULL, '固件包下载 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3502', '升级',       '3500', '2', 'upgrade', 'app-manage/upgrade/index', '', '', 1, 0, 'C', '0', '0', 'manage:upgrade', 'upload',        'admin', sysdate(), '', NULL, '升级 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3503', '刷机',       '3500', '3', 'reflash', 'app-manage/reflash/index', '', '', 1, 0, 'C', '0', '0', 'manage:reflash', 'build',         'admin', sysdate(), '', NULL, '刷机 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3504', 'MQTT配置',   '3500', '4', 'mqtt', 'app-manage/mqtt/index', '', '', 1, 0, 'C', '0', '0', 'manage:mqtt',    'server',        'admin', sysdate(), '', NULL, 'MQTT配置 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3505', '信道切换',   '3500', '5', 'channel', 'app-manage/channel/index', '', '', 1, 0, 'C', '0', '0', 'manage:channel', 'switch',        'admin', sysdate(), '', NULL, '信道切换 Web 镜像页');
+
+-- ---------- 本机设备管理(3601-3699 预留) ----------
+INSERT INTO sys_menu VALUES ('3601', '本机信息', '3600', '1', 'info', 'app-local/info/index', '', '', 1, 0, 'C', '0', '0', 'local:info', 'documentation', 'admin', sysdate(), '', NULL, '本机信息 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3602', '本机升级', '3600', '2', 'upgrade', 'app-local/upgrade/index', '', '', 1, 0, 'C', '0', '0', 'local:upgrade',  'more-up',       'admin', sysdate(), '', NULL, '本机升级 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3603', '本机日志', '3600', '3', 'log', 'app-local/log/index', '', '', 1, 0, 'C', '0', '0', 'local:log',     'logininfor',    'admin', sysdate(), '', NULL, '本机日志 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3604', '亮度管理', '3600', '4', 'light', 'app-local/light/index', '', '', 1, 0, 'C', '0', '0', 'local:light',   'theme',         'admin', sysdate(), '', NULL, '亮度管理 Web 镜像页');
+INSERT INTO sys_menu VALUES ('3605', '网络设置', '3600', '5', 'wlan', 'app-local/wlan/index', '', '', 1, 0, 'C', '0', '0', 'local:wlan',    'international', 'admin', sysdate(), '', NULL, '网络设置 Web 镜像页');
+
+
+-- ----------------------------
+-- 普通角色 role_id=2 授权(按需调整角色 ID;超级管理员默认 *:*:*)
+-- 游客模式可见子集见 tsb_home_page.lua demos_by_tab_visitor,可在角色管理中单独配置
+-- ----------------------------
+INSERT INTO sys_role_menu VALUES ('2', '3300');
+INSERT INTO sys_role_menu VALUES ('2', '3301');
+INSERT INTO sys_role_menu VALUES ('2', '3302');
+INSERT INTO sys_role_menu VALUES ('2', '3303');
+INSERT INTO sys_role_menu VALUES ('2', '3304');
+INSERT INTO sys_role_menu VALUES ('2', '3305');
+INSERT INTO sys_role_menu VALUES ('2', '3306');
+
+INSERT INTO sys_role_menu VALUES ('2', '3400');
+INSERT INTO sys_role_menu VALUES ('2', '3401');
+INSERT INTO sys_role_menu VALUES ('2', '3402');
+INSERT INTO sys_role_menu VALUES ('2', '3403');
+INSERT INTO sys_role_menu VALUES ('2', '3404');
+
+INSERT INTO sys_role_menu VALUES ('2', '3500');
+INSERT INTO sys_role_menu VALUES ('2', '3501');
+INSERT INTO sys_role_menu VALUES ('2', '3502');
+INSERT INTO sys_role_menu VALUES ('2', '3503');
+INSERT INTO sys_role_menu VALUES ('2', '3504');
+INSERT INTO sys_role_menu VALUES ('2', '3505');
+
+INSERT INTO sys_role_menu VALUES ('2', '3600');
+INSERT INTO sys_role_menu VALUES ('2', '3601');
+INSERT INTO sys_role_menu VALUES ('2', '3602');
+INSERT INTO sys_role_menu VALUES ('2', '3603');
+INSERT INTO sys_role_menu VALUES ('2', '3604');
+INSERT INTO sys_role_menu VALUES ('2', '3605');
+
+
+
+
+