cloud 3cb7684039 更新项目 skills 并完善设计功率曲线前端
- skills: 移除 edge_collector 专属技能(OTA/协议/边缘主机/collector 等),
  保留通用工程规范(analyze-questions/cpp-coding-style/git-commit/shell-scripting/
  frontend-debug/frontend-dialog/frontend-ui-conventions),新增 wind_power_cal
  项目技能(wind-project-overview/build-run/deploy/backend-conventions/
  frontend-conventions/third-party-libs)与元技能 skill-builder;
  .agents/skills 与 .claude/skills 保持同步
- 前端: HomePage/App.css 增加设计功率曲线录入与图表展示

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-14 17:50:23 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00
2026-07-14 15:43:18 +08:00

wind_power_cal

风电功率计算平台 — 前后端工程。

技术栈与 edge_collector 对齐:

  • 后端C++17 + Drogon HTTP 框架(从源码编译,见 third_party/drogon_repo
  • 前端React 19 + Vite 8 + react-router 7

目录结构

wind_power_cal/
├── third_party/
│   ├── ensure_third_party.sh   # Drogon/Trantor 源码编译脚本(幂等)
│   ├── drogon_repo/            # Drogon + Trantor 源码(vendored
│   ├── nlohmann/               # json 头文件库(header-only
│   └── drogon/install/<arch>/  # 编译产物(gitignored
├── backend/                    # C++ Drogon 服务(可执行 wind_server
│   ├── CMakeLists.txt
│   ├── config/server_config.json
│   └── src/                    # main.cpp + controllers/ + utils/
└── frontend/web_app/           # React + Vite 前端

快速开始

1. 一键启动(默认监听 :8848

./run.sh

根目录 run.sh 会依次:源码编译 Drogon(首次较慢,约数分钟;之后幂等跳过)→ 构建后端 → 构建前端 → 整理 runtime/wind_power/ → 启动服务。

验证:

curl -s localhost:8848/api/system/health
# {"data":{"status":"ok"},"msg":"success","status":0}

curl -s localhost:8848/api/system/version
# {"data":{"name":"wind_power_cal","version":"0.1.0"},"msg":"success","status":0}

2. 前端开发模式(默认监听 :5173)

cd frontend/web_app
npm install
npm run dev

打开 http://localhost:5173 ,首页通过 Vite 代理 (/apilocalhost:8848) 访问后端接口。

3. 生产联调

统一使用根目录 ./run.sh。脚本会构建前端并把 dist/ 同步到 runtime/wind_power/web/,由后端托管 SPA;访问 http://localhost:8848/ 直接返回前端页面。

端口

服务 端口
后端 8848
前端 dev 5173

说明

  • MVP 阶段不包含数据库 / MQTT / 鉴权;目录结构已就位,可参照 edge_collector 后续扩展。
  • 响应统一信封:{"status":0,"msg":"success","data":{...}}(见 backend/src/utils/ResponseUtil.h)。
S
Description
风力数据功率计算
Readme 83 MiB
Languages
JavaScript 51.3%
C++ 36.5%
CSS 7.1%
Shell 3.9%
CMake 1.1%
Other 0.1%