Files
iotlcm/README.md
T
MiFaZhan 2ed5dfa6a1 chore: 初始开源发布
iotlcm-app:小程序端 + 用户端服务。

- app/:uni-app 小程序前端(基于 unibest,MIT)
  - 微信 AppID → YOUR_WX_APPID,uni-app AppID → __UNI__YOURAPPID
  - 内网后端地址 → admin.iotlcm.example.com
  - 应用标题与 unibest 模板 README 重写(保留上游致谢与 MIT 声明)
- server/:GoFrame 用户端服务(基于 XiuAdmin,Apache-2.0)
  - module xiuadmin → git.5iot.com/iotlcm-public/iotlcm-app(360 文件)
  - 支付回调地址 → app.iotlcm.example.com,商户名与应用名泛化
  - 真实手机号 → 合法 11 位编造号(保留号段前 3 位 + 后 4 位)
  - 依赖号码尾部的断言同步更新
  - 补 server/LICENSE(Apache-2.0)
- 移除内部资产:CI 触发器
- 补根 README,LF 行尾 + .gitattributes

已知:TestSysDept_RefreshDeptAncestors 在源仓同一提交上同样失败,属既有缺陷。
2026-10-26 14:01:25 +08:00

108 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# iotlcm-app
iotLCM 物联网卡全生命周期管理平台的**小程序端 + 用户端服务**。
- `app/` —— uni-app 小程序前端(基于 [unibest](https://github.com/unibest-tech/unibest),MIT)
- `server/` —— 用户端 GoFrame 服务(基于 XiuAdmin 框架,Apache-2.0)
配套管理后台:[iotlcm-admin-svr](https://git.5iot.com/iotlcm-public/iotlcm-admin-svr) / [iotlcm-admin-ui](https://git.5iot.com/iotlcm-public/iotlcm-admin-ui)
## 特性
**小程序端**(`app/`)
- 公开查卡:输入卡号即可查状态、流量、到期时间
- 卡片详情与用量曲线(日/月分库)
- 一键诊断:拍卡号或手输,问题排查直达
- 账号体系:组织下个人账号、角色权限
**用户端服务**(`server/`)
- 小程序端的业务后端:卡映射、诊断、订单、余额、消息、工单
- 独立于管理后台的用户域数据与权限
- 对接上游通道完成真实查卡与诊断
## 技术栈
- 前端:uni-app + Vue 3 + TypeScript + Vite 5 + UnoCSS + wot-ui + z-paging
- 后端:Go 1.25 + GoFrame v2 + MySQL + Redis
## 快速开始
### 后端
```bash
cd server
go mod tidy
go run .
```
默认监听 `:8199`。
### 小程序前端
```bash
cd app
pnpm install
pnpm dev:mp-weixin # 微信小程序,产物用微信开发者工具打开 dist/dev/mp-weixin
```
## 配置
| 位置 | 说明 |
| --- | --- |
| `server/config/config.yaml` | 后端配置(**公开版凭据为占位符**) |
| `app/env/.env*` | 前端环境变量(**公开版 AppID 为占位符**) |
后端配置占位:
| 配置项 | 占位 |
| --- | --- |
| `database.default.link` | `mysql:${DB_USER}:${DB_PASSWORD}@tcp(${DB_HOST}:3306)` |
| `redis.default.address` / `pass` | `${REDIS_ADDR}` / `${REDIS_PASSWORD}` |
| `jwt.signingKey` | `${JWT_SIGNING_KEY}` |
前端配置占位:
| 变量 | 占位 |
| --- | --- |
| `VITE_WX_APPID` | `YOUR_WX_APPID` |
| `VITE_UNI_APPID` | `__UNI__YOURAPPID` |
| `VITE_MP_SERVER_BASEURL` | `https://admin.iotlcm.example.com/app/api/v1` |
## 目录结构
```text
iotlcm-app/
├── app/ # uni-app 小程序前端
│ ├── src/pages/ # 页面(首页、查卡、诊断、登录等)
│ ├── src/constant/ # 常量与路由定义
│ ├── env/ # 环境变量
│ └── src/static/logo.svg # 应用图标
└── server/ # GoFrame 用户端服务
├── api/ # API 契约(app / common / gen)
├── internal/
│ ├── logic/app/ # 用户端业务逻辑
│ ├── model/ consts/ # 模型与常量
│ └── utility/ # 工具(含启动 banner)
├── config/ # 配置
└── storage/data/ # 框架基座初始化数据
```
## 初始化数据
`server/storage/data/xiu_admin.sql` 是框架基座初始化数据(系统菜单、字典、角色、示例账号),是运行起点的必要输入。
> **数据库 schema 不随本仓发布** —— 生产库的完整 DDL 已过时,请按需自建表结构。
## 上游与许可
| 部分 | 上游 | 许可 |
| --- | --- | --- |
| `app/` | [unibest](https://github.com/unibest-tech/unibest) | MIT(见 [`app/LICENSE`](./app/LICENSE)) |
| `server/` | XiuAdmin(GoFrame 中后台框架基座) | Apache-2.0(见 [`server/LICENSE`](./server/LICENSE)) |
## License
根目录 [LICENSE](./LICENSE) 为 Apache-2.0。