需要各平台的key和secret,还需要开通物流详情或者物流轨迹的服务才行

This commit is contained in:
2025-07-23 15:26:27 +08:00
parent d6d75302f5
commit f0478a9f9f
4 changed files with 144 additions and 104 deletions

View File

@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.oa.utils.BestRouteQueryUtil;
import com.ruoyi.oa.utils.SfRouteQueryUtil;
import com.ruoyi.oa.utils.StoRouteQueryUtil;
import com.ruoyi.oa.utils.ZtoTrackQueryUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -19,6 +20,7 @@ import com.ruoyi.oa.mapper.OaExpressMapper;
import com.ruoyi.oa.service.IOaExpressService;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Collection;
@@ -162,7 +164,8 @@ public class OaExpressServiceImpl implements IOaExpressService {
oaExpressVo.setLastUpdateTime(oaExpressVo1.getAcceptTime());
oaExpressVo.setLastStatus(oaExpressVo1.getFirstStatusName());
}
}else if (expressType.equals("YD") && oaExpressVo.getStatus() == 1L) {
}
if (expressType.equals("YD") && oaExpressVo.getStatus() == 1L) {
// 韵达快递轨迹查询
String result = com.ruoyi.oa.utils.YdRouteQueryUtil.queryRoute(oaExpressVo.getExpressCode());
OaExpressVo ydVo = com.ruoyi.oa.utils.YdRouteQueryUtil.parseData(result);
@@ -170,7 +173,8 @@ public class OaExpressServiceImpl implements IOaExpressService {
oaExpressVo.setLastUpdateTime(ydVo.getLastUpdateTime());
oaExpressVo.setLastStatus(ydVo.getLastStatus());
}
} else if (expressType.equals("YT") && oaExpressVo.getStatus() == 1L) {
}
if (expressType.equals("YT") && oaExpressVo.getStatus() == 1L) {
// 圆通快递轨迹查询
String result = com.ruoyi.oa.utils.YtRouteQueryUtil.queryRoute(oaExpressVo.getExpressCode());
OaExpressVo ytVo = com.ruoyi.oa.utils.YtRouteQueryUtil.parseData(result);
@@ -178,9 +182,10 @@ public class OaExpressServiceImpl implements IOaExpressService {
oaExpressVo.setLastUpdateTime(ytVo.getLastUpdateTime());
oaExpressVo.setLastStatus(ytVo.getLastStatus());
}
} else if (expressType.equals("STO") && oaExpressVo.getStatus() == 1L) {
}
if (expressType.equals("STO") && oaExpressVo.getStatus() == 1L) {
// 申通快递轨迹查询
String result = com.ruoyi.oa.utils.StoRouteQueryUtil.queryRoute(oaExpressVo.getExpressCode());
String result = StoRouteQueryUtil.queryRoute(Collections.singletonList(oaExpressVo.getExpressCode()));
OaExpressVo stoVo = com.ruoyi.oa.utils.StoRouteQueryUtil.parseData(result);
if (stoVo != null) {
oaExpressVo.setLastUpdateTime(stoVo.getLastUpdateTime());