Thingsboard二次开发---5.在Thingsboard中增加解决方案管理功能

news2025/2/23 0:56:15

前言

在使用Thingsboard的过程中发现TB虽然非常灵活,但实际的最终用户更希望是针对特定场景的成熟解决方案,页面都做好,不需要再进行配置,所以在原来的基础上增加了解决方案的功能,此方案比较适合给用户提供SaaS化的解决方案,给大家提供一个用TB做项目的思路,供参考。

主要功能包括

1.系统管理员可以配置解决方案,

a. 解决方案列表在这里插入图片描述
b.添加解决方案

在这里插入图片描述

c.解决方案功能列表

在这里插入图片描述

d.系统管理员可以分配解决方案给租户

在这里插入图片描述

2.租户管理员,可以分配解决方案给最终用户

在这里插入图片描述

3. 租户管理员,可以通过菜单切换不同的解决方案

在这里插入图片描述

4.最终用户可以通过菜单切换不同的解决方案

在这里插入图片描述

实现方式

具体的实现方式是增加了两个实体,对应到数据库表结构如下:

a. ffos_solution_suite 表用于存储解决方案本身

在这里插入图片描述

b.ffos_solution_item用于存储解决方案的功能页面,功能页面就是TB本身的仪表板,放在字段dashboard中

在这里插入图片描述
代码主要是针对实体的操作,读者可以参考前面的两篇文章,增加实体店前后端步骤自行来完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1068456.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Hugging Face】如何从hub中下载文件

huggingface_hub库提供了从存储在Hub上的仓库中下载文件的功能。您可以独立使用这些函数或将它们集成到您自己的库中,使您的用户更方便地与Hub交互。本指南将向您展示如何: 下载并缓存单个文件。下载并缓存整个代码库。将文件下载到本地文件夹。 下载单…

语义分割,实例分割,全景分割梳理

语义分割(semantic segmentation) 实例分割(instance segmentation) 全景分割(Panoptic Segmentation) 下面基于《Panoptic Segmentation 》这篇论文进行这几个概念的梳理 论文链接:https:/…

基于安卓android微信小程序的垃圾废品回收类软件

运行环境 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包&a…

软件测试的价值

测试人员可以参与到软件的全生命周期中,一切软件质量相关的活动。具体来说主要有: 1、需求评审,帮助产品梳理业务逻辑 测试人员对产品功能有丰富的业务测试经验,有时会比产品还要熟悉平台的整体业务逻辑,所以需求评审…

【PG】Linux系统部署PostgreSQL单机数据库

安装方式 1 安装包方式 (Packages and Installers) 支持的操作系统包括 liunxMacosWindowsBSDSolaris 2 源码安装 (Source code) 下载源码包 通过下载地址PostgreSQL: File Browser 可以看到有各个版本的源码目录 选择13.1…

WPF向Avalonia迁移(二、一些可能使用到的库)

可能使用到的一些库 1. UI库 开源项目:https://github.com/irihitech/Semi.Avalonia 如果想引用他的DataGrid样式还需要添加Semi.Avalonia.DataGrid 2. 图表库 LiveChartsCore.SkiaSharpView.Avalonia 3.SVG库 开源项目:https://github.com/wieslaw…

prometheus使用数据源的timestamp而非server的timestamp

关于timestamp指标的解释 prometheus中的指标timestamp有两个: prometheus拉取时刻的timestamp,即服务端的timestamp:time.Now();exporter的/metrics接口,除了返回metric,value,还返回timesta…

chromium线程模型(1)-普通线程实现(ui和io线程)

通过chromium 官方文档,线程和任务一节我们可以知道 ,chromium有两类线程,一类是普通线程,最典型的就是io线程和ui线程。 另一类是 线程池线程。 今天我们先分析普通线程的实现,下一篇文章分析线程池的实现。&#xff…

asp.net电影院选座系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net电影院选座系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 asp.net电影院选座系统1 二、功能介…

简述CRM系统软件的作用

销售部门作为企业重要的营收部门,做好企业管理意义重大。如今市场竞争激烈,人工管理很难兼顾。不少企业借助CRM销售管理系统优化改进工作流程中各个环节存在的问题。下面小Z来简单说说CRM系统是做什么的? 一、客户档案管理 通过CRM销售管理…

使用企业订货系统后的效果|软件定制开发|APP小程序搭建

使用企业订货系统后的效果|软件定制开发|APP小程序搭建 企业订货系统是一种高效的采购管理系统,它可以帮助企业更好地管理采购流程,降低采购成本,提高采购效率。 可以帮助企业提高销售效率和降低成本的软件工具。使用该系统后,企业…

押注“AI写小说”!陈天桥加持,宜搜科技二闯港股IPO

大数据产业创新服务媒体 ——聚焦数据 改变商业 9月29日,IPO征程一波三折的宜搜科技又一次递交招股书,向港交所上市发起冲击。 2014年,宜搜科技美股上市失败,三年后挂牌新三板。2019年,宜搜科技终止挂牌,冲…

vue:权限绑定菜单(全局引入,在template内用v-if调用)

登录成功后,将返回的权限保存到缓存 sessionStorage:浏览页面期间保存,关闭浏览器后丢掉数据 在utils内index.js内定义isAuth方法 在main.js内引入,并挂载全局 在vue页面内,在template内用v-if调用

WPF向Avalonia迁移(一、一些通用迁移项目)

通用变更 WPF&#xff1a;Visibility 其他参考文档 WPF&#xff1a; <TextBlock Visibility"Visible"/><TextBlock Visibility"Collapsed"/><TextBlock Visibility"Hidden"/>Avalonia &#xff1a; <TextBlock IsVisib…

京东快递超时件查询:教你如何操作

近年来&#xff0c;随着电商的快速发展&#xff0c;物流行业也迎来了蓬勃的发展。然而&#xff0c;由于物流订单数量庞大&#xff0c;物流公司在处理这些订单时往往会遇到一些瓶颈&#xff0c;例如超时订单的筛选。为了提高物流效率&#xff0c;许多物流公司采用了智能筛选超时…

IDEA的使用(一) (IntelliJ IDEA 2022.1.3版本)

目录 1. IDEA项目结构 2. 模块的导入操作 2.1 正规操作 2.2 取巧操作 2.3 出现乱码 2.4 模块改名 3. 代码模板的使用 后缀补全&#xff08;Postfix Completion&#xff09;、实时模板&#xff08;Live Templates&#xff09;菜单里面什么介绍都有&#xff0c;可以自学&a…

华为数通方向HCIP-DataCom H12-831题库(单选题:221-240)

第221题 以下哪些项能被正则表达式^30.成功匹配? A、200 100 300 B、100 200 300 C、300 200 100 D、300 100 200 答案:CD 解析: 30.其中的“点”表示的是任何的一个数字,表示的是as-path的开头;所以以300开头的都是满足题目需求的。 第222题 以下哪些项的Community属性能…

MongoDB增删改查常用操作以及podman下载MongoDB命令

Podman下载mongodb命令 podman run -d --name mongodb2 -p 27016:27017 mongo Navicat创建连接 新建数据库 创建集合 use test db.createCollection("coll1") MongoDB查询命令 ## 条件查询 db.getCollection("coll1").find({Date: "20230924&quo…

OnPrem.LLM:一个轻量级 Python 库,用于使用私有数据运行本地大型语言模型

一、介绍 OnPrem.LLM OnPrem.LLM 是一个简单的 Python 库&#xff0c;用于使用非公开数据运行本地大型语言模型。它默认使用的 7B 参数模型&#xff0c;你也可以通过提供 use_largerTrue 使用默认的 13B 模型。你还可以提供不同模型的 URL。OnPrem.LLM 主要受到 privateGPT 项…

【SpringCloud】微服务技术栈入门5 - ElasticSearch

ElasticSearch 倒排索引 倒排索引建立&#xff1a;对文章标题进行分词&#xff0c;将每个词存入 term&#xff0c;这些词也对应一个 id 也就是文档 倒排索引检索&#xff1a;假设我们搜索华为手机 分词&#xff1a;“华为”“手机”从数据库中找到对应的两个 key&#xff0c;…