# 临建设施AI智能化方案解决系统(前端) **Repository Path**: sjssting/buildModels-frontend ## Basic Information - **Project Name**: 临建设施AI智能化方案解决系统(前端) - **Description**: 临建设施AI智能化方案解决系统(前端) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-30 - **Last Updated**: 2026-04-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BuildAI Pro AI 临建工程全生命周期管理平台 ## 技术栈 - **前端框架**: Nuxt 4.3.1 + Vue 3 - **状态管理**: Pinia - **数据库**: SQLite (Drizzle ORM) - **认证**: JWT (Access Token + Refresh Token) ## 环境要求 - Node.js >= 18.0.0 - pnpm >= 8.0.0 ## 开发环境 ### 1. 安装依赖 ```bash pnpm install ``` ### 2. 配置环境变量 复制 `.env.example` 为 `.env`,根据需要修改配置: ```bash cp .env.example .env ``` 主要配置项: | 变量 | 说明 | 默认值 | |------|------|--------| | `DB_PATH` | SQLite 数据库路径 | `./data.db` | | `JWT_SECRET` | JWT 密钥(生产环境必须修改) | - | | `JWT_ACCESS_EXPIRES` | Access Token 过期时间 | `15m` | | `JWT_REFRESH_EXPIRES` | Refresh Token 过期时间 | `7d` | ### 3. 数据库操作 ```bash # 生成数据库迁移 pnpm drizzle-kit generate # 执行数据库迁移 pnpm drizzle-kit migrate # 查看数据库状态 pnpm drizzle-kit status # 打开数据库编辑器(查看/编辑数据) pnpm drizzle-kit studio ``` ### 4. 启动开发服务器 ```bash pnpm dev ``` 访问 http://localhost:3000 ## 生产部署 ### 1. 构建应用 ```bash pnpm build ``` ### 2. 启动生产服务器 ```bash pnpm start ``` ### 3. 使用 PM2 部署 ```bash # 安装 PM2 npm install -g pm2 # 启动应用 pm2 start .output/server/index.mjs --name buildai-pro # 查看状态 pm2 status # 查看日志 pm2 logs buildai-pro # 重启 pm2 restart buildai-pro ``` ### 4. 使用 Docker 部署 ```dockerfile FROM node:20-alpine AS builder WORKDIR /app COPY package.json pnpm-lock.yaml ./ RUN npm install -g pnpm && pnpm install COPY . . RUN pnpm build FROM node:20-alpine WORKDIR /app COPY --from=builder /app/.output ./ COPY package.json ./ RUN npm install -g pnpm && pnpm install --prod EXPOSE 3000 CMD ["node", "server/index.mjs"] ``` ```bash docker build -t buildai-pro . docker run -d -p 3000:3000 --env-file .env buildai-pro ``` ### 5. Nginx 反向代理配置 ```nginx server { listen 80; server_name your-domain.com; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_cache_bypass $http_upgrade; } } ``` ## API 接口 ### 认证接口 | 方法 | 路径 | 说明 | |------|------|------| | POST | `/api/auth/register` | 用户注册 | | POST | `/api/auth/login` | 用户登录 | | POST | `/api/auth/logout` | 退出登录 | | GET | `/api/auth/me` | 获取当前用户 | | POST | `/api/auth/refresh` | 刷新 Access Token | ### 统一响应格式 ```json { "success": true, "message": "操作成功", "data": { ... } } ``` ## 项目结构 ``` ├── server/ # 服务端代码 │ ├── api/ # API 路由 │ │ └── auth/ # 认证接口 │ ├── db/ # 数据库 │ │ ├── schema.ts # 数据模型 │ │ └── index.ts # 数据库连接 │ └── utils/ # 工具函数 │ ├── jwt.ts # JWT 工具 │ ├── password.ts # 密码加密 │ └── response.ts # 响应格式化 ├── src/ # 前端代码 │ ├── assets/ # 静态资源 │ ├── components/ # 组件 │ ├── composables/ # 组合式函数 │ ├── layouts/ # 布局 │ ├── pages/ # 页面 │ └── plugins/ # 插件 ├── public/ # 公共资源 ├── .env # 环境变量 └── nuxt.config.ts # Nuxt 配置 ```