203 lines
3.8 KiB
Markdown
203 lines
3.8 KiB
Markdown
# 微信小程序H5审批系统
|
||
|
||
基于Vue 3 + TypeScript + Vant 4开发的移动端H5应用,主要用于在微信小程序WebView中运行的订单审批系统。
|
||
|
||
## 项目特性
|
||
|
||
- 🚀 Vue 3 + TypeScript + Vite 开发
|
||
- 📱 Vant 4 移动端组件库
|
||
- 🎯 专为微信小程序WebView优化
|
||
- 📋 订单列表查看和搜索
|
||
- 📄 订单详情展示
|
||
- ✅ 审批操作功能
|
||
- 📊 审批历史记录
|
||
- 📎 附件预览功能
|
||
|
||
## 技术栈
|
||
|
||
- **前端框架**: Vue 3
|
||
- **开发语言**: TypeScript
|
||
- **构建工具**: Vite
|
||
- **UI组件库**: Vant 4
|
||
- **路由管理**: Vue Router 4
|
||
- **状态管理**: Pinia
|
||
- **HTTP客户端**: Axios
|
||
- **样式预处理**: Sass
|
||
|
||
## 目录结构
|
||
|
||
```
|
||
oms_h5/
|
||
├── public/ # 静态资源
|
||
├── src/
|
||
│ ├── api/ # API接口
|
||
│ ├── components/ # 公共组件
|
||
│ ├── views/ # 页面组件
|
||
│ │ ├── List/ # 列表页面
|
||
│ │ └── Detail/ # 详情页面
|
||
│ ├── store/ # 状态管理
|
||
│ ├── utils/ # 工具函数
|
||
│ ├── types/ # TypeScript类型定义
|
||
│ ├── styles/ # 全局样式
|
||
│ └── router/ # 路由配置
|
||
├── docs/ # 文档和设计稿
|
||
│ └── ui-mockups/ # UI设计图
|
||
├── package.json
|
||
└── vite.config.ts
|
||
```
|
||
|
||
## 开发环境搭建
|
||
|
||
### 环境要求
|
||
|
||
- Node.js >= 16
|
||
- npm >= 7 或 yarn >= 1.22
|
||
|
||
### 安装依赖
|
||
|
||
```bash
|
||
npm install
|
||
# 或
|
||
yarn install
|
||
```
|
||
|
||
### 启动开发服务器
|
||
|
||
```bash
|
||
npm run dev
|
||
# 或
|
||
yarn dev
|
||
```
|
||
|
||
### 构建生产版本
|
||
|
||
```bash
|
||
npm run build
|
||
# 或
|
||
yarn build
|
||
```
|
||
|
||
### 预览构建结果
|
||
|
||
```bash
|
||
npm run preview
|
||
# 或
|
||
yarn preview
|
||
```
|
||
|
||
## 环境配置
|
||
|
||
项目支持多环境配置,通过`.env`文件管理:
|
||
|
||
- `.env` - 通用环境变量
|
||
- `.env.development` - 开发环境
|
||
- `.env.production` - 生产环境
|
||
|
||
主要配置项:
|
||
|
||
```bash
|
||
VITE_API_BASE_URL=http://localhost:8080 # API基础URL
|
||
VITE_APP_TITLE=订单审批系统 # 应用标题
|
||
VITE_FILE_BASE_URL=http://localhost:8080 # 文件服务URL
|
||
```
|
||
|
||
## 主要功能
|
||
|
||
### 1. 订单列表
|
||
- ✅ 订单列表展示
|
||
- ✅ 下拉刷新和上拉加载
|
||
- ✅ 搜索功能
|
||
- ✅ 状态筛选
|
||
- ✅ 订单状态标识
|
||
|
||
### 2. 订单详情
|
||
- ✅ 订单基本信息展示
|
||
- ✅ 产品信息列表(软件/硬件/维保)
|
||
- ✅ 合同附件展示和预览
|
||
- ✅ 审批历史时间线
|
||
|
||
### 3. 审批操作
|
||
- ✅ 审批通过/驳回
|
||
- ✅ 审批意见输入
|
||
- ✅ 操作结果反馈
|
||
|
||
### 4. 微信小程序适配
|
||
- ✅ WebView环境检测
|
||
- ✅ 移动端样式适配
|
||
- ✅ 触摸手势支持
|
||
|
||
## API接口
|
||
|
||
### 订单列表接口
|
||
```
|
||
POST /project/order/list
|
||
```
|
||
|
||
### 订单详情接口
|
||
```
|
||
GET /project/order/h5/approve/:id
|
||
```
|
||
|
||
### 审批操作接口
|
||
```
|
||
POST /project/order/order/approve
|
||
```
|
||
|
||
## 开发规范
|
||
|
||
### 代码风格
|
||
项目使用ESLint + Prettier进行代码规范检查和格式化。
|
||
|
||
```bash
|
||
npm run lint # 代码检查
|
||
npm run type-check # 类型检查
|
||
```
|
||
|
||
### Git提交规范
|
||
建议使用Angular提交信息规范:
|
||
|
||
```
|
||
feat: 新增功能
|
||
fix: 修复问题
|
||
docs: 文档更新
|
||
style: 代码格式调整
|
||
refactor: 代码重构
|
||
test: 测试相关
|
||
chore: 构建/工具链更新
|
||
```
|
||
|
||
## 部署说明
|
||
|
||
### 生产构建
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
构建完成后,`dist`目录包含所有静态资源文件。
|
||
|
||
### 服务器配置
|
||
由于是SPA应用,需要配置服务器将所有路由指向`index.html`。
|
||
|
||
#### Nginx配置示例
|
||
```nginx
|
||
location / {
|
||
try_files $uri $uri/ /index.html;
|
||
}
|
||
```
|
||
|
||
### 微信小程序配置
|
||
1. 在微信小程序管理后台配置业务域名
|
||
2. 确保HTTPS协议部署
|
||
3. 配置webview组件的src属性
|
||
|
||
## 浏览器兼容性
|
||
|
||
- Chrome >= 64
|
||
- Firefox >= 78
|
||
- Safari >= 12
|
||
- 微信内置浏览器
|
||
- 各主流移动端浏览器
|
||
|
||
## 许可证
|
||
|
||
MIT License |