认证与用户收敛到中心库,珠宝与原料两条业务线代码独立部署、只共享认证。所有仓库归入 gitlab.nexora 组,一份手机端代码按 pt_type 分流 xerp/serp。
3 张纯 HTML 卡片:仓库全景 · 认证流 · 域名路由。加起来当开发决策依据。
gitlab.nexora.restry.cn/nexora 组下 7 个仓库 · 三列 = 平台 / 珠宝 / 原料 · 徽章示部署状态。新增代码按此表定位放哪个仓库。platform.nexoraauthPlatformAdmin · 同一 CentralAuth · is_platform=1 标记 · 短路租户解析use CentralAuth · 调 authTenantUser / authPlatformAdmin · 不要自己再实现 bcryptCentralAuth::syncUser · 同时写中心库 users + 各租户库 erp_user
| 域名 | 当前生产反代 | 目标 (P·1 后) |
|---|---|---|
*.erp.nexora.restry.cn 珠宝 3 家 | nexora-erp-php:18101 ✓ | 不变 |
*.metal.nexora.restry.cn 原料 6 家 | nexora-erp-php:18101 (临时共用) | → nexora-metal-erp-php:18091 |
platform.nexora.restry.cn 平台超管 | 静态 SPA + /api/→18101 ✓ | 不变 |
admin.erp.nexora.restry.cn 兼容 | nexora-erp-php:18101 (platform 分支) | 保留 · 未来废弃 |
mall.metal.nexora.restry.cn 待定 · Ch·5 | 未起 | → nexora-metal-mall 独立容器 :18092 |
/home/claw/lobster-platform/caddy/Caddyfile · FRP 出口:40.162.94.187 · 加新子域三处都改:FRP custom_domains + Caddy block + 容器 listen
判据:跨线是同一概念(用户/认证)就统一;跨线是不同实现(进销存/贵金属)就分线。
| 端 | 内容 | 载体(仓库) | 状态 |
|---|---|---|---|
| 统一层 | 认证 · 用户 · 租户目录 · 平台超管 | nexora_platform 中心库 · CentralAuth | 已建 · 已验 |
| 珠宝网页 | PC admin (囍铺/龙凤/摆件) | nexora/nexora-erp-web | 已部署 |
| 珠宝后端 | 3 家一租户一库 · 137 手机端接口 | nexora/nexora-erp :18101 | 已合并 · 已验 |
| 原料网页 | PC admin · eperp/merp/serp 三子项目 | nexora/nexora-metal-erp-web | build 通过 |
| 原料后端 | 6 家共用 · aid 隔离 | nexora/nexora-metal-erp :18091 | 已独立 · 已验 |
| 手机端 | uniapp H5 · pt_type=1 xerp · pt_type=2 serp | nexora/nexora-app | 9/9 全绿 |
| 妈祖商城 | H5 商城 | nexora/nexora-metal-mall | 入库未起 |
| 妈祖小程序 | 微信小程序 | nexora/nexora-metal-miniprogram | 入库未起 |
| 平台超管前端 | platform.nexora.restry.cn 独立域名 · 12 租户表 · 5 导航 | nexora/nexora-platform-admin | 已部署 · 已验 |
六个阶段。每个阶段展开精确到分钟的执行事件(绿点=已完成 · 灰点=待做)。让后续会话读到当前进度不重复不遗漏。
nexora_platform · 193 users · 12 tenants · CentralAuth 类被两条 PHP 后端共用。nexora/nexora-platform-admin · 独立域名 platform.nexora.restry.cn · Caddy 反代 · CentralAuth 复用 nexora-erp:18101 · 5 导航 · 12 租户表 · 分线跳转。nexora-metal-mall + nexora-metal-miniprogram · 只做妈祖各一份 · 珠宝线不做。判据:本地部署通 · 商城 login/首页/1 个业务页 · 小程序真机预览。干活过程中发现但先不处理的事 · 攒着后面统一清 · 别让它们悄悄溜走。
nexora-metal-erp-web 里的 eperp / merp 子项目这两个子项目 title 都是"囍铺ERP" · 是从 xipugold/pyerp_web mirror 时误搬进来的珠宝残留。
珠宝 admin 已在 nexora-erp-web · 这俩在原料 repo 里是纯冗余 · 保留会持续误导后续开发者。删掉 + git commit 说明来龙去脉即可。
nexora-metal-erp 里有没有珠宝残留metal-erp 从老 pyerp_php mirror 过来后 · 剥离过一次 (commit faef50a · 61 files · modules/ymetal/myhw-shop/mall-sync/pos-mall-bridge 删掉)。
但当时只查了明显的 metal/mall 目录 · 没系统扫过"珠宝专属代码" (xipunum_ 硬编码/囍铺业务模块) 是否还在。审计一遍确保原料 repo 里没混珠宝逻辑。
nexora-erp 拆独立现在平台管理 API(/api/platform/tenants 等)寄生在珠宝 nexora-erp:18101 里。
平台层跟业务线是不同 concern · 应该独立后端 · 或者干脆做在 nexora-platform-admin 前端仓里(Node/Deno serverless) · 不应耦合任何业务 ERP。
nexora-metal-erp-web/serp07-11 20:48 完成:publicPath 从 /serp/ 改回 / · baseURL 从 /serp-api/ 改回 / · npm run build · dist 拷到 /srv/portal/nexora-metal-serp · Caddy *.metal.nexora root 从 nexora-erp-web 切到 nexora-metal-serp。
6 家原料 (darkgroup/pymetal/fjfl/qyxs/ftgf/qywh) 真机验证 · 全部登录进 #/home · title 莆阳ERP · 业务看板正常渲染。
xipunum_sys 表缺 aid 列调 /api/runData 报 SQLSTATE[42S22]: Column not found: 1054 Unknown column 'aid' in 'where clause'。
metal-erp 后端 getSys() 硬编码 ['aid','=',aid](app/common.php:567) · 但从老 myhw dump 迁的租户库表结构没这个列。修法 3 选一 · 参见 hermes 会话记录。会阻塞 T·4。
nexora-metal-mall(H5 商城 · repo 自带 PHP+DB) + nexora-metal-miniprogram(微信小程序) 都入库未起。
商城起 :18092 容器 · Caddy 挂 mall.metal.nexora · 小程序编译走微信开发者工具真机预览。