init:代码初始化

This commit is contained in:
bai
2026-01-06 09:19:12 +08:00
parent 2dff90de4a
commit ba478d70cc
34 changed files with 11917 additions and 1 deletions

271
.claude/index.json Normal file
View File

@@ -0,0 +1,271 @@
{
"metadata": {
"project_name": "steel_prices_service",
"description": "钢材价格数据解析与查询服务Express.js + MySQL",
"last_scan": "2026-01-05T16:13:47+08:00",
"scan_version": "1.0.0",
"scanner": "AI Context Architect (Adaptive)"
},
"statistics": {
"total_files_estimated": 7,
"files_scanned": 7,
"coverage_percentage": 100,
"directories_found": 3,
"modules_identified": 2,
"languages_detected": ["JSON", "Markdown"],
"ignore_patterns_applied": [
"node_modules/**",
".git/**",
".github/**",
"dist/**",
"build/**",
".next/**",
"__pycache__/**",
"*.lock",
"*.log",
"*.bin",
"*.pdf",
"*.png",
"*.jpg",
"*.jpeg",
"*.gif",
"*.mp4",
"*.zip",
"*.tar",
"*.gz"
]
},
"modules": [
{
"name": "root",
"path": "./",
"type": "root",
"language": "JavaScript/Node.js (planned)",
"description": "钢材价格服务根目录(项目初始阶段)",
"entry_points": [],
"interfaces": [],
"dependencies": [],
"data_models": [],
"tests": [],
"documentation": "CLAUDE.md",
"coverage": {
"has_entry": false,
"has_interfaces": false,
"has_tests": false,
"has_data_models": false,
"has_documentation": true
},
"status": "initial"
},
{
"name": "data",
"path": "data/",
"type": "data",
"language": "JSON",
"description": "钢材价格数据存储目录",
"entry_points": [],
"interfaces": [],
"dependencies": [],
"data_models": [
{
"name": "SteelPriceData",
"source": "钢材网架.json, 钢厂指导价.json, 刚协指导价.json",
"total_records": 31098,
"fields": [
"GOODS_MATERIAL",
"GOODS_SPEC",
"PIRCE_DATE",
"PARTSNAME_NAME",
"PRODUCTAREA_NAME",
"PRICE_ID",
"PR_PRICE_SOURCE",
"PR_PRICE_REGION",
"PNTREE_NAME",
"PR_PRICESET_MAKEPRICE",
"PR_LAST_PRICESET_MAKEPRICE",
"PR_MAKEPRICE_UPDW",
"PR_PRICESET_HANGPRICE",
"PR_LAST_PRICESET_HANGPRICE",
"PR_HANGPRICE_UPDW",
"OPERATOR_CODE",
"OPERATOR_NAME"
]
}
],
"tests": [],
"documentation": "data/CLAUDE.md",
"coverage": {
"has_entry": false,
"has_interfaces": false,
"has_tests": false,
"has_data_models": true,
"has_documentation": true
},
"status": "completed"
}
],
"gaps": [
{
"module": "root",
"missing": [
"package.json (Node.js 项目配置)",
"src/ 目录(源代码)",
"app.js 或 index.js (Express 应用入口)",
"config/ 目录(配置文件)",
"routes/ 目录API 路由)",
"models/ 目录(数据模型)",
"services/ 目录(业务逻辑)",
"scripts/ 目录(工具脚本)",
"tests/ 目录(测试代码)",
".env.example (环境变量示例)",
".gitignore (Git 忽略规则)",
"数据库表结构定义"
],
"priority": "high",
"recommendation": "项目处于初始阶段,需要搭建完整的 Express.js 项目结构"
},
{
"module": "data",
"missing": [
"数据验证模块",
"数据导入脚本",
"数据更新定时任务"
],
"priority": "medium",
"recommendation": "实现 JSON 数据解析与数据库导入功能"
}
],
"next_steps": [
"初始化 Node.js 项目 (npm init -y)",
"安装核心依赖 (express, mysql2, dotenv, cors)",
"创建标准项目目录结构 (src/, config/, routes/, models/, services/)",
"设计并创建 MySQL 数据库表结构",
"实现 JSON 数据解析模块 (services/parser.js)",
"实现数据库连接与模型 (config/database.js, models/Price.js)",
"实现数据导入脚本 (scripts/import-data.js)",
"开发价格查询 API 接口 (routes/prices.js)",
"编写单元测试与集成测试",
"添加 ESLint 和 Prettier 配置",
"创建 Docker 镜像与部署配置",
"编写 API 文档 (Swagger/OpenAPI)"
],
"tech_stack": {
"backend": "Express.js (Node.js)",
"database": "MySQL 8.0+",
"data_format": "JSON",
"api_style": "RESTful",
"testing": "Jest + Supertest (planned)",
"deployment": "Docker (planned)"
},
"architecture_overview": {
"layers": [
"数据采集层(我的钢铁网、钢厂官方、行业协会)",
"数据处理层JSON 解析、数据清洗、验证、转换)",
"数据存储层MySQL 数据库、索引优化、定时归档)",
"服务接口层Express.js REST API、价格查询、趋势分析"
],
"data_flow": "外部数据源 → JSON 文件 → 解析与清洗 → MySQL 数据库 → Express API → 客户端"
},
"development_roadmap": {
"phase_1": {
"name": "基础搭建",
"duration": "1-2 周",
"tasks": [
"初始化 Node.js 项目",
"创建数据库表结构",
"实现 JSON 数据解析模块",
"实现数据导入脚本",
"基础 API 框架搭建"
]
},
"phase_2": {
"name": "核心功能",
"duration": "2-3 周",
"tasks": [
"价格查询 API按地区、材质、日期",
"价格统计 API平均价、最高价、最低价",
"趋势分析 API涨跌幅、历史曲线",
"数据验证与清洗逻辑",
"错误处理与日志记录"
]
},
"phase_3": {
"name": "增强功能",
"duration": "1-2 周",
"tasks": [
"定时任务自动采集数据",
"数据变更通知",
"数据导出功能Excel、CSV",
"API 文档Swagger",
"性能优化与缓存"
]
},
"phase_4": {
"name": "测试与部署",
"duration": "1 周",
"tasks": [
"单元测试覆盖",
"集成测试",
"Docker 容器化",
"CI/CD 流程",
"生产环境部署"
]
}
},
"data_assets": {
"sources": [
{
"name": "我的钢铁网",
"file": "data/钢材网架.json",
"records": 211,
"regions": ["重庆", "成都", "广州", "南宁"],
"updated": "2026-01-05"
},
{
"name": "德钢指导价",
"file": "data/钢厂指导价.json",
"records": 29987,
"regions": ["玉溪", "昭通", "文山", "景洪", "蒙自"],
"updated": "2025-09-04"
},
{
"name": "云南钢协",
"file": "data/刚协指导价.json",
"records": 900,
"regions": ["昆明", "玉溪", "楚雄", "大理"],
"updated": "2026-01-05"
}
],
"total_records": 31098,
"data_format": "JSON with pagination wrapper",
"quality_issues": [
"字段命名错误 (PIRCE_DATE 应为 PRICE_DATE)",
"钢厂指导价数据日期较旧 (2025-09-04)",
"不同文件字段略有差异"
]
},
"truncated": false,
"truncation_reason": null,
"ignore_stats": {
"ignored_dirs": [".git"],
"ignored_files_count": 0,
"total_ignored_size_kb": 0
},
"recommendations": {
"immediate": [
"创建 package.json 并安装依赖",
"设计 MySQL 数据库表结构",
"实现数据导入脚本"
],
"short_term": [
"搭建 Express.js 基础框架",
"实现核心查询 API",
"添加基础测试"
],
"long_term": [
"实现自动化数据采集",
"性能优化与缓存",
"Docker 容器化部署"
]
}
}