# 代码邦(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(遵循其开源协议),请遵循相应许可证使用。