ledi偏远邮编比较

一、参数
1. 用户输入
logisticsId:服务商ID
logisticsSupplierId:派送商ID
countryCode:国家二字码
postCodeStart:邮编开始
postCodeEnd:邮编结束
2. 数据库存储字段
prefix:前缀
start:开始
end:结束

二、SQL过程
1. 通过logisticsId、logisticsSupplierId、countryCode进行一次过滤
2. 筛选postCodeStart以prefix开始 或者 prefix全部为0
3. (postCodeStart左去0长度 >= prefix+start左去0长度 AND postCodeStart左去0 >= prefix+start左去0(左补0长度为”postCodeStart左去0″长度) AND
postCodeStart左去0长度 <= prefix+end左去0长度 AND postCodeStart左去0(左补0长度为”prefix+end左去0″长度) <= prefix+end左去0)
OR
(postCodeStart左去0长度 <= prefix+start左去0长度 AND postCodeStart左去0(左补0长度为”prefix+start左去0″长度) <= prefix+start左去0 AND postCodeEnd >= prefix+end)
OR
(postCodeEnd >= prefix+start AND postCodeEnd <= prefix+end)
4. 筛选close=0、deleted=0进行过滤

 

 

 

 

ledi对接17feia思路

整体思路类似镖局

 

追踪:

如果ledi的服务商没有物流系统

  1. 选择了平台内置的派送商,直接调用label-ex查询物流信息【需要手动加上入口、出库等追踪信息】
  2. 没选中平台内置的,显示官网供查询

如果ledi的服务商有物流系统,配置了追踪接口

  1. 直接调用接口查询物流信息

 

 

## ledi对接17feia

1、2、3步是一气呵成的

1. ledi通知17feia有新订单
url:http://api.17feia.com/eship-api/v1/acceptLediRequest【17feia提供】
method:post
postBody:
{
“appId”: “”,  【供17feia回调鉴权用的】
“appSecret”: “”

“appKey”: “”,【调用17feia,17feia鉴权的】
“appToken”: “”
}

response:
{
“flag” : true
“msg” : “success”
}

2. 查询ledi服务商的新订单【17feia查询后在自己系统下单,将服务商的appId和appSecret保存在订单中】
url:http://api.ledi.com/platform/api/v1/orders/newlist
method: post
postBody:
{
“appId”: “”, 【来自通知url传过来的参数】
“appSecret”: “”
}

response:
{
total:1
rows: [
{
…【每个订单的信息】
}
{

}
]
}

3. 17feia下单成功通知ledi
url:http://api.ledi.com/platform/api/v1/orders/shipment_success
method: post
postBody:
{
“appId”: “”, 【来自通知url传过来的参数】
“appSecret”: “”,
“insideNumber” : “” 【ledi的内单号,查询新订单的时候返回的参考号】

“logisticsOrderNumber” : “” 【17feia内单号】

“logisticsOrderPdfUrl” : “” 【17feia内单标签url】
}

response:
{
“flag” : true
“msg” : “success”
}

4. 17feia回传重量给ledi
url:http://api.ledi.com/platform/api/v1/orders/weight
method: post
postBody:
{
“appId”: “”, 【来自订单】
“appSecret”: “”,
“insideNumber” : “”, 【ledi的内单号,17feia的参考号】
“boxs” : [
{
weight: 1, 【单位kg】
length: 20, 【单位cm】
width: 20,
height: 10
},
{

}
]
}

response:
{
“flag” : true
“msg” : “success”
}

response:
{
“flag” : false,
“msg” : “error”,
“obj” : [
{

},
{

}
]
}

5. 17feia回传派送单号,url
url:http://api.ledi.com/platform/api/v1/orders/transport
method:post
postBody:
{
“appId”: “”, 【来自订单】
“appSecret”: “”,
“insideNumber” : “”, 【ledi的内单号,17feia的参考号】
“deliveryNumber” : “”, 【派送单号】
“deliveryPdfUrl” : “”, 【派送标签地址】
}

response:
{
“flag” : true
“msg” : “success”
}

6. 17feia订单发货,签收,回传给状态ledi
url:http://api.ledi.com/platform/api/v1/orders/status
method:post
postBody:
{
“appId”: “”, 【来自订单】
“appSecret”: “”,
“insideNumber” : “”, 【ledi的内单号,17feia的参考号】
“status” : “DELIVERED”, 【更新为已发货DELIVERED,已签收COMPLETED,国内退货DOMESTIC_RETURN,已取消CANCELED】修改状态是有条件的,不能随便修改
}

response:
{
“flag” : true
“msg” : “success”
}

7. ledi追踪17feia信息
url:http://api.17feia.com/eship-api/v1/tracking?orderNo=Feiash1700000001yq【17feia提供】
method:get

response:
{
“flag” : true
“msg” : “success”
rows: [
{
“createTime” : “2019-03-21 17:05:09”, 【界面显示】
“status” : “IN_TRANSIT”, 【状态值,根据状态值,可以画流程】
“statusDesc” : “in transit”, 【界面显示】
“location” : “Germany Neuenstein”, 【界面显示】
“description” : “The parcel has reached the parcel center and was sorted manually.”, 【界面显示】
},
{

}
]
}

status:
TAKE_DELIVERY(“仓库收货”),
DELIVERED(“已出库”),
TAKE_OFF(“飞机起飞”),
LANDING(“飞机落地”),
CLEARANCE(“清关中”),
IN_TRANSIT(“运输途中”),
WAIT_TO_PICKUP(“到达待取”),
DELIVERY_FAILED(“投递失败”),
SIGNING_SUCCESS(“成功签收”),
POSSIBLE_ABNORMALITY(“可能异常”),
LONG_TRANSPORT(“运输过久”),
FOREIGN_RETURN(“国外退件”),
LOST(“包裹丢失”),
TRACKING_ENDED(“跟踪结束”)

 

时效工具-时效分析、查询思路

时间点说明:
1. 取货扫描时间【APP】:司机取货时扫描任何一个订单,确认时间;操作在收货时,将今天当前客户所有收货的订单的扫描时间改为一样的【job】;
2. 货物入库时间:操作验货时间
3. 货物出库时间【APP】:出库短驳公司司机扫描主单
4. 报关行传送带时间【APP】:报关行扫描主单
5. 航司货站时间【APP】:机场短驳公司扫描主单
6. 航司放行时间【APP】:报关行扫描主单
表:
1. 修改表:orde_order_timeline【注意表数据的同步】
类型(17feia、eship等)、订单id、订单状态【根据时间确定】、主单id、订单号、派送单号、主单号、出发地、目的地、派送商、派送供应商id、派送商供应商名称、产品id、产品名称、客户id、销售id、分公司id、分公司名称、组织id、组织名称
下单时间、取货扫描时间、货物入库时间、货物出库时间、到达报关传送带时间、到达航空货站时间、航司放行时间、飞机起飞时间、飞机落地时间、航司发出理货通知时间、代理提货时间、清关完成时间、代理转出时间【主单字段】、开始派送商时间、客户签收时间
a) 17feia下单时,发送jms消息,接收消息添加数据
b) 主单出库时,更新订单数据
2. 添加主单操作表:avia_aviation_order_timeline
类型(17feia、eship等)、主单id、主单号、出库短驳公司id、出库短驳公司名称、机场短驳公司id、机场短驳公司名称、航空公司id、航空公司名称、报关公司id、报关公司名称、清关公司id、清关公司名称、分公司id、分公司名称、组织id、组织名称、航班号
货物出库时间、出库操作人、到达报关行传送带时间、报关操作人、到达航司货站时间、航司操作人、航司放行时间、航司放行人、飞机起飞时间、飞机落地时间、航司发出理货完毕时间、代理提货时间、清关完成时间、清关完成人、代理转出时间、代理转出人
a) 17feia添加主单时,发送jms消息,接收消息添加主单
b) 主单出库时,更新主单信息;
3. 17feia数据库添加:app登录用户与各公司的关联关系:syst_company_user
公司id、用户id、类型(取货司机、出库短驳、机场短驳、报关行、清关公司、代理商)
a) 在17feia设置界面配置好,用户在app登录时,根据类型判断可以做的操作,根据公司id可以查询数据(公司id为空的用用户id查询)
b) 添加新的角色:时效APP;该角色用户登录后可以进入时效系统的Web页面
3. 使用ledi的author鉴权,添加多个角色,例如:时效web、取货司机、出库短驳、机场短驳、报关行、清关公司、代理商
4. 在时效web配置账号关系:acct_company_user
     用户id、微信账号、公司名称等
5. 主单追踪信息表:avia_aviation_order_tracking
主单id、主单号、状态、航站、航班号、到达时间、状态描述
数据流:
  
   
航班数据爬取链接:
名称 备注 主单号
卡塔尔(157)
http://www.qrcargo.com/trackshipment?docNumber=00567991&docType=MAWB&docPrefix=157
界面查询一直验证码错误 157-42583962
东航(112)
http://www.eal-ceair.com/index.html
OK 112-50391036
韩亚(988)
https://www.asianacargo.com/tracking/viewTraceAirWaybill.do
OK,可查询 988-89148043
大韩(180)
http://cargo.koreanair.com/eng/main/iMain.jsp
OK,可查询  180-54364516
长荣(695)
http://www.brcargo.com/ec_web/Default.aspx
17feia暂未使用 695-10124704
国泰(160)
http://www.cathaypacificcargo.com/
OK,可查询,很久未用 160-48582645
3V(756)
http://www.aslairlines.be/
OK,可查询 756-69214736
芬兰(105)
https://prdcgoay.mercator.com/skychain/app?service=page/nwp:Trackshipmt
OK,可查询,很久未用 105-70369821
全日空(205)
http://www.anacargo.jp/en/int/
OK,可查询 205-64336031
南航(784)
http://tang.cs-air.com/EN/WebFace/Tang.WebFace.Cargo/AgentAwbBrower.aspx
OK,可查询 784-11330922
菲律宾(079)
https://www.track-trace.com/aircargo
OK,可查询,很久未用 079-45960353
国航(999)
http://www.airchinacargo.com/en/search_order.php
OK,可查询,有验证码 999-53773720
新航(618)
http://www.siacargo.com/
OK,可查询 618-62081493
法航(057)
https://www.skyteam.com/en/cargo/cargo-results
17feia暂未使用 057-98774550
深圳
https://www.track-trace.com/aircargo
主单号是什么?
例如东航(主单时间确定:起飞——落地——理货完毕——代理提取):
登录处理流程: