Logan.Li 4ae318335c feat: 完成 opsx-licence 许可证管理平台全栈实现
基于 opsx-web-lite 框架(Go+Gin+Vue3+Element Plus)构建许可证管理服务器,
业务域参考 Licence 服务器 Web 版。

【后端 - 4层架构】
- 认证:单 Admin 表 + JWT(HS256)
- 核心授权域:Product / Customer / License / Activation
  · License 生成/验证/激活/机器绑定/心跳/续期/吊销
  · 客户端契约接口:/api/v1/license/{verify,activate,deactivate,heartbeat}
- 定价订单:Plan / Order / 支付网关配置
- 防重复购买:CustomerEntitlement + 幂等支付 webhook + 手动发放
- 分析审计:Dashboard 统计 / Analytics / AuditLog / Setting 管理

【前端】
- Dashboard(ECharts 图表)、产品、客户、License、计划、订单、权益、日志、设置
- 9 个完整 CRUD 业务页面 + 登录/布局

【部署】
- SQLite + 单二进制(//go:embed 嵌入前端)
- 开发:./run.sh start(前端5181/后端9001)
- 生产:./run.sh build && ./run.sh binary start
- 默认账号:admin/admin

Author: Logan.Li
2026-08-07 15:02:00 +08:00

opsx-licence

许可证(License)管理服务器 Web 版 —— 基于 Go (Gin) + Vue 3 的单体全栈应用。

项目简介

opsx-licence 是一个统一的授权验证与管理服务,提供许可证的生成、验证、激活、机器绑定、心跳等核心能力,并支持产品定价、订单购买、防重复购买与支付回调。

技术栈与工程结构参考 opsx-web-lite,业务领域参考 Licence 服务器 Web版。

技术栈

后端

  • 语言/框架:Go 1.24 + Gin
  • ORM:GORM(默认 SQLite,支持 MySQL / PostgreSQL)
  • 认证:JWT(HS256)+ bcrypt
  • 架构:4 层分层(controller → service → dto → model),按业务域分包

前端

  • 框架:Vue 3.4 + Vite
  • UI:Element Plus
  • 状态/路由:Pinia + Vue Router 4
  • 图表:ECharts

部署

  • 单二进制:前端通过 //go:embed 打包进 Go 二进制,一个文件即可部署

快速开始

环境要求

  • Go >= 1.24
  • Node.js >= 20
  • CGO(SQLite 驱动需要,macOS 自带 gcc)

一键启动(开发模式)

cp .env.example .env
./run.sh start

构建单二进制

./run.sh build
./run.sh binary start

常用命令

命令 说明
make dev / ./run.sh start 启动前后端开发服务
make build / ./run.sh build 构建嵌入前端的单二进制
./run.sh stop 停止服务
./run.sh status 查看服务状态
make clean 清理构建产物

项目结构

opsx-licence/
├── backend/                 # Go 后端
│   ├── main.go              # 入口
│   ├── embed.go             # 前端嵌入
│   ├── config/              # 配置
│   ├── database/            # 数据库初始化 + 种子数据
│   ├── middleware/          # 中间件(auth / cors)
│   ├── router/              # 路由
│   ├── utils/               # 工具(jwt / password)
│   └── internal/            # 业务分层
│       ├── controller/      # HTTP 处理层
│       ├── service/         # 业务逻辑层
│       ├── dto/             # 请求/响应结构
│       └── model/           # 数据模型
├── frontend/                # Vue 前端
│   └── src/
│       ├── api/             # 接口封装
│       ├── stores/          # Pinia 状态
│       ├── router/          # 路由
│       ├── layouts/         # 布局
│       └── views/           # 页面
├── Makefile
├── run.sh                   # 启动脚本
└── .env.example

业务域(规划)

模块 说明 状态
认证 (Auth) 管理员登录、JWT ✅
核心授权 产品 / 客户 / License / 激活 🚧 规划中
定价订单 Plan / Order / 支付网关 🚧 规划中
防重复购买 客户权益 / 幂等回调 🚧 规划中
分析审计 Dashboard / Analytics / AuditLog 🚧 规划中

作者

Logan.Li

S
Description
No description provided
Readme
503 KiB
0 Stars 0 Watchers 0 Forks
Languages
Go 63.4%
Vue 25.5%
JavaScript 8.2%
Shell 2.1%
Makefile 0.4%
Other 0.3%