Files
code-bang/README.md
T
2026-09-17 16:36:13 +08:00

141 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 代码帮(code-bang)
软件商城与定制开发撮合平台。采用前后端分离架构:后端基于 FastAdmin(ThinkPHP 5)提供管理后台与 API 服务,前端为微信原生小程序(基于 TDesign 零售行业模板二次开发)。
平台连接三类角色:
- **普通用户**:浏览/购买软件商品,获取激活码授权;或发布定制开发需求
- **开发者**:入驻平台,参与需求竞标,承接定制项目并获得结算收益
- **平台运营**:通过 FastAdmin 管理后台管理商品、订单、需求、开发者与资金
## 核心功能
### 软件商城
- 商品分类目录、搜索、商品列表与详情、评论
- 购物车、优惠券、订单确认、微信支付
- 订单管理:列表/详情/取消/删除、物流信息、发票、售后(申请/列表/详情)
### 激活码授权(软件授权体系)
- 购买软件后获得激活码
- 设备绑定激活(每个激活码最多绑定 2 台设备)
- 激活状态与有效期管理(`fa_soft_codes` / `fa_soft_devices`)
### 定制需求撮合
- 用户发布需求(描述、图片、附件、联系方式、开发类型)
- 开发者参与竞标,用户筛选并确认中标
- 电子合同签署与协议查看
- 需求全流程状态流转
### 开发者体系
- 开发者入驻申请与审核
- 账户余额、资金日志、提现申请
- 订单结算明细
### 消息与用户
- 站内消息列表/详情/已读标记
- 微信授权登录、个人资料、收货地址管理
## 技术栈
| 端 | 技术 | 说明 |
| --- | --- | --- |
| 后端 | PHP >= 7.4 / FastAdmin(ThinkPHP 5) | 管理后台 + API |
| 数据库 | MySQL | 表前缀 `fa_`,初始化脚本 `backend/softmt.sql` |
| 小程序 | 微信原生 + TDesign(tdesign-miniprogram) | 基于 TDesign 零售行业模板二次开发 |
| 关键依赖 | overtrue/wechat(EasyWeChat)、think-queue、phpspreadsheet、阿里云 OSS | 微信生态、队列、Excel、对象存储 |
## 目录结构
```
code-bang/
├── backend/ # 后端(FastAdmin / ThinkPHP 5)
│ ├── application/
│ │ ├── admin/ # 管理后台模块
│ │ │ └── controller/ # 商品、订单、需求、开发者、账户、消息等管理
│ │ ├── api/ # 小程序 API 模块
│ │ │ └── controller/ # Auth、Goods、Cart、Order、Pay、Demand、
│ │ │ # Developer、Soft、Account、Message 等
│ │ ├── common/ # 公共模块(模型、服务)
│ │ ├── index/ # 默认模块
│ │ └── extra/ # 扩展配置
│ ├── addons/ # 插件
│ ├── public/ # Web 入口与静态资源
│ ├── softmt.sql # 数据库初始化脚本
│ └── .env.sample # 环境配置模板
└── frontend/
└── miniapp/ # 微信小程序
├── pages/ # 页面
│ ├── home/ # 首页
│ ├── goods/ # 软件(列表/详情/分类/搜索/评论)
│ ├── cart/ # 购物车
│ ├── order/ # 订单(确认/列表/详情/支付结果/售后/物流/发票)
│ ├── coupon/ # 优惠券
│ ├── demand/ # 需求(发布/列表/详情/合同/协议)
│ ├── developer/ # 开发者入驻
│ ├── message/ # 消息
│ └── usercenter/ # 个人中心(资料/地址/余额)
├── services/ # 业务服务层(API 调用封装)
├── model/ # 数据模型
├── config/api.js # API 地址配置
├── custom-tab-bar/ # 自定义 TabBar
└── components/ # 公共组件
```
## 快速开始
### 1. 部署后端
环境要求:PHP >= 7.4(含 `ext-json`、`ext-curl`、`ext-pdo`、`ext-bcmath`)、MySQL、Composer。
```bash
cd backend
composer install
```
1. 创建 MySQL 数据库并导入 `backend/softmt.sql`
2. 复制 `.env.sample` 为 `.env`,配置数据库连接:
```ini
[database]
hostname = 127.0.0.1
database = fastadmin
username = root
password = root
hostport = 3306
prefix = fa_
```
3. 将站点根目录指向 `backend/public/`,通过浏览器访问完成部署
4. 微信相关功能需在后台配置小程序 AppID/AppSecret 及微信支付参数
### 2. 配置小程序
环境要求:[微信开发者工具](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html)、Node.js。
```bash
cd frontend/miniapp
npm install
```
1. 修改 `config/api.js` 中的 `ApiRoot`,指向后端服务地址:
```js
const ApiRoot = 'http://your-backend-host';
```
2. 用微信开发者工具导入 `frontend/miniapp` 目录
3. 在 `project.config.json` 中填入小程序 AppID,构建 npm(工具 → 构建 npm)后即可预览调试
### 3. 管理后台
后端部署完成后,访问 `http://your-backend-host` 进入 FastAdmin 管理后台,使用默认管理员账号登录(首次登录请及时修改密码),即可管理商品、订单、需求、开发者与账户资金。
## License
本项目依赖 FastAdmin(Apache-2.0)与 TDesign(遵循其开源协议),请遵循相应许可证使用。