设备管理注册心跳远程指令屏幕是怎么活起来的
上篇搞定了权限体系。这篇开始做第一个业务模块——设备管理。设备是整个系统的第一环。没有设备注册进来后面素材、节目、统计都无从谈起。设备有哪些属性回到之前画的表结构CREATETABLEt_device(idBIGINTPRIMARYKEY,device_noVARCHAR(50)NOTNULL,-- 设备编号唯一nameVARCHAR(100)NOTNULL,-- 设备名称modelVARCHAR(50),-- double_side/stand/wallgroup_idBIGINT,-- 所属分组resolutionVARCHAR(20)DEFAULT1920x1080,layout_templateVARCHAR(50)DEFAULTsingle,-- 分屏布局statusVARCHAR(20)DEFAULToffline,-- online/offline/errorip_addressVARCHAR(50),last_heartbeatDATETIME,...);每个字段都有它的来由device_no设备唯一编号相当于身份证。心跳上报和节目下发都靠它model双面屏、立式屏、壁挂屏——不同型号播放器适配不同layout_template单屏、左右分屏、上下分屏、三区——影响素材怎么排status不在线的设备不发节目避免浪费流量last_heartbeat判断在线的依据——超过 5 分钟没心跳就算离线设备分组的取舍要不要做设备分组我想了想——如果只有三五台设备分组是多余的。但如果一个客户有 20 家门店每家店 2 块屏40 台设备不分组根本管不过来。所以我做了分组但做得极简t_device_group就三个字段——名称、描述、创建更新时间。不搞嵌套分组不搞继承关系一级分组够用。心跳机制设备怎么上报心跳一条 POST 请求POST /api/v1/devices/{deviceNo}/heartbeat后端更新last_heartbeat时间。前端列表页根据心跳判断在线状态5 分钟内有心跳 → 在线超过 5 分钟 → ⚪ 离线超过 30 分钟且之前在线 → 异常这个接口是公开的——不需要登录。设备端播放器没有用户概念它只管上报。远程指令有时候需要远程操作设备——重启、关机、调音量、调亮度。这些叫指令PostMapping(/{id}/command)RequirePermission(device:command)publicApiResultVoidsendCommand(PathVariableLongid,RequestBodyCommandDTOdto){deviceService.sendCommand(id,dto);returnApiResult.success();}指令发出去后状态流转是pending → sent → success/failed设备下次心跳时拉取待执行指令执行完上报结果。不是实时的——但够用了。Controller 全貌50 个 Java 文件里DeviceController 是最大的一个GET /api/v1/devices → 列表分页 搜索 POST /api/v1/devices → 新增设备 GET /api/v1/devices/{id} → 设备详情 PUT /api/v1/devices/{id} → 编辑设备 DELETE /api/v1/devices/{id} → 删除设备 GET /api/v1/devices/{id}/commands → 指令历史 POST /api/v1/devices/{id}/command → 发送指令 GET /api/v1/devices/groups → 分组列表 POST /api/v1/devices/groups → 新建分组 DELETE /api/v1/devices/groups/{id} → 删除分组 GET /api/v1/devices/{deviceNo}/current-program → [公开] 拉取当前节目 POST /api/v1/devices/{deviceNo}/heartbeat → [公开] 心跳上报 POST /api/v1/devices/{deviceNo}/play-log → [公开] 播放日志认证接口 6 个公开接口 3 个。每个认证接口都标了RequirePermission——viewer 只能看列表operator 能增能改admin 能删。到这里设备管理模块就完成了。设备能注册、有心跳、能分组、能远程发命令。下篇做素材管理——上传图片视频、分类管理。素材是整个系统里文件最多的模块。关于作者无羡独立开发者全栈工程师专注 AI 应用与微服务架构。 分类技术复盘 个人博客 — 更多技术文章✨ 开发者福利整理 — 云服务资源汇总 软件工坊 — 我的技术分享 个人门户 — 独立开发作品全集

相关新闻

PhotoMath Pro:对着数学题拍张照,答案和解题步骤全有了

PhotoMath Pro:对着数学题拍张照,答案和解题步骤全有了

辅导孩子作业时,一道方程算半天,最后发现第一步就错了;自学高数,课本上的步骤跳得太多,根本看不懂怎么推导的;考试前想快速验证自己的解题过程,身边却找不到人对答案——如果你也经历过这些&quo…

2026/8/10 2:49:00 阅读更多 →
三维建模中阵列操作的核心:方向向量详解与实战避坑指南

三维建模中阵列操作的核心:方向向量详解与实战避坑指南

1. 项目概述:从“方向”到“向量”的思维转换 在三维建模、计算机图形学、游戏开发乃至工业设计领域,“阵列”是一个高频操作。无论是为了快速复制一排路灯、一列螺栓,还是生成复杂的几何图案,阵列工具都不可或缺。然而&#xff0…

2026/8/8 18:29:39 阅读更多 →
Unity动画系统进阶:从Animation到Animator状态机完整工作流解析

Unity动画系统进阶:从Animation到Animator状态机完整工作流解析

1. 项目概述:从Animation到Animator的进化之路 如果你是从Unity 4.x甚至更早版本一路用过来的老开发者,看到项目里同时存在 Animation 组件和 Animator 组件,心里大概会涌起一股复杂的怀旧感。十多年前,我们给一个门做开关动画…

2026/8/9 5:46:15 阅读更多 →

最新新闻

Unity资源管理:分类策略与优化实践指南

Unity资源管理:分类策略与优化实践指南

1. Unity资源分类:从入门到精通的完整指南作为一名Unity开发者,我深知资源管理是项目成败的关键因素之一。记得刚入行时,我曾因为资源分类混乱导致项目后期难以维护,不得不花费两周时间重构整个资源库。本文将分享我在Unity资源分…

2026/8/10 2:49:24 阅读更多 →
信奥P6069分组问题:贪心算法与C++实现详解

信奥P6069分组问题:贪心算法与C++实现详解

1. 项目概述:信奥刷题与P6069题目解析最近在准备信奥比赛的过程中,我发现P6069『MdOI R1』Group这道题目特别能锻炼编程思维和算法能力。这道题来自一个知名的在线评测平台,考察的是对分组问题的理解和实现能力。作为C选手,我花了…

2026/8/10 2:49:24 阅读更多 →
Python自动化Excel数据处理实战指南

Python自动化Excel数据处理实战指南

1. Python与Excel的黄金组合价值解析当数据处理遇上办公自动化,Python与Excel的结合堪称现代职场效率革命的典范。作为一名长期混迹数据领域的开发者,我亲历过无数次日复一日手工处理Excel表格的噩梦,直到发现Python这个"办公外挂"…

2026/8/10 2:49:24 阅读更多 →
大语言模型长期记忆实验:从向量数据库到AI“想念”信号观测

大语言模型长期记忆实验:从向量数据库到AI“想念”信号观测

最近,AI圈子里一个名为“机忆”的项目,让很多开发者和技术爱好者陷入了沉思。它不是一个追求更高准确率的模型,也不是一个优化推理速度的工具,而是一个关于“记忆”与“情感”的实验性尝试。当我们将AI模型拟人化,赋予…

2026/8/10 2:49:24 阅读更多 →
MATLAB GUI水果分类识别:从环境搭建到调优的完整工程实践

MATLAB GUI水果分类识别:从环境搭建到调优的完整工程实践

这类项目最值得先看的不是它用了多少算法,而是能不能在你自己的电脑上,用常见的图片,稳定地把苹果、香蕉、橙子这些水果分清楚。很多教程只讲理论,真到自己跑的时候,环境、路径、图片格式、参数设置,每一步…

2026/8/10 2:49:24 阅读更多 →
从游戏资源到虚拟舞台:逆向工程构建可交互虚拟演唱会全流程

从游戏资源到虚拟舞台:逆向工程构建可交互虚拟演唱会全流程

你点开一个视频,标题写着“虚拟演唱会”,画面里是二次元风格的虚拟角色在舞台上歌唱。你可能会想,这不就是一段预先渲染好的动画MV吗?和那些游戏里的过场动画有什么区别?区别就在于,你看到的这个“虚拟演唱…

2026/8/10 2:48:24 阅读更多 →

日新闻

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南 【免费下载链接】graphql-css A blazing fast CSS-in-GQL™ library. 项目地址: https://gitcode.com/gh_mirrors/gr/graphql-css GraphQL-CSS是一个基于GraphQL的CSS-in-GQL™库&#xff0…

2026/8/10 0:00:02 阅读更多 →
告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode.com/…

2026/8/10 0:00:02 阅读更多 →
BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案 【免费下载链接】BepInEx.ConfigurationManager Plugin configuration manager for BepInEx 项目地址: https://gitcode.com/gh_mirrors/be/BepInEx.ConfigurationManager 你是否曾经因为游戏插件的复杂…

2026/8/10 0:00:02 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/10 1:05:29 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/10 1:05:29 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/10 1:05:29 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/10 1:05:29 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →