# 智慧管廊 **Repository Path**: zhihuiguanlang/pipe-connect ## Basic Information - **Project Name**: 智慧管廊 - **Description**: 智慧管廊管理平台 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2023-03-09 - **Last Updated**: 2024-11-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: 智慧管廊, 智慧城市, 监控, 预警 ## README # 智慧管廊 # 项目咨询-联系QQ:2521380 # 本代码不全,如需要全部代码请QQ联系 - 浅聊碳管理商务调研、技术调研 - - 项目背景 - - 随着全球气候变化加剧,各国政府、企业和社会各界对碳中和目标的关注度持续提升。建筑行业作为全球能源消耗和碳排放的重要来源,占全球碳排放总量的约40%。面对这一严峻的现实,建筑行业在推动可持续发展、提高能效和参与碳信用交易方面的潜力巨大。然而,目前行业内在数据采集、碳排放管理和碳信用交易等方面仍存在显著的痛点: - - 数据的采集、管理和分析手段分散且不完善。 - 碳排放量化标准与碳信用开发流程复杂,且缺乏透明性。 - 现有平台在功能覆盖上存在空白,缺乏针对建筑行业的综合性解决方案。 - 在此背景下,开发一个针对建筑行业的碳排放管理与碳信用交易平台,成为解决行业痛点、满足市场需求、并推动绿色转型的关键突破口。平台将以数据驱动为核心,结合先进技术与合规设计,为建筑企业及相关机构提供端到端的支持。 - - 本项目以调研为起点,通过全面分析市场需求、技术路径和行业现状,明确平台的开发方向,设计具有市场竞争力的功能架构,确保其技术先进性和法规合规性。 - 调研内容 - - 为实现上述目标,本调研分为三大模块展开:商务调研、技术调研和行业现状调研。 - - 一. 商务调研 - 1 市场需求 - 目标用户:明确平台使用方(建筑行业公司、碳信用管理公司、政府机构等)。 - 核心需求:了解用户在评级、数据采集、碳信用开发方面的具体需求,比如:建筑物的碳排放管理需求,建筑数据的收集、管理及分析,碳信用交易的合法性和商业应用。 - 竞争分析:研究已有的市场竞争者及其产品,识别其优缺点,找到差异化的市场定位。 - 2 商业模式 - 盈利模式:确定平台的收入来源。 - 目标市场规模:分析当前和未来的市场容量和增长潜力,提供潜在收入估算。 - 二. 技术调研 - 1 技术栈选择 - 前端技术:用于开发用户界面的技术(React、Vue等技术)。 - 后端技术:用于处理平台核心逻辑和数据存储的技术(Java、Node.js等技术)。 - 数据库:选择适合的数据库技术来处理建筑数据的存储和管理。 - 数据采集与处理工具:对于建筑数据的采集,可以考虑平台后续迭代版本接入物联网(IoT)设备,搭配计算服务进行数据分析和存储。 - 2 系统集成与互操作性 - 平台预留接口迭代版本可以与其他已有的建筑管理系统或碳信用系统对接,例如:BIM(建筑信息模型)系统的集成,碳信用认证和交易平台的API接口对接等。 - 3 数据隐私和安全性 - 制定数据安全策略,确保建筑数据和用户信息得到保护,符合隐私法规。 - 三. 行业现状调研 - 1.法律和监管要求 - 碳排放和信用法规:确保平台符合国家、国际碳排放、碳信用相应法规。 - 建筑能效标准:了解建筑领域相关的环保标准,平台提供满足标准的评级功能。 - 2. 行业趋势分析 - 结合市场动态与行业技术发展趋势,预判未来可能的政策变化和技术需求,为平台升级提供战略参考。 - - 项目意义 - 通过此次调研,我们旨在为建筑行业开发一个高度智能化、功能全面且具有市场竞争力的碳管理与交易平台。这不仅能够帮助用户实现碳排放的精准管理,还将推动其在碳信用市场中的有效参与,从而为企业创造经济价值,助力全球碳中和目标的实现。 - - 未来,该平台可拓展至更多行业与应用场景,成为实现可持续发展和绿色经济的重要工具。如果有进一步优化方向或特殊领域需求,我们将持续调整并深入研究。本调研报告是产品开发的关键起点,为后续的设计、开发和推广提供全面的数据支持和战略指引。 ## 登录认证 ### 一、登录 http://127.0.0.1:8066 admin/admin ### 二、访问后端api需带上token 放header方式: Authorization:Bearer xxx 放参数方式: http://localhost:9900/api-user/users?access_token=xxx ### 三、后端api方法不做认证方式 pipe: security: ignore: httpUrls: '不想认证拦截的url' ### 四、获取当前登录人对象 请求的方法参数SysUser上添加该注解,则注入当前登录人信息 //例1:只有id、username 和 roles public void test(@LoginUser SysUser user) ​ //例2:能获取SysUser对象的所有信息 public void test(@LoginUser(isFull = true) SysUser user) ### 五、认证token类型切换 本项目token类型支持3种方式:db、redis、jwt 其中因为jwt使用的是非对称加密,所以认证服务(pipe-uaa)需要配置为authJwt为私钥加密,其他服务(例如网关)配置为resJwt为公钥解密; pipe.oauth2.token.store.type变量即可改变 例如现在为jwt方式,需要修改为redis方式,只修改pipe-uaa和sc-gateway的pipe.oauth2.token.store.type变量为redis即可 ### 六、token自动续签 目前续签功能只支持redis token模式,请先确保授权服务器和认证服务器的pipe.oauth2.token.store.type=redis 认证服务器开启自动续签功能pipe.security.auth.renew.enable=true 白名单与非名单功能是非必填项,不配置默认所有应用的token都会续签 自动续签原理:系统设计-认证设计-token自动续签设计 八、url级权限 该功能默认关闭,开启需要在网关添加url权限相关配置 8.1. 打开网关认证配置 pipe.security.auth.urlPermission.enable设置为true 8.2. 配置只认证登录,登录后所有角色都能访问的url(可选项) pipe.security.auth.urlPermission.ignoreUrls 8.3. 配置白名单/黑名单(可选项) pipe.security.auth.urlPermission.includeClientIds pipe.security.auth.urlPermission.exclusiveClientIds ## 智慧管廊开发环境准备 ### 前期准备 maven配置阿里云镜像,修改settings.xml文件在mirrors块里添加以下内容 ```html alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central ``` 1. 在idea安装lombok插件 2. 准备好数据库5.7 3. 初始化数据库 4. 脚本路径:pipe-doc/sql 5. Redis 6. 注册中心Nacos ``` ##### Windows直接运行下面的文件 startup.cmd ##### Linux/Unix/Mac系统默认是集群模式,所以需要添加standalone改为单机模式 sh startup.sh -m standalone 启动命令地址:pipe-register\nacos\bin 确保机器已经有 JDK1.8 的运行环境,可以通过 java -version 命令检查 ``` 7. 修改pipe-config/src/main/resources/application-dev.properties里面的配置参数 - 数据库配置 - redis配置 - elasticsearch配置 非必须,如果不启用日志功能可不管 - sentinel配置 非必须,主要是用于展示应用吞吐量 ## 智慧管廊项目部署 # 部署 ```lua nohup java -jar target/sc-gateway.jar >> /home/log/sc-gateway-$(date +%Y-%m-%d).log 2>&1 & nohup java -jar pipe-uaa/target/pipe-uaa.jar >> /home/log/uaa-$(date +%Y-%m-%d).log 2>&1 & nohup java -jar pipe-business/user-center/target/user-center.jar >> /home/log/user-center-$(date +%Y-%m-%d).log 2>&1 & nohup java -jar pipe-business/ops-center/target/ops-center.jar >> /home/log/ops-center-$(date +%Y-%m-%d).log 2>&1 & nohup java -jar pipe-business/device-center/target/device-center.jar >> /home/log/device-center-$(date +%Y-%m-%d).log 2>&1 & nohup java -jar pipe-business/assets-center/target/assets-center.jar >> /home/log/assets-center-$(date +%Y-%m-%d).log 2>&1 & ``` ## 智慧管廊项目结构 ```lua pipe-platform -- 父项目,公共依赖 │ ├─pipe-business -- 业务模块一级工程 │ │ ├─user-center -- 用户中心[7000] │ │ ├─file-center -- 文件中心[5000] │ │ ├─device-center -- 设备中心[7202] │ │ ├─ops-center -- 运维中心[7201] │ │ ├─assets-center -- 资产中心[7203] │ │ ├─code-generator -- 代码生成器[7300] │ │ ├─search-center -- 搜索中心 │ │ │ ├─search-client -- 搜索中心客户端 │ │ │ ├─search-server -- 搜索中心服务端[7100] │ │ ├─sso-center -- 搜索中心 │ │ │ ├─web-sso -- sso前端 │ │ │ ├─ss-sso -- sso单点登录 │ │─pipe-commons -- 通用工具一级工程 │ │ ├─pipe-auth-client-spring-boot-starter -- 封装spring security client端的通用操作逻辑 │ │ ├─pipe-common-core -- 封装通用操作逻辑 │ │ ├─pipe-common-spring-boot-starter -- 封装通用操作逻辑 │ │ ├─pipe-db-spring-boot-starter -- 封装数据库通用操作逻辑 │ │ ├─pipe-log-spring-boot-starter -- 封装log通用操作逻辑 │ │ ├─pipe-redis-spring-boot-starter -- 封装Redis通用操作逻辑 │ │ ├─pipe-ribbon-spring-boot-starter -- 封装Ribbon和Feign的通用操作逻辑 │ │ ├─pipe-sentinel-spring-boot-starter -- 封装Sentinel的通用操作逻辑 │ │ ├─pipe-swagger2-spring-boot-starter -- 封装Swagger通用操作逻辑 │ ├─pipe-config -- 配置中心 │ ├─pipe-gateway -- api网关一级工程 │ │ ├─sc-gateway -- spring-cloud-gateway[9900] │ ├─pipe-monitor -- 监控一级工程 │ │ ├─sc-admin -- 应用监控[6500] │ │ ├─log-center -- 日志中心[7200] │ ├─pipe-uaa -- spring-security认证中心[8000] │ ├─pipe-register -- 注册中心Nacos[8848] ```