diff --git a/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java b/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java index cb08b1e63..ea2531cc6 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiSyncController.java @@ -150,7 +150,31 @@ public class UdiSyncController { productInfoFilterRequest.setNameCode(filterUdiInfoRequest.getNameCode()); productInfoFilterRequest.setPage(filterUdiInfoRequest.getPage()); productInfoFilterRequest.setLimit(filterUdiInfoRequest.getLimit()); - return spGetHttpClient.getSyncDi(productInfoFilterRequest); + try { + BaseResponse> udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest); + if (udiDlDeviceResponse.getCode() != 20000) { + return udiDlDeviceResponse; + } + if (CollUtil.isEmpty(udiDlDeviceResponse.getData().getList())) { + BaseResponse> listBaseResponse = asyncDiDlHelper.dlByDiRes(filterUdiInfoRequest.getNameCode()); + + if (listBaseResponse.getCode() == 20000) { + List productInfoEntityList = listBaseResponse.getData(); + if (CollUtil.isNotEmpty(productInfoEntityList)) { + productInfoService.insertProductInfos(productInfoEntityList); + udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest); + } else { + ResultVOUtils.error(500, "未查询到该产品DI"); + } + } else { + return listBaseResponse; + } + } + return udiDlDeviceResponse; + } catch (Exception e) { + e.printStackTrace(); + return ResultVOUtils.error(500, "连接UDI数据下载服务出错!"); + } } @AuthRuleAnnotation("")