在好例子网,分享、交流、成长!
您当前所在位置:首页CSS 开发实例Box Model → 简单易用的物联网平台

简单易用的物联网平台

Box Model

下载此实例
  • 开发语言:CSS
  • 实例大小:111.30M
  • 下载次数:45
  • 浏览次数:267
  • 发布时间:2022-12-11
  • 实例类别:Box Model
  • 发 布 人:rockbot
  • 文件格式:.zip
  • 所需积分:4
 相关标签: 物联网 物联 简单 联网

实例介绍

【实例简介】简单易用的物联网平台

可用于搭建物联网平台以及二次开发和学习。适用于智能家居、智慧办公、智慧社区、农业监测、水利监测、工业控制等。


  • 权限管理: 用户管理、部门管理、岗位管理、菜单管理、角色管理、字典和参数管理等
  • 系统监控: 操作日志、登录日志、系统日志、在线用户、服务监控、连接池监控、缓存监控等
  • 产品管理: 产品、产品物模型、产品分类、产品固件、设备授权码、自定义告警等
  • 设备管理: 设备控制、设备分组、设备定时、设备日志、监测统计、设备定位、设备分享、设备禁用、OTA升级、实时状态、影子模式、实时监测、加密认证等
  • EMQ管理: Mqtt客户端、监听器、消息主题、消息订阅、插件管理、规则引擎、资源
  • 硬件 SDK: 支持WIFI和MQTT连接、物模型响应、实时监测、定时上报数据、AES加密、NTP时间、AP配网等
  • 物模型管理: 属性(设备状态和监测数据),功能(执行特定任务),事件(设备主动上报给云端)
  • 其他功能:多租户、场景联动、视频监控、数据可视化平台、统计、新闻资讯、通知公告、支持TDengine时序数据库
  • 开发中功能:网关、TCP/Modbus协议支持、云云对接智能音箱、第三方登录、设备管理界面自定义等

【实例截图】

from clipboard

【核心代码】

.
├── 0567774b7cad8f830060a313ede496e5_haolizi.zip
└── wumei-smart-master
    ├── LICENSE
    ├── README.md
    ├── app
    │   ├── README.md
    │   ├── wumei.apk
    │   └── wumei.ipa
    ├── docker
    │   ├── data
    │   │   ├── README.md
    │   │   ├── docker-compose.yml
    │   │   ├── emqx
    │   │   │   └── conf
    │   │   │       ├── emqx_auth_http.conf
    │   │   │       └── emqx_web_hook.conf
    │   │   ├── java
    │   │   │   └── server.jar
    │   │   ├── mysql
    │   │   │   ├── initdb
    │   │   │   │   └── wumei-smart.sql
    │   │   │   └── mysql.cnf
    │   │   └── nginx
    │   │       ├── html
    │   │       │   ├── favicon.ico
    │   │       │   ├── html
    │   │       │   │   └── ie.html
    │   │       │   ├── index.html
    │   │       │   ├── js
    │   │       │   │   └── echarts.min.js
    │   │       │   ├── map-geojson
    │   │       │   │   ├── 110000.json
    │   │       │   │   ├── 120000.json
    │   │       │   │   ├── 130000.json
    │   │       │   │   ├── 140000.json
    │   │       │   │   ├── 150000.json
    │   │       │   │   ├── 210000.json
    │   │       │   │   ├── 220000.json
    │   │       │   │   ├── 230000.json
    │   │       │   │   ├── 310000.json
    │   │       │   │   ├── 320000.json
    │   │       │   │   ├── 330000.json
    │   │       │   │   ├── 340000.json
    │   │       │   │   ├── 350000.json
    │   │       │   │   ├── 360000.json
    │   │       │   │   ├── 370000.json
    │   │       │   │   ├── 410000.json
    │   │       │   │   ├── 420000.json
    │   │       │   │   ├── 430000.json
    │   │       │   │   ├── 440000.json
    │   │       │   │   ├── 450000.json
    │   │       │   │   ├── 460000.json
    │   │       │   │   ├── 500000.json
    │   │       │   │   ├── 510000.json
    │   │       │   │   ├── 520000.json
    │   │       │   │   ├── 530000.json
    │   │       │   │   ├── 540000.json
    │   │       │   │   ├── 610000.json
    │   │       │   │   ├── 620000.json
    │   │       │   │   ├── 630000.json
    │   │       │   │   ├── 640000.json
    │   │       │   │   ├── 650000.json
    │   │       │   │   ├── 710000.json
    │   │       │   │   ├── 810000.json
    │   │       │   │   ├── 820000.json
    │   │       │   │   └── china.json
    │   │       │   ├── robots.txt
    │   │       │   └── static
    │   │       │       ├── css
    │   │       │       │   ├── app.13e03d78.css
    │   │       │       │   ├── chunk-01ef53b6.3a8cae2a.css
    │   │       │       │   ├── chunk-05c003da.cba7792e.css
    │   │       │       │   ├── chunk-089dff80.a2cbe23d.css
    │   │       │       │   ├── chunk-0ec87556.a0bc207e.css
    │   │       │       │   ├── chunk-1208fcbe.0113c56b.css
    │   │       │       │   ├── chunk-20708a12.76180aa3.css
    │   │       │       │   ├── chunk-212cf630.d939784f.css
    │   │       │       │   ├── chunk-217f35d6.348131f7.css
    │   │       │       │   ├── chunk-2b1e05d4.f8409f53.css
    │   │       │       │   ├── chunk-30dee6ba.c98a66ea.css
    │   │       │       │   ├── chunk-322338bd.4dc16f66.css
    │   │       │       │   ├── chunk-345dd7f2.265d9d9a.css
    │   │       │       │   ├── chunk-3c3f73de.b94b48c5.css
    │   │       │       │   ├── chunk-40fa56d7.45a8262a.css
    │   │       │       │   ├── chunk-444dbb2e.1154d03c.css
    │   │       │       │   ├── chunk-4fa3cd9b.acb7f2b5.css
    │   │       │       │   ├── chunk-503e96e7.4145e07f.css
    │   │       │       │   ├── chunk-534bfe5d.4e8df5b3.css
    │   │       │       │   ├── chunk-55d183ec.3ee0b3ca.css
    │   │       │       │   ├── chunk-57c7bd1b.84f98409.css
    │   │       │       │   ├── chunk-5b83c289.ce2a2394.css
    │   │       │       │   ├── chunk-5d5dae90.2fe730cc.css
    │   │       │       │   ├── chunk-6a51e97f.27e4d2df.css
    │   │       │       │   ├── chunk-6b7bd194.cba7792e.css
    │   │       │       │   ├── chunk-7038a376.3a8cae2a.css
    │   │       │       │   ├── chunk-722d83df.f8bb9930.css
    │   │       │       │   ├── chunk-73a35ad3.872b3fd2.css
    │   │       │       │   ├── chunk-7478a735.790b0602.css
    │   │       │       │   ├── chunk-780d27a9.bc63431f.css
    │   │       │       │   ├── chunk-7904333e.5ecb98dc.css
    │   │       │       │   ├── chunk-7d80f20e.8e33e124.css
    │   │       │       │   ├── chunk-82e00426.f85bafe7.css
    │   │       │       │   ├── chunk-84ab2b1e.4f41ae6c.css
    │   │       │       │   ├── chunk-857102da.7dd1700d.css
    │   │       │       │   ├── chunk-ba509436.0b5d3873.css
    │   │       │       │   ├── chunk-c28ad000.b5bdb2c6.css
    │   │       │       │   ├── chunk-c375e110.c1c799ed.css
    │   │       │       │   ├── chunk-commons.2f319299.css
    │   │       │       │   ├── chunk-de8781a4.038aa1f8.css
    │   │       │       │   ├── chunk-elementUI.6e808e7d.css
    │   │       │       │   ├── chunk-f9a89ad4.f8bb9930.css
    │   │       │       │   └── chunk-libs.cecb3c02.css
    │   │       │       ├── fonts
    │   │       │       │   ├── element-icons.535877f5.woff
    │   │       │       │   └── element-icons.732389de.ttf
    │   │       │       ├── img
    │   │       │       │   ├── 401.089007e7.gif
    │   │       │       │   ├── 404.a57b6f31.png
    │   │       │       │   ├── 404_cloud.0f4bc32b.png
    │   │       │       │   ├── code.4ae965b2.jpg
    │   │       │       │   ├── dark.412ca67e.svg
    │   │       │       │   ├── guang.ca9c02b4.png
    │   │       │       │   ├── left_top_hong.cd40dc70.png
    │   │       │       │   ├── left_top_huang.625500ce.png
    │   │       │       │   ├── left_top_lan.443aa307.png
    │   │       │       │   ├── left_top_lv.2e344fbc.png
    │   │       │       │   ├── light.4183aad0.svg
    │   │       │       │   ├── pageBg.f9f9dcd5.png
    │   │       │       │   ├── phone.f3083d2f.png
    │   │       │       │   ├── phone.f63a3b9e.jpg
    │   │       │       │   ├── product.8957f07e.jpg
    │   │       │       │   ├── profile.8ea50b80.jpg
    │   │       │       │   └── top.41ada94a.png
    │   │       │       └── js
    │   │       │           ├── app.527a5722.js
    │   │       │           ├── chunk-005cb0c7.c9589208.js
    │   │       │           ├── chunk-01ef53b6.e660ff6a.js
    │   │       │           ├── chunk-05c003da.de7d8fe7.js
    │   │       │           ├── chunk-089dff80.f1bc5f12.js
    │   │       │           ├── chunk-09798080.f8e197dc.js
    │   │       │           ├── chunk-0a3b683f.c51aed2b.js
    │   │       │           ├── chunk-0d5b0085.20b2e268.js
    │   │       │           ├── chunk-0ec87556.783840e7.js
    │   │       │           ├── chunk-1022b97a.c4780d40.js
    │   │       │           ├── chunk-1208fcbe.3f412d2c.js
    │   │       │           ├── chunk-1348daec.711f7914.js
    │   │       │           ├── chunk-185f9102.d9016665.js
    │   │       │           ├── chunk-1b192f48.659d6648.js
    │   │       │           ├── chunk-1c8de8cb.31faff14.js
    │   │       │           ├── chunk-20708a12.5b2dbb61.js
    │   │       │           ├── chunk-210ca3e9.88e05161.js
    │   │       │           ├── chunk-210ce324.66315f91.js
    │   │       │           ├── chunk-212cf630.7ba16b19.js
    │   │       │           ├── chunk-217f35d6.6d5996e1.js
    │   │       │           ├── chunk-2727631f.538b8335.js
    │   │       │           ├── chunk-28b7a9aa.25d7132a.js
    │   │       │           ├── chunk-2b1e05d4.094cab16.js
    │   │       │           ├── chunk-2bb7b688.416cfb66.js
    │   │       │           ├── chunk-2d0a3b04.123273b4.js
    │   │       │           ├── chunk-2d0b2b28.5a870f11.js
    │   │       │           ├── chunk-2d0b9594.4165a31a.js
    │   │       │           ├── chunk-2d0c0844.373bf0fa.js
    │   │       │           ├── chunk-2d0c1d7b.8af30521.js
    │   │       │           ├── chunk-2d0c4289.07d6ecdd.js
    │   │       │           ├── chunk-2d0c4680.2af553c2.js
    │   │       │           ├── chunk-2d0c8e18.475a4091.js
    │   │       │           ├── chunk-2d0c94ba.ebcb361f.js
    │   │       │           ├── chunk-2d0cc9b6.5fc1e6f0.js
    │   │       │           ├── chunk-2d0d0818.1c66bdfd.js
    │   │       │           ├── chunk-2d0da2ea.336d9495.js
    │   │       │           ├── chunk-2d0de3b1.ead9ed50.js
    │   │       │           ├── chunk-2d0e1ec7.f4676c24.js
    │   │       │           ├── chunk-2d0e2366.68f2ed78.js
    │   │       │           ├── chunk-2d0f012d.1bde8e38.js
    │   │       │           ├── chunk-2d0f08a0.d30ff142.js
    │   │       │           ├── chunk-2d20955d.96d5f3ed.js
    │   │       │           ├── chunk-2d2102b6.a5e01d67.js
    │   │       │           ├── chunk-2d212b99.b700d975.js
    │   │       │           ├── chunk-2d217a3b.a2dc1745.js
    │   │       │           ├── chunk-2d217c9e.8ec1968a.js
    │   │       │           ├── chunk-2d21a3bb.8a51ac4c.js
    │   │       │           ├── chunk-2d22252c.ab0d57cc.js
    │   │       │           ├── chunk-2d228e22.4577e771.js
    │   │       │           ├── chunk-2d230898.afc39cfc.js
    │   │       │           ├── chunk-2d238605.0c760cd5.js
    │   │       │           ├── chunk-30dee6ba.cc1ba935.js
    │   │       │           ├── chunk-322338bd.4979413d.js
    │   │       │           ├── chunk-345dd7f2.b317fcb9.js
    │   │       │           ├── chunk-39413ce8.3aedffc2.js
    │   │       │           ├── chunk-3a08d90c.0abf19a4.js
    │   │       │           ├── chunk-3b0424d2.9436e997.js
    │   │       │           ├── chunk-3c3f73de.ebcfabac.js
    │   │       │           ├── chunk-3d865021.40069c9d.js
    │   │       │           ├── chunk-3f93175c.d0cb3bf6.js
    │   │       │           ├── chunk-40fa56d7.517f8e51.js
    │   │       │           ├── chunk-444dbb2e.2974d896.js
    │   │       │           ├── chunk-45b5baee.77593187.js
    │   │       │           ├── chunk-4b1e4dca.8875373b.js
    │   │       │           ├── chunk-4fa3cd9b.053ab2fa.js
    │   │       │           ├── chunk-503e96e7.cadd0b64.js
    │   │       │           ├── chunk-50e312d8.378d5d67.js
    │   │       │           ├── chunk-524e9261.fbdb0e6a.js
    │   │       │           ├── chunk-534bfe5d.8f97fdd5.js
    │   │       │           ├── chunk-53d33ee8.039379e3.js
    │   │       │           ├── chunk-55d183ec.3ce898df.js
    │   │       │           ├── chunk-57c7bd1b.e693d395.js
    │   │       │           ├── chunk-582b2a7a.d05d26c6.js
    │   │       │           ├── chunk-5b83c289.3808bcbf.js
    │   │       │           ├── chunk-5d5dae90.d7411a9f.js
    │   │       │           ├── chunk-68702101.8a64cf01.js
    │   │       │           ├── chunk-69d5971b.54d64407.js
    │   │       │           ├── chunk-6a51e97f.91bb294e.js
    │   │       │           ├── chunk-6b7bd194.23e88e52.js
    │   │       │           ├── chunk-7038a376.be17489b.js
    │   │       │           ├── chunk-712f179b.5df23399.js
    │   │       │           ├── chunk-722c5e57.d40f618d.js
    │   │       │           ├── chunk-722d83df.3cf08051.js
    │   │       │           ├── chunk-73a35ad3.aedb601e.js
    │   │       │           ├── chunk-7478a735.6be4455a.js
    │   │       │           ├── chunk-74926972.e9bcc025.js
    │   │       │           ├── chunk-74f15b20.06636b6b.js
    │   │       │           ├── chunk-7544041a.7cafaed9.js
    │   │       │           ├── chunk-780d27a9.39c2ba9b.js
    │   │       │           ├── chunk-786a3f08.a9ecf3a0.js
    │   │       │           ├── chunk-7904333e.edaa4df3.js
    │   │       │           ├── chunk-7c5661b0.0658b3d8.js
    │   │       │           ├── chunk-7d80f20e.c3a1f1f0.js
    │   │       │           ├── chunk-7fa21b9b.d64bdcb5.js
    │   │       │           ├── chunk-823020a0.3dc7c56c.js
    │   │       │           ├── chunk-82e00426.8261a547.js
    │   │       │           ├── chunk-84ab2b1e.65981042.js
    │   │       │           ├── chunk-857102da.40d72934.js
    │   │       │           ├── chunk-8579d4da.6f9d2499.js
    │   │       │           ├── chunk-8ee3fc10.26bb0c39.js
    │   │       │           ├── chunk-a662c34e.632cc27f.js
    │   │       │           ├── chunk-ae1506a0.b2676811.js
    │   │       │           ├── chunk-b2bd8bd6.7deed925.js
    │   │       │           ├── chunk-ba509436.af1b5be7.js
    │   │       │           ├── chunk-bcc438f2.9cc6d46a.js
    │   │       │           ├── chunk-c28ad000.8d14a9c3.js
    │   │       │           ├── chunk-c375e110.a162c6fc.js
    │   │       │           ├── chunk-ce3349bc.2255f55c.js
    │   │       │           ├── chunk-commons.a62bb782.js
    │   │       │           ├── chunk-d19c1a98.613801e1.js
    │   │       │           ├── chunk-db4f2f0e.1091bbda.js
    │   │       │           ├── chunk-de8781a4.a35e05a9.js
    │   │       │           ├── chunk-e2ef1232.5ac34eb0.js
    │   │       │           ├── chunk-e58e88fa.16b72ced.js
    │   │       │           ├── chunk-e5f6428c.d1b8b9b8.js
    │   │       │           ├── chunk-ee99bc1c.c542e652.js
    │   │       │           ├── chunk-elementUI.4125decd.js
    │   │       │           ├── chunk-f9a89ad4.97ba7dc6.js
    │   │       │           └── chunk-libs.e6e26bd8.js
    │   │       └── nginx.conf
    │   └── old
    │       ├── Dockerfile
    │       ├── description.txt
    │       ├── docker-entrypoint.sh
    │       ├── emqx4.0
    │       │   ├── emqx.conf
    │       │   ├── emqx_auth_http.conf
    │       │   ├── emqx_web_hook.conf
    │       │   └── loaded_plugins
    │       ├── nginx-ssl.conf
    │       ├── nginx.conf
    │       └── wumei-smart
    │           ├── java
    │           │   └── 放置后端jar包,改名为app.jar.txt
    │           └── vue
    │               └── 放置vue打包文件内容.txt
    ├── sdk
    │   ├── Arduino
    │   │   ├── ApConfig
    │   │   │   └── ApConfig.ino
    │   │   ├── Arduino-ESP32
    │   │   │   ├── Arduino-ESP32.ino
    │   │   │   ├── Base64.cpp
    │   │   │   ├── Base64.h
    │   │   │   ├── Helper.cpp
    │   │   │   └── Helper.h
    │   │   ├── Arduino-ESP8266
    │   │   │   ├── Arduino-ESP8266.ino
    │   │   │   ├── Base64.cpp
    │   │   │   ├── Base64.h
    │   │   │   ├── Helper.cpp
    │   │   │   └── Helper.h
    │   │   └── WumeiArduino
    │   │       ├── Apconfig.cpp
    │   │       ├── Apconfig.h
    │   │       ├── Auth.cpp
    │   │       ├── Auth.h
    │   │       ├── Base64.cpp
    │   │       ├── Base64.h
    │   │       ├── Config.cpp
    │   │       ├── Config.h
    │   │       ├── Mqtt.cpp
    │   │       ├── Mqtt.h
    │   │       ├── User.cpp
    │   │       ├── User.h
    │   │       └── WumeiArduino.ino
    │   ├── ESP-IDF
    │   │   └── README.md
    │   ├── RaspberryPi
    │   │   ├── README.md
    │   │   ├── aes.py
    │   │   ├── main_sdk.py
    │   │   └── 参考资料.txt
    │   └── 合宙
    │       ├── README.md
    │       ├── WeiMeiApp.lua
    │       ├── WeiMeiComAuth.lua
    │       ├── WeiMeiComInteraction.lua
    │       ├── WuMeiTest.lua
    │       ├── main.lua
    │       ├── mainAir724.lua
    │       └── mainVscode.lua
    ├── springboot
    │   ├── LICENSE
    │   ├── README.md
    │   ├── bin
    │   │   ├── clean.bat
    │   │   ├── package.bat
    │   │   └── run.bat
    │   ├── doc
    │   │   └── 若依环境使用手册.docx
    │   ├── pom.xml
    │   ├── ry.bat
    │   ├── ry.sh
    │   ├── sql
    │   │   └── wumei-smart.sql
    │   ├── wumei-admin
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           ├── java
    │   │           │   └── com
    │   │           │       └── ruoyi
    │   │           │           ├── WumeiSmartApplication.java
    │   │           │           ├── WumeiSmartServletInitializer.java
    │   │           │           └── web
    │   │           │               ├── controller
    │   │           │               │   ├── common
    │   │           │               │   │   ├── CaptchaController.java
    │   │           │               │   │   └── CommonController.java
    │   │           │               │   ├── monitor
    │   │           │               │   │   ├── CacheController.java
    │   │           │               │   │   ├── ServerController.java
    │   │           │               │   │   ├── SysLogininforController.java
    │   │           │               │   │   ├── SysOperlogController.java
    │   │           │               │   │   └── SysUserOnlineController.java
    │   │           │               │   ├── system
    │   │           │               │   │   ├── SysConfigController.java
    │   │           │               │   │   ├── SysDeptController.java
    │   │           │               │   │   ├── SysDictDataController.java
    │   │           │               │   │   ├── SysDictTypeController.java
    │   │           │               │   │   ├── SysIndexController.java
    │   │           │               │   │   ├── SysLoginController.java
    │   │           │               │   │   ├── SysMenuController.java
    │   │           │               │   │   ├── SysNoticeController.java
    │   │           │               │   │   ├── SysPostController.java
    │   │           │               │   │   ├── SysProfileController.java
    │   │           │               │   │   ├── SysRegisterController.java
    │   │           │               │   │   ├── SysRoleController.java
    │   │           │               │   │   └── SysUserController.java
    │   │           │               │   └── tool
    │   │           │               │       ├── SwaggerController.java
    │   │           │               │       └── TestController.java
    │   │           │               └── core
    │   │           │                   └── config
    │   │           │                       └── SwaggerConfig.java
    │   │           └── resources
    │   │               ├── META-INF
    │   │               │   └── spring-devtools.properties
    │   │               ├── application-druid.yml
    │   │               ├── application.yml
    │   │               ├── banner.txt
    │   │               ├── i18n
    │   │               │   └── messages.properties
    │   │               ├── logback.xml
    │   │               └── mybatis
    │   │                   └── mybatis-config.xml
    │   ├── wumei-common
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           └── java
    │   │               └── com
    │   │                   └── ruoyi
    │   │                       └── common
    │   │                           ├── annotation
    │   │                           │   ├── DataScope.java
    │   │                           │   ├── DataSource.java
    │   │                           │   ├── Excel.java
    │   │                           │   ├── Excels.java
    │   │                           │   ├── Log.java
    │   │                           │   ├── RateLimiter.java
    │   │                           │   └── RepeatSubmit.java
    │   │                           ├── config
    │   │                           │   └── RuoYiConfig.java
    │   │                           ├── constant
    │   │                           │   ├── Constants.java
    │   │                           │   ├── GenConstants.java
    │   │                           │   ├── HttpStatus.java
    │   │                           │   ├── ScheduleConstants.java
    │   │                           │   └── UserConstants.java
    │   │                           ├── core
    │   │                           │   ├── controller
    │   │                           │   │   └── BaseController.java
    │   │                           │   ├── domain
    │   │                           │   │   ├── AjaxResult.java
    │   │                           │   │   ├── BaseEntity.java
    │   │                           │   │   ├── TreeEntity.java
    │   │                           │   │   ├── TreeSelect.java
    │   │                           │   │   ├── entity
    │   │                           │   │   │   ├── SysDept.java
    │   │                           │   │   │   ├── SysDictData.java
    │   │                           │   │   │   ├── SysDictType.java
    │   │                           │   │   │   ├── SysMenu.java
    │   │                           │   │   │   ├── SysRole.java
    │   │                           │   │   │   └── SysUser.java
    │   │                           │   │   └── model
    │   │                           │   │       ├── BindLoginBody.java
    │   │                           │   │       ├── BindRegisterBody.java
    │   │                           │   │       ├── LoginBody.java
    │   │                           │   │       ├── LoginUser.java
    │   │                           │   │       └── RegisterBody.java
    │   │                           │   ├── page
    │   │                           │   │   ├── PageDomain.java
    │   │                           │   │   ├── TableDataInfo.java
    │   │                           │   │   └── TableSupport.java
    │   │                           │   ├── redis
    │   │                           │   │   └── RedisCache.java
    │   │                           │   └── text
    │   │                           │       ├── CharsetKit.java
    │   │                           │       ├── Convert.java
    │   │                           │       └── StrFormatter.java
    │   │                           ├── enums
    │   │                           │   ├── BusinessStatus.java
    │   │                           │   ├── BusinessType.java
    │   │                           │   ├── DataSourceType.java
    │   │                           │   ├── HttpMethod.java
    │   │                           │   ├── LimitType.java
    │   │                           │   ├── OperatorType.java
    │   │                           │   ├── SocialPlatformType.java
    │   │                           │   └── UserStatus.java
    │   │                           ├── exception
    │   │                           │   ├── DemoModeException.java
    │   │                           │   ├── GlobalException.java
    │   │                           │   ├── ServiceException.java
    │   │                           │   ├── UtilException.java
    │   │                           │   ├── base
    │   │                           │   │   └── BaseException.java
    │   │                           │   ├── file
    │   │                           │   │   ├── FileException.java
    │   │                           │   │   ├── FileNameLengthLimitExceededException.java
    │   │                           │   │   ├── FileSizeLimitExceededException.java
    │   │                           │   │   └── InvalidExtensionException.java
    │   │                           │   ├── job
    │   │                           │   │   └── TaskException.java
    │   │                           │   └── user
    │   │                           │       ├── CaptchaException.java
    │   │                           │       ├── CaptchaExpireException.java
    │   │                           │       ├── UserException.java
    │   │                           │       └── UserPasswordNotMatchException.java
    │   │                           ├── filter
    │   │                           │   ├── RepeatableFilter.java
    │   │                           │   ├── RepeatedlyRequestWrapper.java
    │   │                           │   ├── XssFilter.java
    │   │                           │   └── XssHttpServletRequestWrapper.java
    │   │                           └── utils
    │   │                               ├── Arith.java
    │   │                               ├── DateUtils.java
    │   │                               ├── DictUtils.java
    │   │                               ├── ExceptionUtil.java
    │   │                               ├── LogUtils.java
    │   │                               ├── MessageUtils.java
    │   │                               ├── SecurityUtils.java
    │   │                               ├── ServletUtils.java
    │   │                               ├── StringUtils.java
    │   │                               ├── Threads.java
    │   │                               ├── VerifyCodeUtils.java
    │   │                               ├── bean
    │   │                               │   └── BeanUtils.java
    │   │                               ├── file
    │   │                               │   ├── FileTypeUtils.java
    │   │                               │   ├── FileUploadUtils.java
    │   │                               │   ├── FileUtils.java
    │   │                               │   ├── ImageUtils.java
    │   │                               │   └── MimeTypeUtils.java
    │   │                               ├── html
    │   │                               │   ├── EscapeUtil.java
    │   │                               │   └── HTMLFilter.java
    │   │                               ├── http
    │   │                               │   ├── HttpHelper.java
    │   │                               │   └── HttpUtils.java
    │   │                               ├── ip
    │   │                               │   ├── AddressUtils.java
    │   │                               │   └── IpUtils.java
    │   │                               ├── poi
    │   │                               │   ├── ExcelHandlerAdapter.java
    │   │                               │   └── ExcelUtil.java
    │   │                               ├── reflect
    │   │                               │   └── ReflectUtils.java
    │   │                               ├── sign
    │   │                               │   ├── Base64.java
    │   │                               │   └── Md5Utils.java
    │   │                               ├── spring
    │   │                               │   └── SpringUtils.java
    │   │                               ├── sql
    │   │                               │   └── SqlUtil.java
    │   │                               └── uuid
    │   │                                   ├── IdUtils.java
    │   │                                   └── UUID.java
    │   ├── wumei-framework
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           └── java
    │   │               └── com
    │   │                   └── ruoyi
    │   │                       └── framework
    │   │                           ├── aspectj
    │   │                           │   ├── DataScopeAspect.java
    │   │                           │   ├── DataSourceAspect.java
    │   │                           │   ├── LogAspect.java
    │   │                           │   └── RateLimiterAspect.java
    │   │                           ├── config
    │   │                           │   ├── ApplicationConfig.java
    │   │                           │   ├── CaptchaConfig.java
    │   │                           │   ├── DruidConfig.java
    │   │                           │   ├── FastJson2JsonRedisSerializer.java
    │   │                           │   ├── FilterConfig.java
    │   │                           │   ├── KaptchaTextCreator.java
    │   │                           │   ├── MyBatisConfig.java
    │   │                           │   ├── RedisConfig.java
    │   │                           │   ├── ResourcesConfig.java
    │   │                           │   ├── SecurityConfig.java
    │   │                           │   ├── ServerConfig.java
    │   │                           │   ├── ThreadPoolConfig.java
    │   │                           │   └── properties
    │   │                           │       └── DruidProperties.java
    │   │                           ├── datasource
    │   │                           │   ├── DynamicDataSource.java
    │   │                           │   └── DynamicDataSourceContextHolder.java
    │   │                           ├── interceptor
    │   │                           │   ├── RepeatSubmitInterceptor.java
    │   │                           │   └── impl
    │   │                           │       └── SameUrlDataInterceptor.java
    │   │                           ├── manager
    │   │                           │   ├── AsyncManager.java
    │   │                           │   ├── ShutdownManager.java
    │   │                           │   └── factory
    │   │                           │       └── AsyncFactory.java
    │   │                           ├── security
    │   │                           │   ├── filter
    │   │                           │   │   └── JwtAuthenticationTokenFilter.java
    │   │                           │   └── handle
    │   │                           │       ├── AuthenticationEntryPointImpl.java
    │   │                           │       └── LogoutSuccessHandlerImpl.java
    │   │                           └── web
    │   │                               ├── domain
    │   │                               │   ├── Server.java
    │   │                               │   └── server
    │   │                               │       ├── Cpu.java
    │   │                               │       ├── Jvm.java
    │   │                               │       ├── Mem.java
    │   │                               │       ├── Sys.java
    │   │                               │       └── SysFile.java
    │   │                               ├── exception
    │   │                               │   └── GlobalExceptionHandler.java
    │   │                               └── service
    │   │                                   ├── PermissionService.java
    │   │                                   ├── SysLoginService.java
    │   │                                   ├── SysPermissionService.java
    │   │                                   ├── SysRegisterService.java
    │   │                                   ├── TokenService.java
    │   │                                   └── UserDetailsServiceImpl.java
    │   ├── wumei-generator
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           ├── java
    │   │           │   └── com
    │   │           │       └── ruoyi
    │   │           │           └── generator
    │   │           │               ├── config
    │   │           │               │   └── GenConfig.java
    │   │           │               ├── controller
    │   │           │               │   └── GenController.java
    │   │           │               ├── domain
    │   │           │               │   ├── GenTable.java
    │   │           │               │   └── GenTableColumn.java
    │   │           │               ├── mapper
    │   │           │               │   ├── GenTableColumnMapper.java
    │   │           │               │   └── GenTableMapper.java
    │   │           │               ├── service
    │   │           │               │   ├── GenTableColumnServiceImpl.java
    │   │           │               │   ├── GenTableServiceImpl.java
    │   │           │               │   ├── IGenTableColumnService.java
    │   │           │               │   └── IGenTableService.java
    │   │           │               └── util
    │   │           │                   ├── GenUtils.java
    │   │           │                   ├── VelocityInitializer.java
    │   │           │                   └── VelocityUtils.java
    │   │           └── resources
    │   │               ├── generator.yml
    │   │               ├── mapper
    │   │               │   └── generator
    │   │               │       ├── GenTableColumnMapper.xml
    │   │               │       └── GenTableMapper.xml
    │   │               └── vm
    │   │                   ├── java
    │   │                   │   ├── controller.java.vm
    │   │                   │   └── domain.java.vm
    │   │                   ├── js
    │   │                   │   └── api.js.vm
    │   │                   ├── sql
    │   │                   │   └── sql.vm
    │   │                   ├── vue
    │   │                   │   ├── index-tree.vue.vm
    │   │                   │   └── index.vue.vm
    │   │                   └── xml
    │   │                       └── mapper.xml.vm
    │   ├── wumei-iot
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           ├── java
    │   │           │   └── com
    │   │           │       └── ruoyi
    │   │           │           └── iot
    │   │           │               ├── controller
    │   │           │               │   ├── AlertController.java
    │   │           │               │   ├── AlertLogController.java
    │   │           │               │   ├── AuthResourceController.java
    │   │           │               │   ├── CategoryController.java
    │   │           │               │   ├── DeviceController.java
    │   │           │               │   ├── DeviceJobController.java
    │   │           │               │   ├── DeviceLogController.java
    │   │           │               │   ├── DeviceUserController.java
    │   │           │               │   ├── FirmwareController.java
    │   │           │               │   ├── GroupController.java
    │   │           │               │   ├── NewsCategoryController.java
    │   │           │               │   ├── NewsController.java
    │   │           │               │   ├── OauthClientDetailsController.java
    │   │           │               │   ├── ProductAuthorizeController.java
    │   │           │               │   ├── ProductController.java
    │   │           │               │   ├── SceneController.java
    │   │           │               │   ├── SocialLoginController.java
    │   │           │               │   ├── SocialPlatformController.java
    │   │           │               │   ├── ThingsModelController.java
    │   │           │               │   ├── ThingsModelTemplateController.java
    │   │           │               │   ├── ToolController.java
    │   │           │               │   └── UserSocialController.java
    │   │           │               ├── domain
    │   │           │               │   ├── Alert.java
    │   │           │               │   ├── AlertLog.java
    │   │           │               │   ├── Category.java
    │   │           │               │   ├── Device.java
    │   │           │               │   ├── DeviceGroup.java
    │   │           │               │   ├── DeviceJob.java
    │   │           │               │   ├── DeviceLog.java
    │   │           │               │   ├── DeviceUser.java
    │   │           │               │   ├── Firmware.java
    │   │           │               │   ├── Group.java
    │   │           │               │   ├── News.java
    │   │           │               │   ├── NewsCategory.java
    │   │           │               │   ├── OauthClientDetails.java
    │   │           │               │   ├── Product.java
    │   │           │               │   ├── ProductAuthorize.java
    │   │           │               │   ├── Scene.java
    │   │           │               │   ├── SocialPlatform.java
    │   │           │               │   ├── SocialUser.java
    │   │           │               │   ├── ThingsModel.java
    │   │           │               │   ├── ThingsModelTemplate.java
    │   │           │               │   └── UserSocialProfile.java
    │   │           │               ├── mapper
    │   │           │               │   ├── AlertLogMapper.java
    │   │           │               │   ├── AlertMapper.java
    │   │           │               │   ├── CategoryMapper.java
    │   │           │               │   ├── DeviceJobMapper.java
    │   │           │               │   ├── DeviceLogMapper.java
    │   │           │               │   ├── DeviceMapper.java
    │   │           │               │   ├── DeviceUserMapper.java
    │   │           │               │   ├── FirmwareMapper.java
    │   │           │               │   ├── GroupMapper.java
    │   │           │               │   ├── NewsCategoryMapper.java
    │   │           │               │   ├── NewsMapper.java
    │   │           │               │   ├── OauthClientDetailsMapper.java
    │   │           │               │   ├── ProductAuthorizeMapper.java
    │   │           │               │   ├── ProductMapper.java
    │   │           │               │   ├── SceneMapper.java
    │   │           │               │   ├── SocialPlatformMapper.java
    │   │           │               │   ├── SocialUserMapper.java
    │   │           │               │   ├── ThingsModelMapper.java
    │   │           │               │   └── ThingsModelTemplateMapper.java
    │   │           │               ├── model
    │   │           │               │   ├── Action.java
    │   │           │               │   ├── AuthenticateInputModel.java
    │   │           │               │   ├── CategoryNews.java
    │   │           │               │   ├── ChangeProductStatusModel.java
    │   │           │               │   ├── DeviceAllShortOutput.java
    │   │           │               │   ├── DeviceGroupInput.java
    │   │           │               │   ├── DeviceNumberAndProductId.java
    │   │           │               │   ├── DeviceRelateUserInput.java
    │   │           │               │   ├── DeviceShortOutput.java
    │   │           │               │   ├── DeviceStatistic.java
    │   │           │               │   ├── IdAndName.java
    │   │           │               │   ├── IdOutput.java
    │   │           │               │   ├── ImportThingsModelInput.java
    │   │           │               │   ├── MonitorModel.java
    │   │           │               │   ├── MqttAuthenticationModel.java
    │   │           │               │   ├── MqttClientConnectModel.java
    │   │           │               │   ├── MqttInfoModel.java
    │   │           │               │   ├── NtpModel.java
    │   │           │               │   ├── ProductAuthenticateModel.java
    │   │           │               │   ├── ProductAuthorizeVO.java
    │   │           │               │   ├── RegisterUserInput.java
    │   │           │               │   ├── ThingsModelItem
    │   │           │               │   │   ├── ArrayModelOutput.java
    │   │           │               │   │   ├── BoolModelOutput.java
    │   │           │               │   │   ├── DecimalModelOutput.java
    │   │           │               │   │   ├── EnumItemOutput.java
    │   │           │               │   │   ├── EnumModelOutput.java
    │   │           │               │   │   ├── IntegerModelOutput.java
    │   │           │               │   │   ├── ReadOnlyModelOutput.java
    │   │           │               │   │   ├── StringModelOutput.java
    │   │           │               │   │   └── ThingsModelItemBase.java
    │   │           │               │   ├── ThingsModels
    │   │           │               │   │   ├── EventDto.java
    │   │           │               │   │   ├── FunctionDto.java
    │   │           │               │   │   ├── IdentityAndName.java
    │   │           │               │   │   ├── PropertyDto.java
    │   │           │               │   │   ├── ThingsModelShadow.java
    │   │           │               │   │   ├── ThingsModelValueItem.java
    │   │           │               │   │   ├── ThingsModelValueItemDto.java
    │   │           │               │   │   ├── ThingsModelValueRemarkItem.java
    │   │           │               │   │   ├── ThingsModelValuesInput.java
    │   │           │               │   │   ├── ThingsModelValuesOutput.java
    │   │           │               │   │   └── ThingsModelsDto.java
    │   │           │               │   ├── UserIdDeviceIdModel.java
    │   │           │               │   └── login
    │   │           │               │       ├── AuthRequestWrap.java
    │   │           │               │       ├── BindIdValue.java
    │   │           │               │       └── LoginIdValue.java
    │   │           │               ├── mqtt
    │   │           │               │   ├── EmqxCallback.java
    │   │           │               │   ├── EmqxClient.java
    │   │           │               │   ├── EmqxService.java
    │   │           │               │   ├── EmqxStart.java
    │   │           │               │   ├── MqttClientConfiguration.java
    │   │           │               │   └── MqttConfig.java
    │   │           │               ├── oauth
    │   │           │               │   ├── AuthorizationServerConfig.java
    │   │           │               │   ├── ResourceServerConfig.java
    │   │           │               │   ├── SpeakerApprovalHandler.java
    │   │           │               │   └── api
    │   │           │               │       ├── ConfirmAccessController.java
    │   │           │               │       ├── LoginController.java
    │   │           │               │       └── SpeakerController.java
    │   │           │               ├── service
    │   │           │               │   ├── IAlertLogService.java
    │   │           │               │   ├── IAlertService.java
    │   │           │               │   ├── IAuthRequestFactory.java
    │   │           │               │   ├── ICategoryService.java
    │   │           │               │   ├── IDeviceJobService.java
    │   │           │               │   ├── IDeviceLogService.java
    │   │           │               │   ├── IDeviceService.java
    │   │           │               │   ├── IDeviceUserService.java
    │   │           │               │   ├── IFirmwareService.java
    │   │           │               │   ├── IGroupService.java
    │   │           │               │   ├── INewsCategoryService.java
    │   │           │               │   ├── INewsService.java
    │   │           │               │   ├── IOauthClientDetailsService.java
    │   │           │               │   ├── IProductAuthorizeService.java
    │   │           │               │   ├── IProductService.java
    │   │           │               │   ├── ISceneService.java
    │   │           │               │   ├── ISocialLoginService.java
    │   │           │               │   ├── ISocialPlatformService.java
    │   │           │               │   ├── ISocialUserService.java
    │   │           │               │   ├── IThingsModelService.java
    │   │           │               │   ├── IThingsModelTemplateService.java
    │   │           │               │   ├── IToolService.java
    │   │           │               │   ├── IUserSocialProfileService.java
    │   │           │               │   └── impl
    │   │           │               │       ├── AlertLogServiceImpl.java
    │   │           │               │       ├── AlertServiceImpl.java
    │   │           │               │       ├── AuthRequestFactoryImpl.java
    │   │           │               │       ├── AuthStateRedisCache.java
    │   │           │               │       ├── CategoryServiceImpl.java
    │   │           │               │       ├── DeviceJobServiceImpl.java
    │   │           │               │       ├── DeviceLogServiceImpl.java
    │   │           │               │       ├── DeviceServiceImpl.java
    │   │           │               │       ├── DeviceUserServiceImpl.java
    │   │           │               │       ├── FirmwareServiceImpl.java
    │   │           │               │       ├── GroupServiceImpl.java
    │   │           │               │       ├── NewsCategoryServiceImpl.java
    │   │           │               │       ├── NewsServiceImpl.java
    │   │           │               │       ├── OauthClientDetailsServiceImpl.java
    │   │           │               │       ├── ProductAuthorizeServiceImpl.java
    │   │           │               │       ├── ProductServiceImpl.java
    │   │           │               │       ├── SceneServiceImpl.java
    │   │           │               │       ├── SocialLoginServiceImpl.java
    │   │           │               │       ├── SocialPlatformServiceImpl.java
    │   │           │               │       ├── SocialUserServiceImpl.java
    │   │           │               │       ├── ThingsModelServiceImpl.java
    │   │           │               │       ├── ThingsModelTemplateServiceImpl.java
    │   │           │               │       ├── ToolServiceImpl.java
    │   │           │               │       └── UserSocialProfileServiceImpl.java
    │   │           │               ├── task
    │   │           │               │   ├── IotAsyncExceptionHander.java
    │   │           │               │   ├── TaskConfigurer.java
    │   │           │               │   └── TaskExecutorConfig.java
    │   │           │               ├── tdengine
    │   │           │               │   ├── config
    │   │           │               │   │   └── TDengineConfig.java
    │   │           │               │   ├── dao
    │   │           │               │   │   └── TDDeviceLogDAO.java
    │   │           │               │   ├── init
    │   │           │               │   │   └── ApplicationStarted.java
    │   │           │               │   └── service
    │   │           │               │       ├── ILogService.java
    │   │           │               │       ├── factory
    │   │           │               │       │   └── LogServiceFactory.java
    │   │           │               │       └── impl
    │   │           │               │           ├── MySqlLogServiceImpl.java
    │   │           │               │           └── TdengineLogServiceImpl.java
    │   │           │               └── util
    │   │           │                   ├── AESUtils.java
    │   │           │                   ├── SnowflakeIdWorker.java
    │   │           │                   ├── VelocityInitializer.java
    │   │           │                   ├── VelocityUtils.java
    │   │           │                   └── quartz
    │   │           │                       ├── AbstractQuartzJob.java
    │   │           │                       ├── CronUtils.java
    │   │           │                       ├── JobInvokeUtil.java
    │   │           │                       ├── QuartzDisallowConcurrentExecution.java
    │   │           │                       ├── QuartzJobExecution.java
    │   │           │                       └── ScheduleUtils.java
    │   │           └── resources
    │   │               ├── mapper
    │   │               │   ├── iot
    │   │               │   │   ├── AlertLogMapper.xml
    │   │               │   │   ├── AlertMapper.xml
    │   │               │   │   ├── CategoryMapper.xml
    │   │               │   │   ├── DeviceJobMapper.xml
    │   │               │   │   ├── DeviceLogMapper.xml
    │   │               │   │   ├── DeviceMapper.xml
    │   │               │   │   ├── DeviceUserMapper.xml
    │   │               │   │   ├── FirmwareMapper.xml
    │   │               │   │   ├── GroupMapper.xml
    │   │               │   │   ├── NewsCategoryMapper.xml
    │   │               │   │   ├── NewsMapper.xml
    │   │               │   │   ├── OauthClientDetailsMapper.xml
    │   │               │   │   ├── ProductAuthorizeMapper.xml
    │   │               │   │   ├── ProductMapper.xml
    │   │               │   │   ├── SceneMapper.xml
    │   │               │   │   ├── SocialPlatformMapper.xml
    │   │               │   │   ├── SocialUserMapper.xml
    │   │               │   │   ├── ThingsModelMapper.xml
    │   │               │   │   └── ThingsModelTemplateMapper.xml
    │   │               │   └── tdengine
    │   │               │       └── TDDeviceLogMapper.xml
    │   │               ├── static
    │   │               │   └── oauth
    │   │               │       ├── css
    │   │               │       │   ├── bootstrap-theme.css
    │   │               │       │   ├── bootstrap-theme.css.map
    │   │               │       │   ├── bootstrap-theme.min.css
    │   │               │       │   ├── bootstrap-theme.min.css.map
    │   │               │       │   ├── bootstrap.css
    │   │               │       │   ├── bootstrap.css.map
    │   │               │       │   ├── bootstrap.min.css
    │   │               │       │   └── bootstrap.min.css.map
    │   │               │       ├── fonts
    │   │               │       │   ├── glyphicons-halflings-regular.eot
    │   │               │       │   ├── glyphicons-halflings-regular.svg
    │   │               │       │   ├── glyphicons-halflings-regular.ttf
    │   │               │       │   ├── glyphicons-halflings-regular.woff
    │   │               │       │   └── glyphicons-halflings-regular.woff2
    │   │               │       └── js
    │   │               │           ├── bootstrap.js
    │   │               │           ├── bootstrap.min.js
    │   │               │           └── npm.js
    │   │               ├── templates
    │   │               │   └── oauth
    │   │               │       ├── access_confirmation.html
    │   │               │       ├── clientDetails.html
    │   │               │       ├── index.html
    │   │               │       └── login.html
    │   │               └── vm
    │   │                   ├── java
    │   │                   │   ├── controller.java.vm
    │   │                   │   ├── domain.java.vm
    │   │                   │   ├── mapper.java.vm
    │   │                   │   ├── service.java.vm
    │   │                   │   ├── serviceImpl.java.vm
    │   │                   │   └── sub-domain.java.vm
    │   │                   ├── js
    │   │                   │   └── api.js.vm
    │   │                   ├── sql
    │   │                   │   └── sql.vm
    │   │                   ├── vue
    │   │                   │   ├── index-tree.vue.vm
    │   │                   │   └── index.vue.vm
    │   │                   └── xml
    │   │                       └── mapper.xml.vm
    │   ├── wumei-quartz
    │   │   ├── pom.xml
    │   │   └── src
    │   │       └── main
    │   │           ├── java
    │   │           │   └── com
    │   │           │       └── ruoyi
    │   │           │           └── quartz
    │   │           │               ├── config
    │   │           │               │   └── ScheduleConfig.java
    │   │           │               ├── controller
    │   │           │               │   ├── SysJobController.java
    │   │           │               │   └── SysJobLogController.java
    │   │           │               ├── domain
    │   │           │               │   ├── SysJob.java
    │   │           │               │   └── SysJobLog.java
    │   │           │               ├── mapper
    │   │           │               │   ├── SysJobLogMapper.java
    │   │           │               │   └── SysJobMapper.java
    │   │           │               ├── service
    │   │           │               │   ├── ISysJobLogService.java
    │   │           │               │   ├── ISysJobService.java
    │   │           │               │   └── impl
    │   │           │               │       ├── SysJobLogServiceImpl.java
    │   │           │               │       └── SysJobServiceImpl.java
    │   │           │               ├── task
    │   │           │               │   └── RyTask.java
    │   │           │               └── util
    │   │           │                   ├── AbstractQuartzJob.java
    │   │           │                   ├── CronUtils.java
    │   │           │                   ├── JobInvokeUtil.java
    │   │           │                   ├── QuartzDisallowConcurrentExecution.java
    │   │           │                   ├── QuartzJobExecution.java
    │   │           │                   └── ScheduleUtils.java
    │   │           └── resources
    │   │               └── mapper
    │   │                   └── quartz
    │   │                       ├── SysJobLogMapper.xml
    │   │                       └── SysJobMapper.xml
    │   └── wumei-system
    │       ├── pom.xml
    │       └── src
    │           └── main
    │               ├── java
    │               │   └── com
    │               │       └── ruoyi
    │               │           └── system
    │               │               ├── domain
    │               │               │   ├── SysConfig.java
    │               │               │   ├── SysLogininfor.java
    │               │               │   ├── SysNotice.java
    │               │               │   ├── SysOperLog.java
    │               │               │   ├── SysPost.java
    │               │               │   ├── SysRoleDept.java
    │               │               │   ├── SysRoleMenu.java
    │               │               │   ├── SysUserOnline.java
    │               │               │   ├── SysUserPost.java
    │               │               │   ├── SysUserRole.java
    │               │               │   └── vo
    │               │               │       ├── MetaVo.java
    │               │               │       └── RouterVo.java
    │               │               ├── mapper
    │               │               │   ├── SysConfigMapper.java
    │               │               │   ├── SysDeptMapper.java
    │               │               │   ├── SysDictDataMapper.java
    │               │               │   ├── SysDictTypeMapper.java
    │               │               │   ├── SysLogininforMapper.java
    │               │               │   ├── SysMenuMapper.java
    │               │               │   ├── SysNoticeMapper.java
    │               │               │   ├── SysOperLogMapper.java
    │               │               │   ├── SysPostMapper.java
    │               │               │   ├── SysRoleDeptMapper.java
    │               │               │   ├── SysRoleMapper.java
    │               │               │   ├── SysRoleMenuMapper.java
    │               │               │   ├── SysUserMapper.java
    │               │               │   ├── SysUserPostMapper.java
    │               │               │   └── SysUserRoleMapper.java
    │               │               └── service
    │               │                   ├── ISysConfigService.java
    │               │                   ├── ISysDeptService.java
    │               │                   ├── ISysDictDataService.java
    │               │                   ├── ISysDictTypeService.java
    │               │                   ├── ISysLogininforService.java
    │               │                   ├── ISysMenuService.java
    │               │                   ├── ISysNoticeService.java
    │               │                   ├── ISysOperLogService.java
    │               │                   ├── ISysPostService.java
    │               │                   ├── ISysRoleService.java
    │               │                   ├── ISysUserOnlineService.java
    │               │                   ├── ISysUserService.java
    │               │                   └── impl
    │               │                       ├── SysConfigServiceImpl.java
    │               │                       ├── SysDeptServiceImpl.java
    │               │                       ├── SysDictDataServiceImpl.java
    │               │                       ├── SysDictTypeServiceImpl.java
    │               │                       ├── SysLogininforServiceImpl.java
    │               │                       ├── SysMenuServiceImpl.java
    │               │                       ├── SysNoticeServiceImpl.java
    │               │                       ├── SysOperLogServiceImpl.java
    │               │                       ├── SysPostServiceImpl.java
    │               │                       ├── SysRoleServiceImpl.java
    │               │                       ├── SysUserOnlineServiceImpl.java
    │               │                       └── SysUserServiceImpl.java
    │               └── resources
    │                   └── mapper
    │                       └── system
    │                           ├── SysConfigMapper.xml
    │                           ├── SysDeptMapper.xml
    │                           ├── SysDictDataMapper.xml
    │                           ├── SysDictTypeMapper.xml
    │                           ├── SysLogininforMapper.xml
    │                           ├── SysMenuMapper.xml
    │                           ├── SysNoticeMapper.xml
    │                           ├── SysOperLogMapper.xml
    │                           ├── SysPostMapper.xml
    │                           ├── SysRoleDeptMapper.xml
    │                           ├── SysRoleMapper.xml
    │                           ├── SysRoleMenuMapper.xml
    │                           ├── SysUserMapper.xml
    │                           ├── SysUserPostMapper.xml
    │                           └── SysUserRoleMapper.xml
    └── vue
        ├── README.md
        ├── babel.config.js
        ├── bin
        │   ├── build.bat
        │   ├── package.bat
        │   └── run-web.bat
        ├── build
        │   └── index.js
        ├── package.json
        ├── public
        │   ├── favicon.ico
        │   ├── html
        │   │   └── ie.html
        │   ├── index.html
        │   ├── js
        │   │   └── echarts.min.js
        │   ├── map-geojson
        │   │   ├── 110000.json
        │   │   ├── 120000.json
        │   │   ├── 130000.json
        │   │   ├── 140000.json
        │   │   ├── 150000.json
        │   │   ├── 210000.json
        │   │   ├── 220000.json
        │   │   ├── 230000.json
        │   │   ├── 310000.json
        │   │   ├── 320000.json
        │   │   ├── 330000.json
        │   │   ├── 340000.json
        │   │   ├── 350000.json
        │   │   ├── 360000.json
        │   │   ├── 370000.json
        │   │   ├── 410000.json
        │   │   ├── 420000.json
        │   │   ├── 430000.json
        │   │   ├── 440000.json
        │   │   ├── 450000.json
        │   │   ├── 460000.json
        │   │   ├── 500000.json
        │   │   ├── 510000.json
        │   │   ├── 520000.json
        │   │   ├── 530000.json
        │   │   ├── 540000.json
        │   │   ├── 610000.json
        │   │   ├── 620000.json
        │   │   ├── 630000.json
        │   │   ├── 640000.json
        │   │   ├── 650000.json
        │   │   ├── 710000.json
        │   │   ├── 810000.json
        │   │   ├── 820000.json
        │   │   └── china.json
        │   └── robots.txt
        ├── src
        │   ├── App.vue
        │   ├── api
        │   │   ├── bigScreen
        │   │   │   ├── api.js
        │   │   │   ├── index.js
        │   │   │   └── modules
        │   │   │       └── index.js
        │   │   ├── iot
        │   │   │   ├── alert.js
        │   │   │   ├── alertLog.js
        │   │   │   ├── authorize.js
        │   │   │   ├── category.js
        │   │   │   ├── clientDetails.js
        │   │   │   ├── device.js
        │   │   │   ├── deviceJob.js
        │   │   │   ├── deviceLog.js
        │   │   │   ├── deviceuser.js
        │   │   │   ├── emqx.js
        │   │   │   ├── firmware.js
        │   │   │   ├── group.js
        │   │   │   ├── log.js
        │   │   │   ├── model.js
        │   │   │   ├── news.js
        │   │   │   ├── newsCategory.js
        │   │   │   ├── platform.js
        │   │   │   ├── product.js
        │   │   │   ├── scene.js
        │   │   │   ├── template.js
        │   │   │   └── tool.js
        │   │   ├── login.js
        │   │   ├── menu.js
        │   │   ├── monitor
        │   │   │   ├── cache.js
        │   │   │   ├── job.js
        │   │   │   ├── jobLog.js
        │   │   │   ├── logininfor.js
        │   │   │   ├── online.js
        │   │   │   ├── operlog.js
        │   │   │   └── server.js
        │   │   ├── system
        │   │   │   ├── config.js
        │   │   │   ├── dept.js
        │   │   │   ├── dict
        │   │   │   │   ├── data.js
        │   │   │   │   └── type.js
        │   │   │   ├── menu.js
        │   │   │   ├── notice.js
        │   │   │   ├── post.js
        │   │   │   ├── role.js
        │   │   │   └── user.js
        │   │   └── tool
        │   │       └── gen.js
        │   ├── assets
        │   │   ├── 401_images
        │   │   │   └── 401.gif
        │   │   ├── 404_images
        │   │   │   ├── 404.png
        │   │   │   └── 404_cloud.png
        │   │   ├── bigScreen
        │   │   │   ├── css
        │   │   │   │   ├── index.scss
        │   │   │   │   ├── modules
        │   │   │   │   │   ├── reset.scss
        │   │   │   │   │   └── variables.scss
        │   │   │   │   ├── public.scss
        │   │   │   │   ├── theme
        │   │   │   │   │   ├── fonts
        │   │   │   │   │   │   ├── element-icons.ttf
        │   │   │   │   │   │   └── element-icons.woff
        │   │   │   │   │   └── index.css
        │   │   │   │   ├── variable.scss
        │   │   │   │   └── webfont
        │   │   │   │       └── index.css
        │   │   │   ├── iconfont
        │   │   │   │   ├── iconfont.css
        │   │   │   │   ├── iconfont.ttf
        │   │   │   │   ├── iconfont.woff
        │   │   │   │   └── iconfont.woff2
        │   │   │   └── img
        │   │   │       ├── center_map.png
        │   │   │       ├── frame.png
        │   │   │       ├── guang.png
        │   │   │       ├── headers
        │   │   │       │   ├── juxing1.png
        │   │   │       │   └── juxing2.png
        │   │   │       ├── left_top_hong.png
        │   │   │       ├── left_top_huang.png
        │   │   │       ├── left_top_lan.png
        │   │   │       ├── left_top_lv.png
        │   │   │       ├── pageBg.png
        │   │   │       ├── titles
        │   │   │       │   ├── you.png
        │   │   │       │   └── zuo.png
        │   │   │       ├── top.png
        │   │   │       ├── xieyou.png
        │   │   │       ├── xiezuo.png
        │   │   │       └── zuo_xuxian.png
        │   │   ├── icons
        │   │   │   ├── index.js
        │   │   │   ├── svg
        │   │   │   │   ├── 404.svg
        │   │   │   │   ├── alert.svg
        │   │   │   │   ├── authenticate.svg
        │   │   │   │   ├── bug.svg
        │   │   │   │   ├── build.svg
        │   │   │   │   ├── button.svg
        │   │   │   │   ├── cascader.svg
        │   │   │   │   ├── category.svg
        │   │   │   │   ├── chart.svg
        │   │   │   │   ├── checkbox.svg
        │   │   │   │   ├── client.svg
        │   │   │   │   ├── clipboard.svg
        │   │   │   │   ├── cloud.svg
        │   │   │   │   ├── code.svg
        │   │   │   │   ├── color.svg
        │   │   │   │   ├── component.svg
        │   │   │   │   ├── connect.svg
        │   │   │   │   ├── dashboard.svg
        │   │   │   │   ├── date-range.svg
        │   │   │   │   ├── date.svg
        │   │   │   │   ├── device.svg
        │   │   │   │   ├── dict.svg
        │   │   │   │   ├── disconnect.svg
        │   │   │   │   ├── documentation.svg
        │   │   │   │   ├── download.svg
        │   │   │   │   ├── drag.svg
        │   │   │   │   ├── druid.svg
        │   │   │   │   ├── edit.svg
        │   │   │   │   ├── education.svg
        │   │   │   │   ├── email.svg
        │   │   │   │   ├── event-a.svg
        │   │   │   │   ├── example.svg
        │   │   │   │   ├── excel.svg
        │   │   │   │   ├── exit-fullscreen.svg
        │   │   │   │   ├── eye-open.svg
        │   │   │   │   ├── eye.svg
        │   │   │   │   ├── firmware.svg
        │   │   │   │   ├── form.svg
        │   │   │   │   ├── fullscreen.svg
        │   │   │   │   ├── github.svg
        │   │   │   │   ├── group.svg
        │   │   │   │   ├── guide.svg
        │   │   │   │   ├── icon.svg
        │   │   │   │   ├── input.svg
        │   │   │   │   ├── international.svg
        │   │   │   │   ├── iot.svg
        │   │   │   │   ├── job.svg
        │   │   │   │   ├── language.svg
        │   │   │   │   ├── link.svg
        │   │   │   │   ├── list.svg
        │   │   │   │   ├── listener.svg
        │   │   │   │   ├── lock.svg
        │   │   │   │   ├── log-a.svg
        │   │   │   │   ├── log.svg
        │   │   │   │   ├── logininfor.svg
        │   │   │   │   ├── message.svg
        │   │   │   │   ├── model.svg
        │   │   │   │   ├── money.svg
        │   │   │   │   ├── monitor-a.svg
        │   │   │   │   ├── monitor.svg
        │   │   │   │   ├── mq.svg
        │   │   │   │   ├── nested.svg
        │   │   │   │   ├── number.svg
        │   │   │   │   ├── online.svg
        │   │   │   │   ├── ota.svg
        │   │   │   │   ├── password.svg
        │   │   │   │   ├── pdf.svg
        │   │   │   │   ├── people.svg
        │   │   │   │   ├── peoples.svg
        │   │   │   │   ├── phone.svg
        │   │   │   │   ├── plugin.svg
        │   │   │   │   ├── post.svg
        │   │   │   │   ├── product.svg
        │   │   │   │   ├── qq.svg
        │   │   │   │   ├── question.svg
        │   │   │   │   ├── radio.svg
        │   │   │   │   ├── rate.svg
        │   │   │   │   ├── receiver.svg
        │   │   │   │   ├── redis.svg
        │   │   │   │   ├── row.svg
        │   │   │   │   ├── scene.svg
        │   │   │   │   ├── search.svg
        │   │   │   │   ├── select.svg
        │   │   │   │   ├── server.svg
        │   │   │   │   ├── share.svg
        │   │   │   │   ├── shopping.svg
        │   │   │   │   ├── size.svg
        │   │   │   │   ├── skill.svg
        │   │   │   │   ├── slider.svg
        │   │   │   │   ├── star.svg
        │   │   │   │   ├── start.svg
        │   │   │   │   ├── stop.svg
        │   │   │   │   ├── subscribe.svg
        │   │   │   │   ├── subscribe1.svg
        │   │   │   │   ├── swagger.svg
        │   │   │   │   ├── switch.svg
        │   │   │   │   ├── system.svg
        │   │   │   │   ├── tab.svg
        │   │   │   │   ├── table.svg
        │   │   │   │   ├── textarea.svg
        │   │   │   │   ├── theme.svg
        │   │   │   │   ├── time-range.svg
        │   │   │   │   ├── time.svg
        │   │   │   │   ├── tool.svg
        │   │   │   │   ├── topic.svg
        │   │   │   │   ├── tree-table.svg
        │   │   │   │   ├── tree.svg
        │   │   │   │   ├── upload.svg
        │   │   │   │   ├── user.svg
        │   │   │   │   ├── validCode.svg
        │   │   │   │   ├── wechat.svg
        │   │   │   │   ├── wifi_0.svg
        │   │   │   │   ├── wifi_1.svg
        │   │   │   │   ├── wifi_2.svg
        │   │   │   │   ├── wifi_3.svg
        │   │   │   │   ├── wifi_4.svg
        │   │   │   │   ├── zhifubao.svg
        │   │   │   │   └── zip.svg
        │   │   │   └── svgo.yml
        │   │   ├── images
        │   │   │   ├── code.jpg
        │   │   │   ├── dark.svg
        │   │   │   ├── light.svg
        │   │   │   ├── phone.jpg
        │   │   │   ├── phone.png
        │   │   │   ├── product.jpg
        │   │   │   └── profile.jpg
        │   │   ├── logo
        │   │   │   └── logo.png
        │   │   └── styles
        │   │       ├── btn.scss
        │   │       ├── element-ui.scss
        │   │       ├── element-variables.scss
        │   │       ├── index.scss
        │   │       ├── mixin.scss
        │   │       ├── ruoyi.scss
        │   │       ├── sidebar.scss
        │   │       ├── transition.scss
        │   │       └── variables.scss
        │   ├── components
        │   │   ├── Breadcrumb
        │   │   │   └── index.vue
        │   │   ├── Codemirror
        │   │   │   └── index.vue
        │   │   ├── Crontab
        │   │   │   ├── day.vue
        │   │   │   ├── hour.vue
        │   │   │   ├── index.vue
        │   │   │   ├── min.vue
        │   │   │   ├── month.vue
        │   │   │   ├── result.vue
        │   │   │   ├── second.vue
        │   │   │   ├── week.vue
        │   │   │   └── year.vue
        │   │   ├── DictData
        │   │   │   └── index.js
        │   │   ├── DictTag
        │   │   │   └── index.vue
        │   │   ├── Editor
        │   │   │   └── index.vue
        │   │   ├── FileUpload
        │   │   │   └── index.vue
        │   │   ├── Hamburger
        │   │   │   └── index.vue
        │   │   ├── HeaderSearch
        │   │   │   └── index.vue
        │   │   ├── IconSelect
        │   │   │   ├── index.vue
        │   │   │   └── requireIcons.js
        │   │   ├── ImageUpload
        │   │   │   └── index.vue
        │   │   ├── Pagination
        │   │   │   └── index.vue
        │   │   ├── PanThumb
        │   │   │   └── index.vue
        │   │   ├── ParentView
        │   │   │   └── index.vue
        │   │   ├── RightPanel
        │   │   │   └── index.vue
        │   │   ├── RightToolbar
        │   │   │   └── index.vue
        │   │   ├── RuoYi
        │   │   │   ├── Doc
        │   │   │   │   └── index.vue
        │   │   │   └── Git
        │   │   │       └── index.vue
        │   │   ├── Screenfull
        │   │   │   └── index.vue
        │   │   ├── SizeSelect
        │   │   │   └── index.vue
        │   │   ├── SvgIcon
        │   │   │   └── index.vue
        │   │   ├── ThemePicker
        │   │   │   └── index.vue
        │   │   ├── TopNav
        │   │   │   └── index.vue
        │   │   └── iFrame
        │   │       └── index.vue
        │   ├── config
        │   │   └── UtilVar.js
        │   ├── directive
        │   │   ├── dialog
        │   │   │   ├── drag.js
        │   │   │   ├── dragHeight.js
        │   │   │   └── dragWidth.js
        │   │   ├── filters.js
        │   │   ├── index.js
        │   │   └── permission
        │   │       ├── hasPermi.js
        │   │       └── hasRole.js
        │   ├── layout
        │   │   ├── components
        │   │   │   ├── AppMain.vue
        │   │   │   ├── InnerLink
        │   │   │   │   └── index.vue
        │   │   │   ├── Navbar.vue
        │   │   │   ├── Settings
        │   │   │   │   └── index.vue
        │   │   │   ├── Sidebar
        │   │   │   │   ├── FixiOSBug.js
        │   │   │   │   ├── Item.vue
        │   │   │   │   ├── Link.vue
        │   │   │   │   ├── Logo.vue
        │   │   │   │   ├── SidebarItem.vue
        │   │   │   │   └── index.vue
        │   │   │   ├── TagsView
        │   │   │   │   ├── ScrollPane.vue
        │   │   │   │   └── index.vue
        │   │   │   └── index.js
        │   │   ├── index.vue
        │   │   └── mixin
        │   │       └── ResizeHandler.js
        │   ├── lib
        │   │   ├── currency.js
        │   │   ├── dd-moment.js
        │   │   ├── index.js
        │   │   └── types.js
        │   ├── main.js
        │   ├── mock
        │   │   └── mock.js
        │   ├── permission.js
        │   ├── plugins
        │   │   ├── auth.js
        │   │   ├── cache.js
        │   │   ├── download.js
        │   │   ├── index.js
        │   │   ├── modal.js
        │   │   └── tab.js
        │   ├── router
        │   │   └── index.js
        │   ├── settings.js
        │   ├── store
        │   │   ├── getters.js
        │   │   ├── index.js
        │   │   └── modules
        │   │       ├── app.js
        │   │       ├── permission.js
        │   │       ├── settings.js
        │   │       ├── tagsView.js
        │   │       └── user.js
        │   ├── utils
        │   │   ├── auth.js
        │   │   ├── bigScreen
        │   │   │   ├── drawMixin.js
        │   │   │   ├── index.js
        │   │   │   └── map
        │   │   │       ├── china.json
        │   │   │       └── xzqCode.js
        │   │   ├── dict
        │   │   │   ├── Dict.js
        │   │   │   ├── DictConverter.js
        │   │   │   ├── DictData.js
        │   │   │   ├── DictMeta.js
        │   │   │   ├── DictOptions.js
        │   │   │   └── index.js
        │   │   ├── errorCode.js
        │   │   ├── generator
        │   │   │   ├── config.js
        │   │   │   ├── css.js
        │   │   │   ├── drawingDefalut.js
        │   │   │   ├── html.js
        │   │   │   ├── icon.json
        │   │   │   ├── js.js
        │   │   │   └── render.js
        │   │   ├── index.js
        │   │   ├── jsencrypt.js
        │   │   ├── map.js
        │   │   ├── mqttTool.js
        │   │   ├── permission.js
        │   │   ├── request.js
        │   │   ├── ruoyi.js
        │   │   ├── scroll-to.js
        │   │   └── validate.js
        │   └── views
        │       ├── bigScreen
        │       │   ├── components
        │       │   │   ├── echart
        │       │   │   │   ├── index.vue
        │       │   │   │   └── theme.json
        │       │   │   ├── item-wrap
        │       │   │   │   └── item-wrap.vue
        │       │   │   ├── kong.vue
        │       │   │   ├── message
        │       │   │   │   ├── message.js
        │       │   │   │   └── message.vue
        │       │   │   └── reacquire
        │       │   │       └── reacquire.vue
        │       │   ├── home.scss
        │       │   ├── home.vue
        │       │   ├── indexs
        │       │   │   ├── center-bottom.vue
        │       │   │   ├── center-map.vue
        │       │   │   ├── index.vue
        │       │   │   ├── left-bottom.vue
        │       │   │   ├── left-center.vue
        │       │   │   ├── left-top.vue
        │       │   │   ├── right-bottom.vue
        │       │   │   ├── right-center.vue
        │       │   │   └── right-top.vue
        │       │   ├── setting.vue
        │       │   └── tjfx
        │       │       └── tjfx.vue
        │       ├── components
        │       │   └── icons
        │       │       ├── element-icons.js
        │       │       ├── index.vue
        │       │       └── svg-icons.js
        │       ├── dashboard
        │       │   ├── BarChart.vue
        │       │   ├── LineChart.vue
        │       │   ├── PanelGroup.vue
        │       │   ├── PieChart.vue
        │       │   ├── RaddarChart.vue
        │       │   └── mixins
        │       │       └── resize.js
        │       ├── error
        │       │   ├── 401.vue
        │       │   └── 404.vue
        │       ├── index.vue
        │       ├── index_v1.vue
        │       ├── iot
        │       │   ├── alertLog
        │       │   │   └── index.vue
        │       │   ├── category
        │       │   │   └── index.vue
        │       │   ├── clientDetails
        │       │   │   └── index.vue
        │       │   ├── device
        │       │   │   ├── device-edit.vue
        │       │   │   ├── device-log.vue
        │       │   │   ├── device-statistic.vue
        │       │   │   ├── device-timer.vue
        │       │   │   ├── device-user.vue
        │       │   │   ├── index.vue
        │       │   │   ├── mqtt-client.vue
        │       │   │   ├── product-list.vue
        │       │   │   ├── running-status.vue
        │       │   │   └── user-list.vue
        │       │   ├── emqx
        │       │   │   ├── client.vue
        │       │   │   ├── listener.vue
        │       │   │   ├── plugin.vue
        │       │   │   ├── resource.vue
        │       │   │   ├── rule.vue
        │       │   │   ├── subscribe.vue
        │       │   │   └── topic.vue
        │       │   ├── firmware
        │       │   │   └── index.vue
        │       │   ├── group
        │       │   │   ├── device-list.vue
        │       │   │   └── index.vue
        │       │   ├── log
        │       │   │   └── index.vue
        │       │   ├── news
        │       │   │   └── index.vue
        │       │   ├── newsCategory
        │       │   │   └── index.vue
        │       │   ├── platform
        │       │   │   └── index.vue
        │       │   ├── product
        │       │   │   ├── index.vue
        │       │   │   ├── product-alert.vue
        │       │   │   ├── product-app.vue
        │       │   │   ├── product-authorize.vue
        │       │   │   ├── product-edit.vue
        │       │   │   ├── product-firmware.vue
        │       │   │   ├── product-select-template.vue
        │       │   │   └── product-things-model.vue
        │       │   ├── scene
        │       │   │   └── index.vue
        │       │   └── template
        │       │       └── index.vue
        │       ├── login.vue
        │       ├── monitor
        │       │   ├── cache
        │       │   │   └── index.vue
        │       │   ├── druid
        │       │   │   └── index.vue
        │       │   ├── job
        │       │   │   ├── index.vue
        │       │   │   └── log.vue
        │       │   ├── logininfor
        │       │   │   └── index.vue
        │       │   ├── online
        │       │   │   └── index.vue
        │       │   ├── operlog
        │       │   │   └── index.vue
        │       │   └── server
        │       │       └── index.vue
        │       ├── redirect.vue
        │       ├── register.vue
        │       ├── system
        │       │   ├── config
        │       │   │   └── index.vue
        │       │   ├── dept
        │       │   │   └── index.vue
        │       │   ├── dict
        │       │   │   ├── data.vue
        │       │   │   └── index.vue
        │       │   ├── menu
        │       │   │   └── index.vue
        │       │   ├── notice
        │       │   │   └── index.vue
        │       │   ├── post
        │       │   │   └── index.vue
        │       │   ├── role
        │       │   │   ├── authUser.vue
        │       │   │   ├── index.vue
        │       │   │   └── selectUser.vue
        │       │   └── user
        │       │       ├── authRole.vue
        │       │       ├── index.vue
        │       │       └── profile
        │       │           ├── index.vue
        │       │           ├── resetPwd.vue
        │       │           ├── userAvatar.vue
        │       │           └── userInfo.vue
        │       └── tool
        │           ├── build
        │           │   ├── CodeTypeDialog.vue
        │           │   ├── DraggableItem.vue
        │           │   ├── IconsDialog.vue
        │           │   ├── RightPanel.vue
        │           │   ├── TreeNodeDialog.vue
        │           │   └── index.vue
        │           ├── gen
        │           │   ├── basicInfoForm.vue
        │           │   ├── editTable.vue
        │           │   ├── genInfoForm.vue
        │           │   ├── importTable.vue
        │           │   └── index.vue
        │           └── swagger
        │               └── index.vue
        └── vue.config.js

349 directories, 1288 files



实例下载地址

简单易用的物联网平台

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警