|
@@ -0,0 +1,34 @@
|
|
|
+---
|
|
|
+title: 1008031-充电柜
|
|
|
+date: 2023-04-05 21:21:23
|
|
|
+tags:
|
|
|
+---
|
|
|
+
|
|
|
+# 充电柜
|
|
|
+> 目前系统中充电柜业务共有两种: 充电柜 和新充电柜 对应的驱动均为100237, 业务分别为100803及1008031
|
|
|
+>
|
|
|
+> 目前100803仅粤万通使用,并且主板不再出货,目前现网现存100左右,且售后问题大致与1008031相同,以下售后为题将以1008031举例说明
|
|
|
+
|
|
|
+## 业务介绍
|
|
|
+### 流程图
|
|
|
+ ```mermaid
|
|
|
+ graph TD;
|
|
|
+ 用户扫码-->服务器下单-->主板开锁用户放入电池-->关闭柜锁开始充电-->充电结束进入占位-->结算
|
|
|
+ 关闭柜锁开始充电-->结算
|
|
|
+ 结算-->余额足够-->扣除余额结算订单-->订单完成
|
|
|
+ 结算-->余额不足-->等待支付-->用户支付-->订单完成
|
|
|
+
|
|
|
+ ```
|
|
|
+### 文字描述
|
|
|
+粤万通 充电柜 基本的业务流程可以描述为
|
|
|
+1. 扫码/刷卡 启动设备 此时调用 _open 函数,并创建相应的订单以及开锁密码 开锁密码在整个的充电过程中不能改变 用于设备离线时候直接从触控屏解锁
|
|
|
+2. 门锁打开的时候 等候用户下一步操作(放入电池、关闭门锁)
|
|
|
+3. 主板方检测到门锁关闭之后 上报门锁关闭信号 服务器接收到关锁信号之后 调用_charge 函数 ,注意此时仅仅充电不开锁 开启端口的充电
|
|
|
+4. 在整个充电的过程中 主板会不断地上报 该端口的充电数据 C0指令,其中 power 为瞬时功率 chargeTime 为累计充电时间 stayTime 为累计占位时间
|
|
|
+5. 在 到达最大充电时间 或者 主板检测电池充满 之后, 会上报充电结束的指令 C1,同时主板停止充电,开始进入 占位状态
|
|
|
+6. 需要注意的是,在充电柜业务流程中,停止充电并不意味着 流程结束,也不代表可以对其进行 费用结算
|
|
|
+7. 关于充电柜的业务结束一共有以下 3种情况:
|
|
|
+ 7.1 用户再次扫码,并点击停止充电按钮,此时触发 stop 函数,服务器通过 _stop 发起对主板的开锁,主板接收到之后 开锁并同时上报最后一次数据状态
|
|
|
+ 7.2 用户刷卡启动的设备,需要用户刷卡结束,用户第二次刷卡 后,主板上报刷卡请求充电指令,服务器接收到之后 通过 _stop 发起对于主板的开锁 同时上报最后一次充电状态
|
|
|
+ 7.3 用户直接在主板上选择密码开锁, 输入密码(开启充电时候下发的密码),主板接收到之后,无条件开锁,同时上报最后一次充电状态。一般用于设备离线的时候使用
|
|
|
+8. 用户以任何方式 结束充电柜业务之后,需要对其订单进行结算,并将整个过程中的费用记录到相应订单
|