NEMPOI
URL: https://nempoi.zephyrian.site
技术栈
- Python 3.12 + FastAPI + uvicorn
- 前端 Vue 3 + Vite + Element Plus + Leaflet
- PostgreSQL 17 库
nem_poi(SSO Phase A1.2 后 user 数据迁到 shared_auth) - PM2 (interpreter:none),端口 :3100
- 高德 GCJ-02 tile(无 key)+ NEM API 反向代理
核心流程
客户登录 → 录入 POI(名称 + 联系手机 + 地图选位 + 图片说明)
→ 后端写 nem_poi.pois(status=pending)
↓
运营批量同步 → 调 NEM /createPoi + /updatePoi(用 per-admin token)
→ status=imported
→ 同步状态显示(已同步 / 待同步 / 同步失败)用户路径
- 客户:直接打开
nempoi.zephyrian.site,用手机号 + 密码登录,简化打点流程 - 运营 / 超管:门户登录 → 跳 NEMPOI tile,管理客户、批量同步
per-admin NEM token
每个运营持有自己的 NEM 凭据(shared_auth.users.nempoi_nem_token)。客户的 POI 同步时,后端按 organization.created_by_user_id → 找到那个运营的 token → 用其调 NEM。
NEM 上的操作记录因此对应到具体运营本人,而不是统一的超管账号。
部署
bash
ssh root@113.249.107.92
cd /opt/nem-poi
git pull && bash scripts/build.sh && pm2 reload nem-poi角色
| 角色 | 说明 |
|---|---|
| superadmin | 超管 |
| admin | 运营,管自己创建的客户 |
| customer | 客户,只看自己 organization 下的 POI |