package cn.lili.modules.logistics;
|
|
import cn.lili.modules.logistics.entity.dto.LabelOrderDTO;
|
import cn.lili.modules.logistics.entity.enums.LogisticsEnum;
|
import cn.lili.modules.order.order.entity.vo.OrderDetailVO;
|
import cn.lili.modules.system.entity.dos.Logistics;
|
import cn.lili.modules.system.entity.vo.Traces;
|
|
import java.util.Map;
|
|
/**
|
* 物流插件接口
|
*
|
* @author Bulbasaur
|
* @author Bulbasaur
|
* @since 2023-02-16
|
*/
|
public interface LogisticsPlugin {
|
|
|
/**
|
* 插件名称
|
*/
|
LogisticsEnum pluginName();
|
|
/**
|
* 实时查询快递
|
*
|
* @param logistics 物流公司
|
* @param expNo
|
* @param phone
|
* @return 物流信息
|
*/
|
Traces pollQuery(Logistics logistics, String expNo, String phone);
|
|
/**
|
* 实时查询地图轨迹
|
*
|
* @param logistics 物流公司
|
* @param expNo 单号
|
* @param phone 收件人手机号
|
* @param from 出发地信息,最小颗粒到市级,例如:广东省深圳市
|
* @param to 目的地信息,最小颗粒到市级,例如:广东省深圳市
|
* @return 物流信息
|
*/
|
Traces pollMapTrack(Logistics logistics, String expNo, String phone, String from, String to);
|
|
/**
|
* 电子面单打印
|
*
|
* @param labelOrderDTO 电子面单DTO
|
* @return
|
*/
|
Map labelOrder(LabelOrderDTO labelOrderDTO);
|
|
String createOrder(OrderDetailVO orderDetailVO);
|
|
}
|