后台已升级到 {{(appBuildNew||'').toUpperCase()}}(当前页面还是 {{(appBuild||'').toUpperCase()}} 的旧界面),刷新后新功能才出现 立即刷新 稍后
{{portalInfo.party?.name || me.real_name}}
{{portalInfo.user_type==='customer'?'客户门户' :(portalInfo.user_type==='service'?'服务方门户':'供应商门户')}} · {{me.username}}
设置密码 退出
🏢 服务方 {{portalInfo.supplier_brand}} ☎ {{portalInfo.supplier_phone}}
{{rentEq.spec || '规格详询'}} | 押金 ¥{{rentEq.deposit}}(归还验收后退还)
选择租用方式 租用方式由厂家设定
{{m.label}}
¥{{m.price}}/{{m.unit_label}}
{{ m.mode==='day'?'按天付款':(m.mode==='month'?'按月付款':'按年付款') }}
当前单价 ¥{{leaseUnitPrice}}/{{leaseUnit}}
单子抬头是贵公司,电话以客户档案为准;填了不一致的号码会被自动更正并留痕。 现场联系人是别人时,请写在备注里。
已选租用方式{{leaseLabel}}
租金({{rentForm.qty}}{{leaseUnit}} × ¥{{leaseUnitPrice}})¥{{leaseRent}}
押金(归还后退还)¥{{rentEq.deposit||0}}
应付合计¥{{(Number(leaseRent)+Number(rentEq.deposit||0)).toFixed(2)}}
按天付款:确认后按日支付租金
按月付款:确认后按月支付租金
按年付款:确认后按年支付租金
请在厂家开放的方式中选择
待厂家转账 ¥{{ myShare.pending }} 已到账 ¥{{ myShare.settled }} 线下自收 ¥{{ myShare.offline }} 查询 新增下级用户
线下待确认收款:{{myOfflineTodo.count}} 单 / ¥{{myOfflineTodo.total}}
下级线下付款的订单,请在收款后逐单确认。
待处理异常:{{myFaults.length}} 单(钱不退,按未使用时长顺延给下级)
下级扫码付款后设备没通电或中途断电,会在扫码页自行上报,您核实后补时即可。
{{f.user_name||f.phone}} · {{f.equipment_name}} · {{f.fault_type_label}}  {{f.session_no}} {{f.created_at}}
说明:{{f.fault_note}}
已付 ¥{{f.pay_amount}} · 购买 {{f.minutes}} 分钟 · 已用 {{f.used_minutes}} 分钟
分钟 判定属实并补时 驳回(设备正常)
补时账本(可用 {{myBankActive}} 分钟)
我的设备设置(自主管理)
这里只放与您经营策略有关的开关;分钟价、押金、租用方式属厂家定价,如需调整请联系厂家。
收益明细
按比例加价 每分钟固定加价 基准分钟价基础上的加价,全额归您(可覆盖电费/人工/管理费) 线上(厂家代收后转您) 线下(您自行收取)
线上:下级扫码付款先进厂家账户,结束烘干后实时结算,由厂家统一转账给您。
线下:下级扫码后开机,费用由您当面收取,需在系统内确认收款。整租期内(按年/月/日)只支持线上。
手机扫码即可打开使用页(无需登录系统),可直接转发给下级用户。
{{myEqQrRow.scan_full}}
复制扫码地址
扫码后:
1. 输手机号 → 系统按您的上幅自动计价(下级)或识别为租用客户本人;
2. 付款即通电,页面显示倒计时、到期前自动提醒、可随时续费或关机;
3. 结束时按实际分钟结算,未用完的时间记入补时,下次自动抵扣。

{{decorFileRow.content}}

合计 ¥{{fmt2(shopCartTotal-(Number(shopUseRebate)||0))}} · 返点抵 ¥{{fmt2(shopUseRebate)}} · 促销省 ¥{{fmt2(shopPromoSaved)}} · {{shopCartQty}} 件 提交订单
填写邀请人的会员邀请码,绑定后不可更改。绑定成功即建立推荐关系。
{{t.icon}}{{t.name}} {{t.key==='cart'?shopCartQty:portalUnread}}
🤖
AI 客服服务中 📋 提需求
人工客服
AI 客服
{{m.content}}
我的需求单(AI 已分析并分派)
{{q.title}} {{q.stage_label}}
{{q.req_no}} · 跟进:{{q.assign_name||'待分配'}}{{q.assign_type==='ai'?'(AI员工)':''}}
发送 转人工
📎 {{f.filename}} ({{Math.round((f.size||0)/1024)}}KB) 移除
支持图片/PDF/Word/Excel/文本,单个 ≤600KB,最多 5 个

发货单 {{myShipSign.ship_no}} · 请上传签收单/回单照片完成签收确认。

取消 确认签收
取消 提交申请
运输在途 已到达
×
+ 上传
{{svcDeviceTip}}
实际工时(按约定单价计算)
小时 ¥ {{(supSvcFinishTotal||0).toFixed(2)}} {{supSvcFinishForm.hours||0}} 小时 × ¥{{supSvcFinishForm.rate}}(约定单价,不可改)
本次结算金额(按约定)
本单按约定结算 ¥ {{(supSvcFinishTotal||0).toFixed(2)}} 与现场工时无关,完工后由我方对账付款
现场费用(据实申报,作为我方结算依据)
小时 元/小时 元 元 ¥ {{(supSvcFinishTotal||0).toFixed(2)}} 工时费 {{(((supSvcFinishForm.hours||0)*(supSvcFinishForm.labor_rate||0))||0).toFixed(2)}} + 差旅 {{(supSvcFinishForm.travel_fee||0).toFixed(2)}} + 配件 {{(supSvcFinishForm.parts_fee||0).toFixed(2)}}
客户费用清单(现场实际向客户收取)*
逐条录入本次实际向客户收取的费用项,合计即客户实际发生费用; 我方与你方的结算(含按客户金额提成)以此为准,报价预估不作依据。质保内免费可留空。
删除
+ 增加费用项 清单合计 ¥ {{(supSvcFeeTotal||0).toFixed(2)}}
必传 · 客户现场签字后拍照上传,否则不能提交完工
必传 · 至少上传一张现场/完工照片,否则不能提交完工
☰ {{me.position}} · {{me.real_name}}
📷 扫码 修改密码 退出
⋯
待审核 已开通 已驳回 全部

员工申请 → 在此指定岗位/角色开通;供应商入驻申请 → 通过后自动建/绑供应商档案并开门户账号; 客户账号为自助开通,无需审核(也可在「客户账号」页签由我方直接开通)。

{{approveForm.real_name}}({{approveForm.mobile}}) {{approveForm.kind==='supplier'?'供应商门户账号':'员工账号'}} 摄像头扫码 扫码枪 / 手动输入

提示:不打开本对话框时,桌面端直接用扫码枪扫描也会自动识别(全局监听)。

想让人扫码直接打开登录页?填系统访问地址即可: 用当前系统地址({{qrBase()}})
当前是本机地址,手机扫码打不开;正式贴码请改成公网地址(如 http://47.118.48.29:8902)。

{{qrImgUrl? qrQrText : '输入后点生成'}}

✔ {{ qrForm.kind==='TEXT' ? '微信扫一扫可直接打开这个网址' : '微信扫一扫可直接打开产品页' }}:{{qrLink}}

当前为纯文本码,微信扫一扫只会显示文字、无法打开页面

生成 下载 PNG 打印标签
首次登录无需密码,请设置一个登录密码;以后用「手机号 + 密码」登录。

{{pwdErr}}

解锁后公司名称可被修改。历史单据已经打印的名称不会改变,为避免主体不一致, 请在确认确实需要更名后再操作,改完记得重新锁定。

🔒 需要开启「安全模式」才能定位

浏览器规定:只有 https 地址(或本机 localhost)才允许网页获取位置和调用相机。 你当前通过 {{curOrigin}} 访问,属于 http,所以「取当前位置」不会有任何反应—— 这不是系统坏了,是浏览器的硬性限制。

解决办法(推荐第 1 项):

  1. 点下面「改用 https 访问」:地址栏出现「不安全」提示时点「高级 → 继续前往」, 之后定位、拍照打卡、扫码都能用。
  2. 若公司已配 Nginx/caddy 证书,可直接点「我已开启 HTTPS(443)」,走标准端口免报警。
  3. 只想临时用一次:把手机开热点或用本机电脑的 localhost 打开, 浏览器视为安全来源,无需 https。
改用 https 访问({{httpsPort}}) 我已开启 HTTPS(443) 先不用