移动商城、E站、智能询价与机器人
模块职责
移动商城模块承接服务站和修理厂移动端场景,包括 E站商城、E站维修、E站活动、E站 APP、微仓补货、马上送、智能询价、AI 机器人报价和 IM 会话。
主要入口
- 移动商城控制器:
application/controllers/moveMall - 内部移动商城 API:
application/controllers/inner/moveMall - E站/小程序订单入口:
application/Services/SaOrders/SaOrderSer.php - App API 映射:
application/config/appapis.php - 机器人测试入口:
application/controllers/RobotV2Test.php
关键 Service
application/Services/MoveMall/MoveMallGoodsSer.php:移动商城商品。application/Services/MoveMall/MoveSupplySer.php:补货单。application/Services/MoveMall/MoveReOdSer.php:移动退货单。application/Services/MoveMall/SmartInquirySer.php:智能询价。application/Services/MoveMall/RobotSer.php:机器人主服务。application/Services/MoveMall/RobotOrderSer.php:机器人订单。application/Services/MoveMall/RobotQuoteConfigSer.php:机器人报价配置。application/Services/MoveMall/RobotV2:新版机器人会话、查询、后处理。application/Services/MoveMall/BranchStoreOrderSplitSer.php:分仓拆单。application/Services/SaOrders/SaOrderSer.php:E站订单落站管家销售单。
关键模型
- 移动商城:
application/models/moveMall/MoveMainModel.php - 补货:
MoveSupplyModel.php、MoveSupplyInfoModel.php - 退货:
MoveReOrderModel.php、MoveReOrderInfoModel.php - 会话:
ConversationModel.php、ConversationRecordModel.php、PreConversationModel.php - 关键词:
KeywordModel.php、PositionKeywordModel.php、NoCarWordModel.php - 用户:
MmUserModel.php
E站订单场景
场景定义在 application/KzData/Enums/MoveMallEnums.php:
move_send:E站维修,微仓马上送。e_shop:E站商城。e_activity:E站活动。e_robot:E站机器人。e_app_im:E站 APP IM 订单。e_app_shop:E站 APP 商城订单。e_app_activity:E站 APP 活动单。
支付方式映射:
CHARGE:挂账。WEXPAY:微信支付。UnionPay:在 DGJ 侧也映射为微信支付。
E站订单落地销售单
E站/APP/机器人传入订单
-> SaOrderSer::saCreate
-> 根据 order_scene 和 payMode 判断 sourceType
-> 组装销售主单和明细
-> 挂账单 is_pay = 0,微信/银联 is_pay = 1
-> 需要时创建出库单和库存事件
-> MqSer / SyncOrderSer 通知 SAAS 或下游
sourceType 的转换是核心:
- E站商城挂账 ->
ORDER_SOURCE_TYPE_APPLET_CHARGE - E站商城微信 ->
ORDER_SOURCE_TYPE_APPLET - E站维修挂账 ->
ORDER_SOURCE_TYPE_MOVE_SEND - E站维修微信 ->
ORDER_SOURCE_TYPE_MOVE_SEND_WX - E站活动 ->
ORDER_SOURCE_TYPE_ACT - AI助手订单 ->
ORDER_SOURCE_TYPE_ROBOT - E站 APP IM / 商城 / 活动分别进入对应 APP sourceType
补货流程
补货状态定义在 MoveMallEnums.php:
0待出库。1待派送。2派送中。3待上架。4已上架。5已取消。
流程:
修理厂/服务站发起补货
-> MoveSupplySer 创建补货单
-> 出库后进入待派送
-> 配送中
-> 确认到货后待上架
-> 上架完成后库存口径可用
移动退货流程
移动退货状态:
1已退货。2部分上架。3已上架。
流程:
移动端发起退货
-> MoveReOdSer 创建退货单
-> 商品退回并出库/入库
-> 部分或全部上架
-> 更新库存和业务状态
智能询价与机器人
机器人 V2 目录结构:
Conversation:不同来源的会话上下文,如 API、微信、腾讯 IM。Services/Query:按业务类型查询商品,如易损件、保养件、蓄电池、无车型关键词。PostProcessor:结果后处理,如排序、选项内容、最小用量、仓储细节。
典型流程:
用户输入车型/VIN/关键词/图片
-> ConversationManager 识别会话来源和上下文
-> QueryDispatcher 选择查询服务
-> 物料、库存、价格、适配车型查询
-> PostProcessor 排序和补充展示字段
-> RobotOrderSer 可把报价转订单
与其他模块的关系
- 销售:E站订单最终会转成销售单或销售出库。
- 库存:马上送、补货、机器人报价都依赖实时库存和服务站仓库口径。
- 商品:智能询价强依赖商品分类、车型、品牌、关键词。
- MQ:E站订单、出库、微信订单、报价、库存事件会推送到 SAAS 或 APP。
- 客户:修理厂、服务站、移动用户绑定影响下单和价格。
排查建议
- E站订单状态不对:查
order_scene、payMode、SaOrderSer::saOrderMainFields()。 - 机器人查不到商品:查关键词、车型/VIN 解析、物料状态、ES/缓存。
- 移动端显示有库存但下单失败:确认库存是服务站仓、微仓、供给仓还是活动仓口径。
- 下游 SAAS 没收到状态:查
MqSer::sendWechatOrderToSaas、sendOutBoundToSaas、sendInvoiceToSass。