元点SaaS

元点Admin

webman + Vue 3 + UniApp 分层框架:常驻内存运行,HTTP / 定时 / 队列 / WebSocket 一条命令拉起;全栈 CRUD 生成、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 映射、关联关系、访问器 / 修改器

不写查询逻辑

事务提交后投递队列
操作日志中间件 + Redis 队列消息通知短信 / 微信 / 站内信实时推送WebSocket 通道

主流程只写业务,副作用交给队列进程

php start.php start 同时拉起 HTTP、定时任务、队列与 WebSocket。操作日志和消息走 Redis 队列,不必再单独跑消费命令;事务回滚则副作用不会发出。

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

    public function register(array $data): int
    {
        return $this->runInTransaction(function () use ($data) {
            $id = $this->userRepository->create($data);
            // 提交后再投递队列,回滚不会发出副作用
            $this->afterCommit(fn () => Redis::send('welcome', ['user_id' => $id]));
            return $id;
        });
    }
}

php start.php start

一条命令拉起 HTTP / 定时 / 队列 / WebSocket

webman HTTP

常驻内存处理管理端 / 用户端请求

HTTP

scheduler

到点任务投递队列,单进程避免重复判定

定时

OperationLogConsumer

操作日志异步落库,请求不被拖慢

队列

WebSocketServer

实时通知、在线管理员、强制下线

WS

留在 Service

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

afterCommit 再投递

事务真正提交后再发队列;回滚不会发出副作用

丢给队列进程

日志、消息等耗时操作异步执行,请求秒回

全栈 CRUD 生成,reload 即生效

CLI 或管理后台选表即可生成分层代码。常驻进程下执行 php start.php reload,新路由立刻生效,不用重启整机。

选定数据表

已有表即可生成

make:crud

CLI 或可视化生成

分层落盘

前后端一次齐套

reload 生效

新路由立刻可用

php webman make:crud

一条命令生成 Model / Repository / Service / Controller / 路由 / 语言包 / Vue 列表与表单

可视化代码生成器

管理后台「开发工具 → 代码生成器」选表即可,产物与 CLI 同一套约定

常驻进程 reload

生成后执行 php start.php reload,不必重启 PHP-FPM 或整机

php webman make:crud
$ php webman 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
再执行 php start.php reload,新路由生效

一次生成全套分层文件

生成物走同一套 Controller → Service → Repository → Model 约定,可视化与 CLI 产物一致。

  • app/model/{Name}.php
  • app/repository/{Name}Repository.php
  • app/service/{Name}Service.php
  • app/adminapi/controller/{Name}Controller.php
  • admin/src/api 与列表 / 表单页
  • 路由与语言包
  • php start.php reload

php webman yd:update

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

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

新装完整 · 老库增量

全新安装走 Web 向导或 php webman install;老实例用 --dry-run 预览、--baseline 确立基线。Docker Compose 可一键拉起 webman / MySQL / Redis。

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

不是空模板,是完整地基

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

webman 常驻进程

php start.php start 同时拉起 HTTP、定时、队列与 WebSocket

RBAC + 数据范围

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

全栈代码生成器

php webman make:crud 生成 Model→Service→Controller→Vue

yd:update 升级

php webman yd:update 语义化增量 SQL,幂等可断点续跑

严格分层架构

Controller→Service→Repository→Model,进程单例不存请求态

Redis 队列

操作日志与消息异步消费,主流程不阻塞

WebSocket 实时通道

在线管理员、实时通知、强制下线

操作 / 登录日志

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

消息中心

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

支付网关

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

微信生态

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

余额 / 积分

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

文章内容

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

多驱动存储

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

OpenAPI 文档

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

安装 / Docker

Web 向导或 php webman install,Compose 一键起服务

一套后端,驱动全部终端

管理后台

Vue 3 + Element Plus

PC 官网

Nuxt 3 + Naive UI

移动多端

UniApp · 11+ 平台

小程序

微信 / 支付宝 / 百度 / QQ

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

webman 常驻进程、分层清晰、多端覆盖——把时间留给真正的业务。