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
This commit is contained in:
commit
4ae318335c
88 files changed
+10562
No files matched your search
@@ -0,0 +1,88 @@
|
||||
# opsx-licence - Makefile
|
||||
# 提供常用开发命令的快捷方式
|
||||
|
||||
.PHONY: help install dev build build-ui build-api build-binary clean status stop restart lint test
|
||||
|
||||
# 默认显示帮助
|
||||
help:
|
||||
@echo "opsx-licence - 可用命令:"
|
||||
@echo ""
|
||||
@echo " make install - 安装前后端依赖"
|
||||
@echo " make dev - 启动开发环境(前后端)"
|
||||
@echo " make build - 构建前后端(分开)"
|
||||
@echo " make build-ui - 仅构建前端"
|
||||
@echo " make build-api - 仅构建后端"
|
||||
@echo " make build-binary - 构建前端嵌入式单二进制 opsx-licence"
|
||||
@echo " make test - 运行后端测试"
|
||||
@echo " make lint - 运行代码检查"
|
||||
@echo " make clean - 清理构建产物和日志"
|
||||
@echo " make status - 查看服务状态"
|
||||
@echo " make stop - 停止所有服务"
|
||||
@echo " make restart - 重启所有服务"
|
||||
@echo " make logs - 查看实时日志"
|
||||
@echo ""
|
||||
|
||||
# 安装依赖
|
||||
install:
|
||||
@echo "📦 安装后端依赖..."
|
||||
cd backend && go mod download
|
||||
@echo "📦 安装前端依赖..."
|
||||
cd frontend && npm install
|
||||
|
||||
# 开发环境启动
|
||||
dev:
|
||||
./run.sh start
|
||||
|
||||
# 构建前端
|
||||
build-ui:
|
||||
@echo "🔨 构建前端..."
|
||||
cd frontend && npm run build
|
||||
|
||||
# 构建后端
|
||||
build-api:
|
||||
@echo "🔨 构建后端..."
|
||||
cd backend && go build -o server -ldflags="-s -w" .
|
||||
|
||||
# 构建所有(分开)
|
||||
build: build-ui build-api
|
||||
|
||||
# 构建前后端合一的部署二进制 // Logan.Li
|
||||
build-binary:
|
||||
./run.sh build
|
||||
|
||||
# 后端测试
|
||||
test:
|
||||
@echo "🧪 运行后端测试..."
|
||||
cd backend && go test -v -race -coverprofile=coverage.out ./...
|
||||
@echo "📊 后端覆盖率:"
|
||||
@cd backend && go tool cover -func=coverage.out | grep total
|
||||
|
||||
# 代码检查
|
||||
lint:
|
||||
@echo "🔍 检查后端代码..."
|
||||
cd backend && go vet ./...
|
||||
|
||||
# 清理
|
||||
clean:
|
||||
@echo "🧹 清理构建产物..."
|
||||
rm -f backend/server backend/backend
|
||||
rm -rf frontend/dist
|
||||
rm -f backend/logs/*.log frontend/logs/*.log logs/*.log
|
||||
rm -f opsx-licence
|
||||
@echo "🧹 清理完成"
|
||||
|
||||
# 查看状态
|
||||
status:
|
||||
./run.sh status
|
||||
|
||||
# 停止服务
|
||||
stop:
|
||||
./run.sh stop
|
||||
|
||||
# 重启服务
|
||||
restart:
|
||||
./run.sh restart
|
||||
|
||||
# 查看日志
|
||||
logs:
|
||||
@tail -f backend/logs/server.log frontend/logs/dev.log 2>/dev/null || echo "日志文件不存在"
|
||||
Reference in new issue
Block a user