diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java index 59b547f77..d4a55dfa4 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java @@ -110,6 +110,8 @@ public class IoCollectOriginService { collectOrderRequest.setBusType(documentTypeCode); downloadFactory.downloadOrder(collectOrderRequest); } + }else{ + return ResultVOUtils.error("未配置业务类型"); } return ResultVOUtils.success("下载成功"); } else { diff --git a/src/main/java/com/glxp/api/service/collect/down/ThrOrderDownload.java b/src/main/java/com/glxp/api/service/collect/down/ThrOrderDownload.java index ce5314892..882829abe 100644 --- a/src/main/java/com/glxp/api/service/collect/down/ThrOrderDownload.java +++ b/src/main/java/com/glxp/api/service/collect/down/ThrOrderDownload.java @@ -2,26 +2,21 @@ package com.glxp.api.service.collect.down; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.dao.basic.UdiRelevanceDao; -import com.glxp.api.dao.thrsys.ThrOrderDao; -import com.glxp.api.dao.thrsys.ThrOrderDetailDao; import com.glxp.api.entity.basic.UdiRelevanceEntity; import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrderBiz; -import com.glxp.api.entity.thrsys.ThrOrderDetailEntity; -import com.glxp.api.entity.thrsys.ThrOrderEntity; import com.glxp.api.http.ErpBasicClient; +import com.glxp.api.req.basic.GetSickPrescribeRequest; import com.glxp.api.req.collect.CollectOrderRequest; import com.glxp.api.req.thrsys.FilterThrOrderRequest; import com.glxp.api.res.PageSimpleResponse; -import com.glxp.api.res.thrsys.ThrOrderResponse; import com.glxp.api.service.collect.IoCollectOrderService; -import com.glxp.api.util.MsDateUtil; +import com.glxp.api.util.IntUtil; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -40,34 +35,34 @@ public class ThrOrderDownload implements IDownload { private ErpBasicClient erpBasicClient; @Resource private IoCollectOrderService collectOrderService; - @Resource - private ThrOrderDao thrOrderDao; - @Resource - private ThrOrderDetailDao thrOrderDetailDao; @Override public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { -// LambdaQueryWrapper w = new LambdaQueryWrapper<>(); -// w.eq(StrUtil.isNotBlank(collectOrderRequest.getBillNo()), ThrOrderEntity::getBillNo, collectOrderRequest.getBillNo()); -// List thrOrderEntities = thrOrderDao.selectList(w); -// if (CollUtil.isNotEmpty(thrOrderEntities)) { -// return this.importThrOrder(thrOrderEntities, collectOrderRequest); -// } else { - //三方拉取 + int page = 1; + int limit = 100; FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); - filterThrOrderRequest.setPage(1); - filterThrOrderRequest.setLimit(100); + filterThrOrderRequest.setLimit(limit); filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo()); filterThrOrderRequest.setThirdSys("thirdId"); filterThrOrderRequest.setBusType(collectOrderRequest.getBusType()); filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); filterThrOrderRequest.setFromType(collectOrderRequest.getFromType()); - BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); - if (baseResponse.getCode() == 20000) { - List list = baseResponse.getData().getList(); - return this.importThrOrder(list, collectOrderRequest); + while (true){ + filterThrOrderRequest.setPage(page); + BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); + if (baseResponse.getCode() == 20000) { + List list = baseResponse.getData().getList(); + collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + if ((list.size() >= limit && !baseResponse.getData().getTotal().equals(-666)) || IntUtil.value(baseResponse.getData().getTotal()) == -555) { + page++; + } else { + break; + } + }else { + return ResultVOUtils.error(500, "下载第三方系统产品信息异常"); + } } - return ResultVOUtils.error("下载失败"); + return ResultVOUtils.success("下载成功"); } // }