diff --git a/src/main/java/com/glxp/api/http/ErpBasicClient.java b/src/main/java/com/glxp/api/http/ErpBasicClient.java index a69a2d046..be4a3b21a 100644 --- a/src/main/java/com/glxp/api/http/ErpBasicClient.java +++ b/src/main/java/com/glxp/api/http/ErpBasicClient.java @@ -12,6 +12,7 @@ import com.glxp.api.entity.basic.BasicSkProjectEntity; import com.glxp.api.entity.basic.BasicSkSickerEntity; import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.thrsys.ThrManufacturerEntity; +import com.glxp.api.entity.thrsys.ThrOrderEntity; import com.glxp.api.entity.thrsys.ThrSystemBusApiEntity; import com.glxp.api.entity.thrsys.ThrSystemEntity; import com.glxp.api.exception.JsonException; @@ -32,6 +33,7 @@ import com.glxp.api.res.basic.BasicSkSickerResponse; import com.glxp.api.res.chs.YbHcflEntityResponse; import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.res.thrsys.ThrCorpsResponse; +import com.glxp.api.res.thrsys.ThrOrderResponse; import com.glxp.api.res.thrsys.ThrProductsResponse; import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail; import com.glxp.api.service.thrsys.ThrSystemService; @@ -233,6 +235,28 @@ public class ErpBasicClient { } + /** + * 获取三方单据信息 + * @param filterThrOrderRequest + * @return + */ + public BaseResponse> getThrOrders(FilterThrOrderRequest filterThrOrderRequest) { + ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(filterThrOrderRequest.getThirdSys()); + String url = basicThirdSysEntity.getThridUrl() + "/udiwms/erp/getThrOrders"; + try { + String response = httpOkClient.uCloudPost(url, filterThrOrderRequest); + BaseResponse> listBaseResponse = + JSONObject.parseObject(response, new TypeReference>>() { + }); + + return listBaseResponse; + } catch (Exception e) { + log.error("获取三方单据信息", e); + return ResultVOUtils.error(500, "连接第三方系统接口服务出错"); + } + } + + /** * 获取医保单据 * diff --git a/src/main/java/com/glxp/api/req/thrsys/FilterThrOrderRequest.java b/src/main/java/com/glxp/api/req/thrsys/FilterThrOrderRequest.java index dc51f5d07..806ed380b 100644 --- a/src/main/java/com/glxp/api/req/thrsys/FilterThrOrderRequest.java +++ b/src/main/java/com/glxp/api/req/thrsys/FilterThrOrderRequest.java @@ -33,5 +33,13 @@ public class FilterThrOrderRequest extends ListPageRequest { private String thirdAction; private String thirdOrderFk; private Integer allocateStatus; + /** + * 工位编码 + */ + private Long workPlaceCode; + /** + * 来源业务 + */ + private String fromType; private List erpOrderResponses; } diff --git a/src/main/java/com/glxp/api/res/thrsys/ThrOrderResponse.java b/src/main/java/com/glxp/api/res/thrsys/ThrOrderResponse.java index ca4195a68..8d0a582ae 100644 --- a/src/main/java/com/glxp/api/res/thrsys/ThrOrderResponse.java +++ b/src/main/java/com/glxp/api/res/thrsys/ThrOrderResponse.java @@ -1,6 +1,7 @@ package com.glxp.api.res.thrsys; import com.baomidou.mybatisplus.annotation.TableField; +import com.glxp.api.entity.thrsys.ThrOrderDetailEntity; import lombok.Data; import java.math.BigDecimal; @@ -20,7 +21,7 @@ public class ThrOrderResponse { private String fromInvCode; //往来仓库 private String thirdSysFk; - + private List detailList; private List subErpOrders; //增加字段 diff --git a/src/main/java/com/glxp/api/service/collect/DownloadFactory.java b/src/main/java/com/glxp/api/service/collect/DownloadFactory.java index 3b0060ad7..2ecadb04d 100644 --- a/src/main/java/com/glxp/api/service/collect/DownloadFactory.java +++ b/src/main/java/com/glxp/api/service/collect/DownloadFactory.java @@ -17,6 +17,9 @@ public class DownloadFactory { @Resource private YPCF002Download ypcf002Download; + + @Resource + private CGJH001Download cgjh001Download; @Resource private LYRKDownload lyrkDownload; @Resource @@ -37,7 +40,7 @@ public class DownloadFactory { if(busType.equals(BusTypeConstant.YPCF002.getBusType())){ return ypcf002Download.downloadOrder(collectOrderRequest); } else if(busType.equals(BusTypeConstant.CGJH001.getBusType())){ - return ResultVOUtils.error("下载失败,未配置业务类型"); + return cgjh001Download.downloadOrder(collectOrderRequest); } else if(busType.equals(BusTypeConstant.LYRK.getBusType())){ return lyrkDownload.downloadOrder(collectOrderRequest); } else if(busType.equals(BusTypeConstant.GMRK.getBusType())){ diff --git a/src/main/java/com/glxp/api/service/collect/down/CGJH001Download.java b/src/main/java/com/glxp/api/service/collect/down/CGJH001Download.java new file mode 100644 index 000000000..ac624a0aa --- /dev/null +++ b/src/main/java/com/glxp/api/service/collect/down/CGJH001Download.java @@ -0,0 +1,41 @@ +package com.glxp.api.service.collect.down; + +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.http.ErpBasicClient; +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 org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + + +@Service +public class CGJH001Download implements IDownload{ + @Resource + private ErpBasicClient erpBasicClient; + @Resource + private IoCollectOrderService collectOrderService; + + @Override + public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + filterThrOrderRequest.setPage(1); + filterThrOrderRequest.setLimit(100); + filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo()); + filterThrOrderRequest.setThirdSys("thirdId"); + filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); + filterThrOrderRequest.setFromType(collectOrderRequest.getFromType()); + BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); + if (baseResponse.getCode() == 20000) { + List list = baseResponse.getData().getList(); +// collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + return ResultVOUtils.success("下载成功"); + } + return ResultVOUtils.error("下载失败"); + } +} diff --git a/src/main/java/com/glxp/api/service/collect/down/GMRKDownload.java b/src/main/java/com/glxp/api/service/collect/down/GMRKDownload.java index 47f89c9bd..9800cf5a3 100644 --- a/src/main/java/com/glxp/api/service/collect/down/GMRKDownload.java +++ b/src/main/java/com/glxp/api/service/collect/down/GMRKDownload.java @@ -2,14 +2,38 @@ package com.glxp.api.service.collect.down; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.http.ErpBasicClient; 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 org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.List; + @Service public class GMRKDownload implements IDownload{ - + @Resource + private ErpBasicClient erpBasicClient; + @Resource + private IoCollectOrderService collectOrderService; @Override public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + filterThrOrderRequest.setPage(1); + filterThrOrderRequest.setLimit(100); + filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo()); + filterThrOrderRequest.setThirdSys("thirdId"); + filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); + filterThrOrderRequest.setFromType(collectOrderRequest.getFromType()); + BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); + if (baseResponse.getCode() == 20000) { + List list = baseResponse.getData().getList(); +// collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + return ResultVOUtils.success("下载成功"); + } return ResultVOUtils.error("下载失败"); } } diff --git a/src/main/java/com/glxp/api/service/collect/down/LYCKDownload.java b/src/main/java/com/glxp/api/service/collect/down/LYCKDownload.java index 0634e6b1b..b4e4898e8 100644 --- a/src/main/java/com/glxp/api/service/collect/down/LYCKDownload.java +++ b/src/main/java/com/glxp/api/service/collect/down/LYCKDownload.java @@ -6,7 +6,9 @@ import com.glxp.api.entity.collect.IoCollectOrder; 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 org.springframework.stereotype.Service; @@ -22,17 +24,17 @@ public class LYCKDownload implements IDownload{ @Override public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { - GetSickPrescribeRequest getSickPrescribeRequest = new GetSickPrescribeRequest(); - getSickPrescribeRequest.setPage(1); - getSickPrescribeRequest.setLimit(100); - getSickPrescribeRequest.setCode(collectOrderRequest.getBillNo()); - getSickPrescribeRequest.setThirdSys("thirdId"); - getSickPrescribeRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); - getSickPrescribeRequest.setFromType(collectOrderRequest.getFromType()); - BaseResponse> baseResponse = erpBasicClient.getPrescribeV2(getSickPrescribeRequest); + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + filterThrOrderRequest.setPage(1); + filterThrOrderRequest.setLimit(100); + filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo()); + filterThrOrderRequest.setThirdSys("thirdId"); + filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); + filterThrOrderRequest.setFromType(collectOrderRequest.getFromType()); + BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); if (baseResponse.getCode() == 20000) { - List list = baseResponse.getData().getList(); - collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + List list = baseResponse.getData().getList(); +// collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); return ResultVOUtils.success("下载成功"); } return ResultVOUtils.error("下载失败"); diff --git a/src/main/java/com/glxp/api/service/collect/down/LYRKDownload.java b/src/main/java/com/glxp/api/service/collect/down/LYRKDownload.java index bdf5baff4..c10942dad 100644 --- a/src/main/java/com/glxp/api/service/collect/down/LYRKDownload.java +++ b/src/main/java/com/glxp/api/service/collect/down/LYRKDownload.java @@ -2,14 +2,38 @@ package com.glxp.api.service.collect.down; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.http.ErpBasicClient; 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 org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.List; + @Service public class LYRKDownload implements IDownload { - + @Resource + private ErpBasicClient erpBasicClient; + @Resource + private IoCollectOrderService collectOrderService; @Override public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + filterThrOrderRequest.setPage(1); + filterThrOrderRequest.setLimit(100); + filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo()); + filterThrOrderRequest.setThirdSys("thirdId"); + filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); + filterThrOrderRequest.setFromType(collectOrderRequest.getFromType()); + BaseResponse> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest); + if (baseResponse.getCode() == 20000) { + List list = baseResponse.getData().getList(); +// collectOrderService.importPrescribe(list,collectOrderRequest.getBusType()); + return ResultVOUtils.success("下载成功"); + } return ResultVOUtils.error("下载失败"); } }