291 lines
7.2 KiB
JSON
291 lines
7.2 KiB
JSON
{
|
||
"metadata": {
|
||
"projectName": "SaleInfo - 钢材价格查询小程序",
|
||
"lastUpdated": "2026-01-06T15:26:54+08:00",
|
||
"scanVersion": "1.0.0",
|
||
"generatedBy": "Claude Code (Sonnet 4.5)"
|
||
},
|
||
"statistics": {
|
||
"totalFiles": 18,
|
||
"scannedFiles": 18,
|
||
"coveragePercent": 100,
|
||
"languages": {
|
||
"JavaScript": 6,
|
||
"JSON": 6,
|
||
"WXML": 2,
|
||
"WXSS": 2,
|
||
"Markdown": 2
|
||
},
|
||
"ignoredFiles": 0
|
||
},
|
||
"ignoreRules": [
|
||
"node_modules/**",
|
||
".git/**",
|
||
".github/**",
|
||
"dist/**",
|
||
"build/**",
|
||
".next/**",
|
||
"__pycache__/**",
|
||
"*.lock",
|
||
"*.log",
|
||
"*.bin",
|
||
"*.pdf",
|
||
"*.png",
|
||
"*.jpg",
|
||
"*.jpeg",
|
||
"*.gif",
|
||
"*.mp4",
|
||
"*.zip",
|
||
"*.tar",
|
||
"*.gz"
|
||
],
|
||
"modules": [
|
||
{
|
||
"name": "pages/index",
|
||
"type": "page",
|
||
"path": "pages/index",
|
||
"description": "主页模块,当前为用户信息展示模板,需改造为价格查询功能",
|
||
"status": "待开发",
|
||
"priority": "高",
|
||
"entryPoints": [
|
||
"pages/index/index.js"
|
||
],
|
||
"keyFiles": [
|
||
"pages/index/index.js",
|
||
"pages/index/index.wxml",
|
||
"pages/index/index.wxss",
|
||
"pages/index/index.json"
|
||
],
|
||
"interfaces": [
|
||
{
|
||
"name": "bindViewTap",
|
||
"type": "navigation",
|
||
"description": "跳转到日志页面"
|
||
},
|
||
{
|
||
"name": "onChooseAvatar",
|
||
"type": "event",
|
||
"description": "用户选择头像"
|
||
},
|
||
{
|
||
"name": "getUserProfile",
|
||
"type": "api",
|
||
"description": "获取用户信息(已废弃)"
|
||
}
|
||
],
|
||
"dependencies": [
|
||
"微信小程序基础库 2.10.4+"
|
||
],
|
||
"testCoverage": "无",
|
||
"docGenerated": true,
|
||
"docPath": "pages/index/CLAUDE.md"
|
||
},
|
||
{
|
||
"name": "pages/logs",
|
||
"type": "page",
|
||
"path": "pages/logs",
|
||
"description": "日志页面,展示小程序启动日志,可选改造为查询历史或价格趋势页面",
|
||
"status": "可用(可选改造)",
|
||
"priority": "低",
|
||
"entryPoints": [
|
||
"pages/logs/logs.js"
|
||
],
|
||
"keyFiles": [
|
||
"pages/logs/logs.js",
|
||
"pages/logs/logs.wxml",
|
||
"pages/logs/logs.wxss",
|
||
"pages/logs/logs.json"
|
||
],
|
||
"interfaces": [
|
||
{
|
||
"name": "onLoad",
|
||
"type": "lifecycle",
|
||
"description": "页面加载,读取本地存储日志"
|
||
}
|
||
],
|
||
"dependencies": [
|
||
"utils/util.js"
|
||
],
|
||
"testCoverage": "无",
|
||
"docGenerated": true,
|
||
"docPath": "pages/logs/CLAUDE.md"
|
||
},
|
||
{
|
||
"name": "utils",
|
||
"type": "library",
|
||
"path": "utils",
|
||
"description": "工具函数模块,当前包含时间格式化函数",
|
||
"status": "可用,待扩展",
|
||
"priority": "中",
|
||
"entryPoints": [
|
||
"utils/util.js"
|
||
],
|
||
"keyFiles": [
|
||
"utils/util.js"
|
||
],
|
||
"interfaces": [
|
||
{
|
||
"name": "formatTime",
|
||
"type": "function",
|
||
"description": "格式化日期时间为 YYYY/MM/DD HH:mm:ss"
|
||
}
|
||
],
|
||
"dependencies": [],
|
||
"testCoverage": "无",
|
||
"docGenerated": true,
|
||
"docPath": "utils/CLAUDE.md"
|
||
},
|
||
{
|
||
"name": "app",
|
||
"type": "application",
|
||
"path": "app.js",
|
||
"description": "小程序应用入口,全局配置与生命周期管理",
|
||
"status": "需扩展",
|
||
"priority": "高",
|
||
"entryPoints": [
|
||
"app.js"
|
||
],
|
||
"keyFiles": [
|
||
"app.js",
|
||
"app.json",
|
||
"app.wxss"
|
||
],
|
||
"interfaces": [
|
||
{
|
||
"name": "onLaunch",
|
||
"type": "lifecycle",
|
||
"description": "小程序启动,记录日志并登录"
|
||
}
|
||
],
|
||
"dependencies": [
|
||
"微信小程序基础库 2.10.4+"
|
||
],
|
||
"testCoverage": "无",
|
||
"docGenerated": false,
|
||
"docPath": null
|
||
}
|
||
],
|
||
"apiSpec": {
|
||
"file": "swagger.json",
|
||
"specification": "OpenAPI 3.0",
|
||
"version": "1.0.0",
|
||
"baseUrl": {
|
||
"development": "http://localhost:3000",
|
||
"production": "https://api.steel-prices.com"
|
||
},
|
||
"endpoints": [
|
||
{
|
||
"path": "/api/health",
|
||
"method": "GET",
|
||
"tag": "Health",
|
||
"description": "健康检查"
|
||
},
|
||
{
|
||
"path": "/api/prices/region",
|
||
"method": "GET",
|
||
"tag": "Prices",
|
||
"description": "按地区查询价格"
|
||
},
|
||
{
|
||
"path": "/api/prices/search",
|
||
"method": "GET",
|
||
"tag": "Prices",
|
||
"description": "搜索价格数据(支持分页)"
|
||
},
|
||
{
|
||
"path": "/api/prices/stats",
|
||
"method": "GET",
|
||
"tag": "Prices",
|
||
"description": "获取价格统计"
|
||
},
|
||
{
|
||
"path": "/api/prices/trend",
|
||
"method": "GET",
|
||
"tag": "Prices",
|
||
"description": "获取价格趋势"
|
||
},
|
||
{
|
||
"path": "/api/prices/import",
|
||
"method": "POST",
|
||
"tag": "Data",
|
||
"description": "导入价格数据"
|
||
}
|
||
],
|
||
"dataModels": [
|
||
"Price",
|
||
"PriceStats",
|
||
"TrendData",
|
||
"Pagination",
|
||
"SuccessResponse",
|
||
"ErrorResponse"
|
||
]
|
||
},
|
||
"gaps": [
|
||
{
|
||
"category": "测试",
|
||
"description": "缺少单元测试与集成测试",
|
||
"severity": "中",
|
||
"recommendation": "补充测试用例,确保核心功能稳定性"
|
||
},
|
||
{
|
||
"category": "API 封装",
|
||
"description": "缺少统一的 API 请求封装",
|
||
"severity": "高",
|
||
"recommendation": "在 utils 中创建 request.js 封装 wx.request"
|
||
},
|
||
{
|
||
"category": "错误处理",
|
||
"description": "缺少全局错误处理与用户提示机制",
|
||
"severity": "高",
|
||
"recommendation": "实现统一的错误处理与 Toast 提示"
|
||
},
|
||
{
|
||
"category": "业务功能",
|
||
"description": "pages/index 为模板代码,未实现实际业务",
|
||
"severity": "高",
|
||
"recommendation": "重构为价格查询页面,实现搜索、列表展示功能"
|
||
},
|
||
{
|
||
"category": "数据缓存",
|
||
"description": "缺少数据缓存策略",
|
||
"severity": "中",
|
||
"recommendation": "实现查询结果缓存,减少 API 调用"
|
||
}
|
||
],
|
||
"nextSteps": [
|
||
{
|
||
"priority": 1,
|
||
"task": "封装 API 请求工具(utils/request.js)",
|
||
"estimatedTime": "1-2 小时"
|
||
},
|
||
{
|
||
"priority": 2,
|
||
"task": "重构 pages/index 为价格查询页面",
|
||
"estimatedTime": "4-6 小时"
|
||
},
|
||
{
|
||
"priority": 3,
|
||
"task": "实现价格趋势图表展示(可使用 ECharts 或 Canvas)",
|
||
"estimatedTime": "3-4 小时"
|
||
},
|
||
{
|
||
"priority": 4,
|
||
"task": "补充错误处理与加载状态",
|
||
"estimatedTime": "1-2 小时"
|
||
},
|
||
{
|
||
"priority": 5,
|
||
"task": "添加单元测试",
|
||
"estimatedTime": "2-3 小时"
|
||
}
|
||
],
|
||
"truncated": false,
|
||
"recommendations": [
|
||
"优先实现核心查询功能,UI 保持简洁",
|
||
"参考 swagger.json 文档调用后端 API",
|
||
"添加加载动画与错误提示提升用户体验",
|
||
"考虑添加数据缓存减少 API 调用",
|
||
"使用微信开发者工具的真机调试功能进行测试"
|
||
]
|
||
}
|