元点SaaS

元点Admin

ThinkPHP 8 + Vue 3 + UniApp 分层框架:全栈 CRUD 生成与 AI 建模开箱即用,RBAC、支付、微信、消息一站到位。

元点Admin产品视觉

严格分层,副作用解耦

每个请求沿固定路径流动,各层职责单一、边界清晰;业务逻辑与日志、通知、缓存等副作用彻底分离,代码生成器也遵循同一套约定。

01

Controller

app/adminapi/controller

接收请求、参数校验、调用 Service、返回响应

不碰 Repository / Model

02

Service

app/service

业务逻辑编排、事务管理、触发事件

不写 Db::table() 与静态查询

03

Repository

app/repository

封装所有 ORM 查询,唯一数据访问出口

不掺业务逻辑

04

Model

app/model

ORM 映射、关联关系、访问器 / 修改器

不写查询逻辑

Service 触发事件
操作日志中间件 + 队列落库消息通知短信 / 微信 / 站内信缓存清理配置 / 字典失效

主流程只写业务,副作用交给监听器

Service 触发一个事件后立即返回,日志、通知、缓存清理等副作用由监听器接管。新增副作用只需在 app/event.php 追加一行监听器,业务代码一行不改。

app/service/UserService.php
class UserService extends Service
{
    protected UserRepository $userRepository;

    public function register(array $data): int
    {
        $id = $this->userRepository->create($data);
        // 只触发事件,副作用与业务彻底解耦
        $this->trigger('user.register', ['user_id' => $id]);
        return $id;
    }
}

$this->trigger('user.register')

事件在 app/event.php 中映射到监听器

WelcomeMessageListener

下发欢迎站内信 / 短信模板

事件监听

RegisterLogListener

写入注册审计日志

队列异步

CacheFlushListener

清理用户相关缓存

事件监听

留在 Service

必须成功、影响主流程的操作,如扣款、下单

放进 Listener

失败也不影响主流程的副作用,如日志、通知、缓存

丢给 Job 队列

耗时操作异步执行,主流程秒回不阻塞

AI 工程链:从建模到落盘有门禁

内置 MCP、YdSpec 建模与 AI 工作台,生成结果经七项检查硬门禁后才可写入项目——不是随便糊一段代码。

MCP 接入

读表结构与规范

YdSpec 建模

DSL 澄清与编译

七项检查

硬门禁全通过

安全落盘

applied 才写入

内置 MCP

Cursor / Claude Code 打开即用,直接读懂框架分层规范与真实表结构

YdSpec + AI 建模向导

结构化 DSL 澄清确认后编译 DDL 与全栈 CRUD stage 产物

AI 工作台 / yd:ai

自然语言描述需求,diff 预览确认后才写入,符合分层约定

php think make:crud
$ php think make:crud article

Generating full-stack files…

  • app/model/Article.phpModel
  • app/repository/ArticleRepository.phpRepository
  • app/service/ArticleService.phpService
  • app/adminapi/.../ArticleController.phpController
  • app/adminapi/validate/ArticleValidate.phpValidate
  • admin/src/views/article/index.vueVue
与分层约定一致,可视化 / CLI 均可

七项检查硬门禁

工件状态机 compiled → checked → applied,未全部通过不可落盘。

  • php_lint
  • required_files
  • layer_compliance
  • path_convention
  • forbidden_patterns
  • ddl_executability
  • route_loading

php think yd:update

database/updates/vX.Y.Z/ 语义化版本顺序执行未应用脚本,自动套用表前缀,已应用版本记入 system_upgrades,幂等可断点续跑。

语义化版本--dry-run--baseline幂等续跑

新装完整 · 老库增量

全新安装走 schema.sql / init.sql;老实例用 --dry-run 预览、--baseline 确立基线。发行版不再依赖 think-migration。

schema.sqlinit.sqlDocker 一键Web 安装向导

不是空模板,是完整地基

权限、支付、微信、消息、存储、日志、AI 建模与升级机制全部内置,新项目第一天就能写业务。

RBAC + 数据范围

角色 / 菜单 / 按钮级权限,叠加部门数据范围控制

全栈代码生成器

一条命令生成 Model→Service→Controller→Vue 全栈代码

YdSpec / AI 建模

DSL 澄清编译 + 管理端建模向导,产出受门禁约束

MCP 辅助开发

内置 MCP,Cursor / Claude Code 直接读规范与表结构

yd:update 升级

语义化增量 SQL,前缀自动改写,幂等可断点续跑

严格分层架构

Controller→Service→Repository→Model,约定清晰

事件 + 队列

副作用走监听器,慢操作进队列,主流程不阻塞

操作 / 登录日志

中间件自动记录,队列异步落库,可导出审计

消息中心

短信 / 微信 / 站内信模板,统一异步下发

支付网关

微信支付 + 支付宝,覆盖小程序 / H5 / APP 等场景

微信生态

公众号 OAuth、小程序、模板消息、自动回复

余额 / 积分

用户资产流水、充值与积分账本开箱可用

文章内容

分类、标签、富文本文章,支撑内容运营

多驱动存储

本地 / 阿里云 OSS / 腾讯 COS / 七牛,一键切换

OpenAPI 文档

Swagger 由代码自动生成,始终同步

安装 / Docker

Web 安装向导 + Docker Compose 一键起服务

一套后端,驱动全部终端

管理后台

Vue 3 + Element Plus

PC 官网

Nuxt 3 + Naive UI

移动多端

UniApp · 11+ 平台

小程序

微信 / 支付宝 / 百度 / QQ

用 元点Admin 少写 80% 的样板代码

分层清晰、AI 建模有门禁、多端覆盖——把时间留给真正的业务。