• 快递100订阅物流信息开发流程


    快递100订阅物流信息开发流程
    java项目在商城开发项目中,卖家发货后,需对物流信息进行跟踪,以便卖家及买家及时获取物流信息
    使用表格:
    express ——快递公司记录表(记录快递公司代码及公司名称)
    express_order_mapping ——快递订单映射表(记录所发快递信息,根据获取到的快递信息更新快递信息)
    express_status ——快递状态表
    goods_order2_oplog ——订单状态日志表
    获取快递信息流程如下:

    1、卖家发送快递时,获取快递单号等信息传入 express_order_maping 表中
    order_id :内部订单号
    ex_company_code :快递公司代码
    express_no :快递单号
    city_from :发货城市
    city_to :收货城市

    2、扫描器扫描express_order_maping,向快递100发送订阅请求
    1)扫描器通过扫描获取需要订阅至快递100且未扫描的快递对象
    2)将扫描到的对象向快递100订阅
    3)根据订阅成功与失败分别更改express_order_maping 中status值

    3、将快递100回调的对象存入express_status
    1)在订阅时,通过url向回调对象传参:mappingId,
    String mURL = CALLBACKURL + "?mappingid=" + expressOrderMapping.getId();
    2)将订阅后,快递100返回的json对象进行解析,获取相关参数
    3)将mappingId及订阅后获取的参数存入express_status表中

    4、扫描器扫描express_status表,更新express_order_mapping表
    1)扫描器通过扫描,获取express_status表中,数据同步处理器未扫描的对象
    2)将获取到的对象的相关参数存入express_order_mapping表中,因express_order_mapping中mappingid是主键,
    是对其mappingId对应的对象进行更新
    3)更改express_status表中p_status状态

    5、在订单完成以下操作时:订单支付成功、商家完成发货、消费者签收货物、
    消费者请求取消订单、商家请求取消订单、订单已取消同步更新goods_order2_oplog表中的op_type

    6、通过goodsId查询express_order_maping表,获取详细物流信息;在express表中对应获取快递公司名称
    通过goodsId查询goods_order2_oplog表,获取订单状态。

  • 相关阅读:
    关系数据库设计一般方法 范式及完整性
    left join, right join , inner join, join, union的意义
    mysql 事务类型表的用法
    Java中静态变量与非静态变量的区别
    JSP生命周期
    Java&Tomcat环境变量配置
    JSP两种声明变量的区别
    一个web页面的访问的过程
    Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 解决
    IDEA:修改JAVA文件自动引入import.*包
  • 原文地址:https://www.cnblogs.com/qqzhulu/p/10432798.html
Copyright © 2020-2023  润新知