悦递安国际物流系统
Radair Global Logistics OS v4.0
⚡ Mock 模式(未配置 Supabase)
⚠ 数据库连接失败,当前为离线模式
悦递安物流
实时同步
主导航
总览
运营
空运管理
海运管理
国际专线 0
📋 订舱 Booking
货物追踪
报关单据
财务
发票管理 0
财务对账 0
利润分析
多币种汇率
客户
客户 CRM
仓库
仓库管理 0
系统
用户权限
新建订单
?
加载中...
—
总览
通知中心
模块分布
待办事项
重点订单
单号类型客户路线ETA发票状态
空运订单
AWB主单号客户航线货物计费重收入成本毛利毛利率发票状态追踪
提单列表 (B/L)
提单号客户船名/航次装港→卸港ETA收入毛利率发票状态追踪
专线订单
单号客户路线货物重量收入毛利毛利率业务状态追踪
货物追踪查询
快捷: AWB-9841 BL-004421 EX-2293
📍 更新物流节点
📨 客户通知(一键发送)
📧 邮件正文
💬 微信消息
报关单列表
报关单号关联订单类型商品HS编码申报价值状态操作
新建报关申报单
发票列表
发票号关联订单客户开票日到期日含税金额已收状态操作
应收明细
发票号客户关联订单开票日到期日金额已收余额状态
应付账款
账单号供应商费用类型金额到期日状态操作
模块毛利率
成本结构
每票利润(按毛利率排序)
订单号类型客户收入成本毛利毛利率评级
实时汇率(来自数据库)
运费换算器
换算结果
—
客户列表
客户名称类型负责人本月营收信用额度已用使用率评级操作
新建客户
新建跟进记录
跟进动态
在库货物清单
收货单号收货日期客户关联订单货物名称数量重量(kg)库位状态照片操作
✅ 新建收货记录
基本信息
货物信息
📷 货物照片
点击上传 或 拖拽照片到此处
支持 JPG、PNG,可多选,建议拍摄:外箱全貌、标签、内部、损坏部位
请先在「新建收货」填写信息,点击「预览收货单」后在此显示
🔐 基于角色的访问控制 (RBAC) · Supabase RLS 行级安全 · 所有操作写入审计日志
⚠ 创建/删除用户需要配置 Service Role Key。 请打开 Supabase → Project Settings → API → service_role,复制后填入文件顶部的 SUPABASE_SERVICE_KEY。
系统用户列表
姓名邮箱账号角色数据范围创建时间操作
创建新用户
📋 运营操作员:只能看到自己创建/负责的订单和客户,其他人的数据完全隔离。
创建成功后,账号信息将显示在下方,请手动告知对方。
✅ 用户创建成功!请告知对方以下账号信息:
邮箱:
密码:
角色:
网址:https://opac.radairexpress.com
模块访问权限
功能模块管理员运营财务
总览仪表盘✅ 全部✅ 自己✅ 全部
空运/海运/专线✅ 全部✅ 自己👁 只读
货物追踪✅✅✅
报关单据✅✅ 自己❌
发票管理✅❌✅
财务对账✅❌✅
利润分析✅❌✅
多币种汇率✅❌✅
客户 CRM✅ 全部✅ 自己✅ 全部
用户权限管理✅❌❌
数据范围 (RLS) 全部数据 仅本人数据 全部财务
角色说明
🔑 系统管理员 (Admin)
查看全部数据,管理用户权限,访问所有模块。适合公司负责人/IT管理员。
✈ 运营操作员 (Ops)
只能看到自己负责的订单和客户,数据完全隔离。适合业务员/操作员。
💰 财务人员 (Finance)
查看全部财务数据(发票/对账/利润),不可修改运营订单。适合财务/会计。
操作审计日志
时间操作员角色操作类型对象
🤖 AI 智能解析
输入货物信息,自动生成 Booking
📋 Booking Form
📤 Shipper · 发货人
📥 Consignee · 收货人
🛣 Route · 运输路线
📦 Cargo Details · 货物信息
⚙️ Services · 附加服务
📄 Booking Confirmation 预览
📋
填写左侧表单后点击「生成预览」
或使用 AI 智能解析
⚡ 快捷模板 — 一键填入常用航线
新建物流订单
10位标准HS编码
📇 客户信息(自动填充)
📞 — 📧 — 💳 信用额度 —
C
—
基本资料
信用信息
备注
联系人
发货人
收货人
新建跟进
.em-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1000;opacity:0;pointer-events:none;transition:opacity .25s;display:flex;align-items:center;justify-content:center;padding:20px;} .em-overlay.open{opacity:1;pointer-events:all;} .em-panel{background:var(--c0);border-radius:var(--r12);width:100%;max-width:860px;max-height:94vh;display:flex;flex-direction:column;box-shadow:0 32px 80px rgba(0,0,0,.25);transform:translateY(20px) scale(.97);opacity:0;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s;} .em-overlay.open .em-panel{transform:translateY(0) scale(1);opacity:1;} .em-hdr{padding:20px 28px 16px;border-bottom:1px solid var(--c3);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;} .em-hdr-title{font-size:16px;font-weight:700;} .em-hdr-sub{font-size:12px;color:var(--t3);margin-top:2px;} .em-close{width:32px;height:32px;border-radius:50%;border:none;background:var(--c2);cursor:pointer;font-size:16px;color:var(--t2);display:flex;align-items:center;justify-content:center;} .em-close:hover{background:var(--c3);} .em-body{display:flex;flex:1;overflow:hidden;} /* 左栏:设置 */ .em-left{width:260px;flex-shrink:0;border-right:1px solid var(--c3);padding:20px;overflow-y:auto;} .em-section{margin-bottom:20px;} .em-section-label{font-size:11px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.6px;margin-bottom:10px;} .em-field{margin-bottom:12px;} .em-field label{font-size:12px;color:var(--t2);display:block;margin-bottom:4px;font-weight:600;} .em-input{width:100%;padding:8px 10px;border:1.5px solid var(--c3);border-radius:var(--r6);font-size:13px;font-family:inherit;color:var(--t1);background:var(--c1);} .em-input:focus{outline:none;border-color:var(--air);} .em-textarea{width:100%;padding:8px 10px;border:1.5px solid var(--c3);border-radius:var(--r6);font-size:13px;font-family:inherit;color:var(--t1);background:var(--c1);resize:vertical;min-height:70px;} .em-textarea:focus{outline:none;border-color:var(--air);} .em-tpl-btn{display:block;width:100%;text-align:left;padding:9px 12px;border:1.5px solid var(--c3);border-radius:var(--r6);font-size:12px;font-weight:600;cursor:pointer;background:var(--c0);color:var(--t2);margin-bottom:6px;font-family:inherit;transition:all .13s;} .em-tpl-btn:hover{border-color:var(--air);color:var(--air);background:var(--air-l);} .em-tpl-btn.active{border-color:var(--air);color:var(--air);background:var(--air-l);} .em-tpl-btn .em-tpl-desc{font-size:10px;font-weight:400;color:var(--t3);display:block;margin-top:2px;} .em-check-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--c2);font-size:13px;cursor:pointer;} .em-check-row:last-child{border-bottom:none;} .em-check-row input{width:15px;height:15px;cursor:pointer;accent-color:var(--air);} /* 右栏:预览 */ .em-right{flex:1;display:flex;flex-direction:column;overflow:hidden;} .em-preview-hdr{padding:14px 20px;border-bottom:1px solid var(--c3);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;} .em-preview-hdr-label{font-size:12px;font-weight:700;color:var(--t2);} .em-lang-toggle{display:flex;border:1px solid var(--c3);border-radius:6px;overflow:hidden;} .em-lang-btn{padding:5px 12px;font-size:11px;font-weight:700;cursor:pointer;border:none;background:var(--c0);color:var(--t2);font-family:inherit;} .em-lang-btn.on{background:var(--t1);color:#fff;} .em-preview-body{flex:1;overflow-y:auto;padding:20px;} .em-preview-frame{background:#fff;border:1px solid var(--c3);border-radius:8px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;} .em-preview-header{background:#1A1A1A;padding:24px 28px;color:#fff;} .em-preview-logo{font-size:16px;font-weight:800;letter-spacing:-.3px;margin-bottom:2px;} .em-preview-tagline{font-size:11px;opacity:.6;} .em-preview-content{padding:28px;} .em-preview-greeting{font-size:15px;font-weight:700;color:#1A1A1A;margin-bottom:16px;} .em-preview-body-text{font-size:14px;color:#3A3A3A;line-height:1.8;margin-bottom:20px;} .em-preview-info-box{background:#F4F3F0;border-radius:8px;padding:16px 20px;margin-bottom:20px;} .em-preview-info-row{display:flex;padding:6px 0;border-bottom:1px solid #E2E1DD;font-size:13px;} .em-preview-info-row:last-child{border-bottom:none;} .em-preview-info-label{color:#5A5955;min-width:100px;font-weight:600;} .em-preview-info-value{color:#1A1A1A;font-weight:500;} .em-preview-track-btn{display:block;background:#1A1A1A;color:#fff;text-decoration:none;padding:13px 24px;border-radius:8px;font-size:14px;font-weight:700;text-align:center;margin:20px 0;} .em-preview-doc-list{margin-bottom:20px;} .em-preview-doc-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#F4F3F0;border-radius:6px;margin-bottom:6px;font-size:13px;color:#1A1A1A;} .em-preview-footer{background:#F4F3F0;padding:16px 28px;font-size:11px;color:#9A9895;line-height:1.7;border-top:1px solid #E2E1DD;} .em-footer-bar{padding:16px 20px;border-top:1px solid var(--c3);display:flex;gap:10px;flex-shrink:0;background:var(--c0);} .em-send-btn{flex:1;padding:12px;background:var(--air);color:#fff;border:none;border-radius:var(--r6);font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px;} .em-send-btn:hover{opacity:.9;} .em-copy-btn{padding:12px 18px;background:var(--c0);color:var(--t1);border:1.5px solid var(--c3);border-radius:var(--r6);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;} .em-copy-btn:hover{background:var(--c1);} .em-wechat-btn{padding:12px 18px;background:#07C160;color:#fff;border:none;border-radius:var(--r6);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;}
✉️ 发送客户邮件
—
邮件模板
收件人
附带单据
自定义内容
📧 邮件预览
订单详情
基本信息
货物信息
财务信息
提单 / 货运单据