一、项目概述
项目名称: 神兽道游游戏系统 技术框架: ThinkCMF X2.2.0 (基于 ThinkPHP 3.x) 开发语言: PHP 5.x 数据库: MySQL 服务器环境: Linux + Nginx + PHP
二、项目整体结构
2.1 目录结构
/├── application/ # 应用目录│ ├── Admin/ # 后台管理模块│ ├── Api/ # API 接口模块│ ├── Asset/ # 资源管理模块│ ├── Comment/ # 评论管理模块│ ├── Common/ # 公共模块(控制器、模型、配置)│ ├── Portal/ # 前台门户模块(核心业务)│ ├── User/ # 用户中心模块│ └── Install/ # 安装模块├── data/ # 数据目录(配置、上传、缓存)├── plugins/ # 插件目录├── public/ # 公共资源目录├── simplewind/ # ThinkCMF 核心框架├── skin/ # 皮肤模板(神兽主题)├── static/ # 静态资源(CSS、JS、图片)├── statics/ # 系统静态资源├── themes/ # 前台模板└── admin/themes/ # 后台模板三、功能模块详解
3.1 核心业务模块(Portal)
位置: application/Portal/
主要控制器:
控制器 | 功能描述 |
IndexController.class.php | 首页控制,房间入口,游戏界面加载 |
HomeController.class.php | 会员中心,互助订单管理,提款排单 |
UserController.class.php | 用户管理,推荐关系,升级系统,抽奖 |
AdminOrderController.class.php | 订单管理后台 |
AdminUserController.class.php | 用户管理后台 |
AdminPostController.class.php | 内容管理后台 |
ArticleController.class.php | 文章资讯 |
OrderController.class.php | 订单处理逻辑 |
核心业务逻辑:
1. 游戏房间系统
- 支持多种游戏类型(神兽、导游等)
- 房间创建、加入、游戏记录
- 房卡系统(制作房卡包、领取房卡)
- 游戏规则配置(打份、购分、配牌等)
2. 互助排单系统(核心金融逻辑)
- 提供帮助(排单):用户提交金额,等待匹配
- 得到帮助(提款):从三个钱包提款(本息钱包、推荐奖钱包、管理奖钱包)
- 订单匹配:系统自动匹配提供者和获取者
- 打款确认:打款方上传打款凭证
- 收款确认:收款方确认收款后交易完成
- 超时处理:超时未打款/未收款自动封号
3. 推荐奖励系统
- 直推奖励:推荐人获得推荐奖
- 管理奖:1-7 代领导奖
- 自动升级:根据直推人数和团队人数升级(C1-C5,初级经理,高级经理)
- 激活码系统:新账号需要激活码激活
4. 等级系统
- 会员等级:C1-C5,初级经理,高级经理
- 升级条件:直推人数 + 团队活跃人数
- 管理奖比例根据等级递增
5. 钱包系统
- 本息钱包:排单本金和利息
- 推荐奖钱包:推荐奖励
- 管理奖钱包:领导奖和利息收入
- 房卡余额:开房间消耗
3.2 后台管理模块(Admin)
位置: application/Admin/
主要控制器:
控制器 | 功能描述 |
MainController.class.php | 后台首页,系统信息 |
IndexController.class.php | 后台入口 |
BackupController.class.php | 数据库备份 |
MenuController.class.php | 后台菜单管理 |
NavController.class.php | 导航管理 |
RbacController.class.php | 角色权限管理 |
RouteController.class.php | 路由管理 |
SettingController.class.php | 系统设置 |
SlideController.class.php | 幻灯片管理 |
UserController.class.php | 用户管理 |
AdController.class.php | 广告管理 |
LinkController.class.php | 友情链接 |
MailerController.class.php | 邮件配置 |
StorageController.class.php | 存储配置 |
3.3 API 接口模块(Api)
位置: application/Api/
主要控制器:
控制器 | 功能描述 |
OauthController.class.php | 微信登录授权 |
GuestbookController.class.php | 留言板 |
CheckcodeController.class.php | 验证码 |
MobileverifyController.class.php | 手机验证 |
MapController.class.php | 地图接口 |
PluginController.class.php | 插件接口 |
3.4 用户中心模块(User)
位置: application/User/
主要功能:
- 用户登录/注册
- 个人资料编辑
- 密码修改(登录密码、二级密码)
- 推荐人列表
- 激活码管理
3.5 评论模块(Comment)
位置: application/Comment/
主要功能:
- 评论提交
- 评论管理后台
- 评论审核
3.6 资源模块(Asset)
位置: application/Asset/
主要控制器:
- AssetController.class.php: 资源上传
- DownloadController.class.php: 文件下载
- UeditorController.class.php: 富文本编辑器上传
四、数据库表结构
4.1 核心业务表
表名 | 说明 | 主要字段 |
jz_user | 用户表 | id, user_login, mobile, password, fk(房卡), money(余额), token, openid |
jz_users | 扩展用户表 | id, user_login, user_pass, score, coin, mobile |
jz_room | 游戏房间表 | id, type, dk(端口), rule(规则), user(玩家), time, zt(状态), uid(房主) |
jz_dj_room | 房间对局记录 | id, room, js(局数), djxx(对局信息) |
jz_game | 游戏类型表 | id, name, zt, img, type(beast/daoyou) |
jz_qun | 用户群组 | id, open(群主 id), uid(成员 id), zt(状态) |
jz_fk_bag | 房卡包 | id, send_id, get_id, number, mis(码), add_time, end_time |
jz_list | 代理授权 | id, agent, uid, time |
4.2 互助订单表
表名 | 说明 | 主要字段 |
jz_provide_help | 提供帮助(排单) | id, user_login, money, status, line_status |
jz_get_help | 得到帮助(提款) | id, user_login, money, wallet, status |
jz_match | 订单匹配表 | id, provide_user, get_user, money, status, pay_time, confirm_time |
jz_provide_order | 打款凭证表 | id, match_id, user_login, money, create_time |
jz_order_guestbook | 订单留言表 | id, order_id, user_login, msg |
4.3 系统配置表
表名 | 说明 | 主要字段 |
jz_options
| 系统配置 | option_id, option_name, option_value |
jz_menu | 后台菜单 | id, name, icon, url, pid |
jz_slide | 幻灯片 | id, slide_cat_id, name, pic, url |
jz_nav | 导航 | id, name, url |
jz_ad | 广告 | id, name, content |
jz_links | 友情链接 | id, name, url, icon |
jz_route | 路由规则 | id, name, rule |
jz_plugins | 插件 | id, name, status |
4.4 权限表
表名 | 说明 | 主要字段 |
jz_auth_rule | 权限规则 | id, name, title, type |
jz_role | 角色表 | id, name |
jz_auth_access | 角色权限 | role_id, rule_id |
jz_role_user | 角色用户 | role_id, user_id |
4.5 其他表
表名 | 说明 |
jz_asset | 资源文件 |
jz_comments | 评论 |
jz_guestbook | 留言板 |
jz_oauth_user | 第三方用户 |
jz_posts | 文章资讯 |
jz_terms | 分类目录 |
jz_term_relationships | 分类关系 |
jz_server | 服务器/线路 |
jz_user_zdcard | 天卡 |
jz_usermachine | 用户机器 |
jz_all_record | 所有记录 |
jz_common_action_log | 操作日志 |
五、核心业务逻辑详解
5.1 游戏房间流程
1. 用户创建房间 → 选择游戏类型(/道游) → 配置游戏规则(打份、购分、配牌等) → 消耗房卡 → 生成房间 ID2. 用户加入房间 → 验证房主权限 → 验证玩家资格(群组成员) → 加载游戏规则 → 进入游戏界面3. 游戏进行 → 记录每局结果 → 更新玩家积分 → 游戏结束后保存记录5.2 互助排单流程
1. 提供帮助(排单) → 检查排单时间(每日固定时间段) → 检查排单数量(每日限制次数) → 检查排单金额(首轮 6000,次轮 10000,第三轮 20000) → 扣除排单币 → 创建排单记录2. 订单匹配 → 系统自动匹配提供者和获取者 → 创建匹配订单 → 通知双方3. 打款流程 → 打款方在规定时间内打款 → 上传打款凭证 → 订单状态变更为"已付款"4. 收款流程 → 收款方确认收款 → 支付推荐奖和管理奖 → 订单状态变更为"交易完成"5. 超时处理 → 超时未打款:扣除上级金额,封禁账号 → 超时未收款:自动确认,封禁账号5.3 推荐奖励计算
推荐奖:直推会员交易金额的固定百分比管理奖(1-7 代): - 第 1 代:推荐奖比例 - 第 2-7 代:递减比例升级条件: C1: 直推 1 人 + 团队 1 人 C2: 直推 2 人 + 团队 5 人 C3: 直推 3 人 + 团队 10 人 C4: 直推 4 人 + 团队 15 人 C5: 直推 5 人 + 团队 20 人 初级经理:直推 5 人 + 团队 50 人 高级经理:直推 5 人 + 团队 100 人5.4 钱包扣款逻辑
提款时: 1. 检查提款时间(每日固定时间段) 2. 检查提款次数(每日限制) 3. 检查提款金额(最小值、最大值、倍数) 4. 检查钱包余额 5. 扣除对应钱包金额 6. 创建提款记录利息计算: - 2 小时内打款:3% 利息 - 4 小时内打款:2% 利息 - 6 小时内打款:1% 利息六、核心代码文件
6.1 入口文件
- /index.php - 网站入口,定义路径和常量
6.2 配置文件
- /application/Common/Conf/config.php - 系统配置
- /data/conf/db.php - 数据库配置
- /data/conf/config.php - 运行时配置
6.3 核心控制器
- /application/Portal/Controller/IndexController.class.php - 首页、房间入口
- /application/Portal/Controller/HomeController.class.php - 会员中心、互助订单
- /application/Portal/Controller/UserController.class.php - 用户管理、推荐系统
- /application/Admin/Controller/MainController.class.php - 后台管理
6.4 核心模型
- /application/Portal/Model/UserModel.class.php - 用户模型
- /application/Common/Controller/HomebaseController.class.php - 前台基类
- /application/Common/Controller/AdminbaseController.class.php - 后台基类
6.5 公共函数
- /application/Common/Common/function.php - 公共函数库
- /application/Common/Common/extend.php - 扩展函数
七、技术特点
7.1 框架特性
- 基于 ThinkCMF X2.2.0 开发
- ThinkPHP 3.x 核心
- MVC 三层架构
- 模板引擎:ThinkTemplate
- 数据库:MySQL PDO
7.2 安全机制
- 验证码验证
- 二级密码保护
- 超时自动封号
- IP 限制
- SQL 注入防护
7.3 性能优化
- 页面压缩输出
- 静态缓存
- URL 路由
- 多语言支持
八、主题皮肤
系统支持多套皮肤主题,位于 /skin/ 目录:
- default - 默认主题
- baihu - 白虎主题
- qinglong - 青龙主题
- zhuque - 朱雀主题
- xuanwu - 玄武主题
- qilin - 麒麟主题
- test - 测试主题
- dasheng - 大圣主题
九、第三方集成
9.1 微信集成
- 微信登录授权
- 微信 JS-SDK 分享
- 配置文件中的微信 appid 和 key
9.2 短信服务
- 手机验证码发送
- 绑定手机验证
9.3 UCenter
- 可选集成 UCenter 用户中心
- 单点登录支持
十、系统配置项
10.1 排单配置 (bonus 表)
- 排单金额范围
- 每日排单次数限制
- 打款时间限制
- 收款时间限制
- 推荐奖比例
- 管理奖比例
10.2 提款配置 (extract 表)
- 各钱包提款范围
- 提款倍数
- 提款周期限制
10.3 系统配置 (options 表)
- 网站名称
- SEO 设置
- 邮件配置
- CDN 配置
十一、开发规范
11.1 命名规范
- 控制器:XxxController.class.php
- 模型:XxxModel.class.php
- 视图:小写 + 下划线
11.2 路由规则
- G 参数:模块名
- M 参数:控制器名
- A 参数:方法名
11.3 模板路径
- 前台:/themes/{模板名}/{控制器}/{方法}.html
- 后台:/admin/themes/{模板名}/{控制器}/{方法}.html
十二、总结
这是一个基于 ThinkCMF 开发的游戏 + 互助金融复合型系统,主要特点:
- 游戏模块:支持多种在线棋牌游戏,房卡模式运营
- 互助模块:完整的 P2P 互助排单系统,包含订单匹配、打款确认、收款确认、超时处理等完整流程
- 分销系统:多层级推荐奖励,自动升级机制
- 钱包系统:多钱包管理,支持不同类型的资金流转
- 权限管理:完整的 RBAC 权限控制
