From 6c98fd414688b4af29dcd9f900614743ec7a094f Mon Sep 17 00:00:00 2001 From: x_z Date: Fri, 10 Jun 2022 15:08:47 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E4=B8=8B=E8=BD=BD=E7=AC=AC?= =?UTF-8?q?=E4=B8=89=E6=96=B9=E7=B3=BB=E7=BB=9F=E6=95=B0=E6=8D=AE=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E9=80=BB=E8=BE=91=EF=BC=8C=E6=A0=B9=E6=8D=AE=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=98=AF=E5=90=A6=E5=90=AF=E7=94=A8=E5=8F=8A=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E4=BD=BF=E7=94=A8=E6=8E=A5=E5=8F=A3=E6=9C=AC=E5=9C=B0?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E5=88=A4=E6=96=AD=E6=98=AF=E5=90=A6=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/admin/constant/ThirdSysConstant.java | 43 +++++ .../thread/DownloadThirdSysDataTask.java | 150 ++++++++++-------- 2 files changed, 127 insertions(+), 66 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/api/admin/constant/ThirdSysConstant.java diff --git a/api-admin/src/main/java/com/glxp/api/admin/constant/ThirdSysConstant.java b/api-admin/src/main/java/com/glxp/api/admin/constant/ThirdSysConstant.java new file mode 100644 index 00000000..09cd2afa --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/constant/ThirdSysConstant.java @@ -0,0 +1,43 @@ +package com.glxp.api.admin.constant; + +/** + * 第三方系统配置参数实体 + */ +public interface ThirdSysConstant { + + /** + * 仓库货位码查询 + */ + public static final String WAREHOUSE_QUERY_URL = "warehouseQueryUrl"; + + /** + * 业务单据提交 + */ + public static final String ORDER_SUBMIT_URL = "orderSubmitUrl"; + + /** + * 业务单据查询 + */ + public static final String ORDER_QUERY_URL = "orderQueryUrl"; + + /** + * 单据类型查询 + */ + public static final String BUS_TYPE_QUERY_URL = "busTypeQueryUrl"; + + /** + * 仓库/科室查询 + */ + public static final String invPiUrl = "invPiUrl"; + + /** + * 往来单位查询 + */ + public static final String CORP_URL = "corpUrl"; + + /** + * 产品信息查询 + */ + public static final String PI_QUERY_URL = "piQueryUrl"; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/DownloadThirdSysDataTask.java b/api-admin/src/main/java/com/glxp/api/admin/thread/DownloadThirdSysDataTask.java index 5abafc36..e5a48d4f 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/DownloadThirdSysDataTask.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/DownloadThirdSysDataTask.java @@ -3,10 +3,13 @@ package com.glxp.api.admin.thread; import cn.hutool.core.collection.CollUtil; import cn.hutool.json.JSONUtil; import com.glxp.api.admin.constant.BasicProcessStatus; +import com.glxp.api.admin.constant.ThirdSysConstant; import com.glxp.api.admin.dao.basic.BasicThirdSysDao; +import com.glxp.api.admin.dao.basic.BasicThirdSysDetailDao; import com.glxp.api.admin.dao.schedule.ScheduledDao; import com.glxp.api.admin.dao.schedule.SystemParamConfigDao; import com.glxp.api.admin.entity.basic.BasicThirdSysBusApiEntity; +import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity; import com.glxp.api.admin.entity.basic.BussinessOriginTypeEntity; import com.glxp.api.admin.entity.info.ScheduledEntity; import com.glxp.api.admin.entity.info.SystemParamConfigEntity; @@ -62,6 +65,8 @@ public class DownloadThirdSysDataTask implements SchedulingConfigurer { private ErpBasicClient erpBasicClient; @Resource private BussinessOriginTypeService bussinessOriginTypeService; + @Resource + private BasicThirdSysDetailDao basicThirdSysDetailDao; @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { @@ -90,82 +95,95 @@ public class DownloadThirdSysDataTask implements SchedulingConfigurer { List thirdIds = basicThirdSysDao.selectEnabledThirdId(); if (CollUtil.isNotEmpty(thirdIds)) { for (String thirdId : thirdIds) { - - log.info("自动下载第三方系统为:{} 的基础数据", thirdId); - log.info("开始下载第三方系统的仓库数据"); - BaseResponse baseResponse = thrInvWarehouseService.downloadThirdWarehouse(thirdId); - if (baseResponse.getCode() == 20000) { - log.info("第三方系统标识为:{} 的仓库数据下载完成", thirdId); - } else { - log.info(thirdId + " 仓库数据下载失败"); - log.error(JSONUtil.toJsonStr(baseResponse)); + //查询此系统的仓库仓位码配置详情 + BasicThirdSysDetailEntity warehouseConfig = basicThirdSysDetailDao.selectByKey(ThirdSysConstant.WAREHOUSE_QUERY_URL, thirdId); + if (null != warehouseConfig && warehouseConfig.getFromType().equals(3) && warehouseConfig.getEnabled()) { + log.info("自动下载第三方系统为:{} 的基础数据", thirdId); + log.info("开始下载第三方系统的仓库数据"); + BaseResponse baseResponse = thrInvWarehouseService.downloadThirdWarehouse(thirdId); + if (baseResponse.getCode() == 20000) { + log.info("第三方系统标识为:{} 的仓库数据下载完成", thirdId); + } else { + log.info(thirdId + " 仓库数据下载失败"); + log.error(JSONUtil.toJsonStr(baseResponse)); + } } - log.info("开始下载第三方系统的往来单位数据"); - ThrCorpImportLogEntity thrCorpImportLogEntity = new ThrCorpImportLogEntity(); - String genKey = CustomUtil.getId(); - thrCorpImportLogEntity.setGenKey(genKey); - thrCorpImportLogEntity.setFromType("第三方系统获取"); - thrCorpImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); - thrCorpImportLogEntity.setUpdateTime(new Date()); - thrCorpImportLogEntity.setThirdSysFk(thirdId); - thrCorpImportLogService.insertImportLog(thrCorpImportLogEntity); - thrCorpsDlService.importCorps(genKey, null, thirdId); - log.info("第三方系统往来单位数据下载完成"); + BasicThirdSysDetailEntity corpConfig = basicThirdSysDetailDao.selectByKey(ThirdSysConstant.CORP_URL, thirdId); + if (null != corpConfig && corpConfig.getFromType().equals(3) && corpConfig.getEnabled()) { + log.info("开始下载第三方系统的往来单位数据"); + ThrCorpImportLogEntity thrCorpImportLogEntity = new ThrCorpImportLogEntity(); + String genKey = CustomUtil.getId(); + thrCorpImportLogEntity.setGenKey(genKey); + thrCorpImportLogEntity.setFromType("第三方系统获取"); + thrCorpImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); + thrCorpImportLogEntity.setUpdateTime(new Date()); + thrCorpImportLogEntity.setThirdSysFk(thirdId); + thrCorpImportLogService.insertImportLog(thrCorpImportLogEntity); + thrCorpsDlService.importCorps(genKey, null, thirdId); + log.info("第三方系统往来单位数据下载完成"); + } - log.info("开始下载第三方系统的产品信息数据"); - ThrProductsImportLogEntity thrProductsImportLogEntity = new ThrProductsImportLogEntity(); - String genKey1 = CustomUtil.getId(); - thrProductsImportLogEntity.setGenKey(genKey1); - thrProductsImportLogEntity.setFromType("第三方系统下载"); - thrProductsImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); - thrProductsImportLogEntity.setUpdateTime(new Date()); - thrProductsImportLogEntity.setThirdSysFk(thirdId); - thrProductsImportLogService.insertImportLog(thrProductsImportLogEntity); - FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); - filterThrProductsRequest.setThirdSysFk(thirdId); - filterThrProductsRequest.setThirdSys(thirdId); - filterThrProductsRequest.setPage(1); - filterThrProductsRequest.setLimit(100); - thrProductsDlService.importProducrs(genKey1, filterThrProductsRequest); - log.info("第三方系统往来产品信息数据下载完成"); + BasicThirdSysDetailEntity productConfig = basicThirdSysDetailDao.selectByKey(ThirdSysConstant.PI_QUERY_URL, thirdId); + if (null != productConfig && productConfig.getFromType().equals(3) && productConfig.getEnabled()) { + log.info("开始下载第三方系统的产品信息数据"); + ThrProductsImportLogEntity thrProductsImportLogEntity = new ThrProductsImportLogEntity(); + String genKey1 = CustomUtil.getId(); + thrProductsImportLogEntity.setGenKey(genKey1); + thrProductsImportLogEntity.setFromType("第三方系统下载"); + thrProductsImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); + thrProductsImportLogEntity.setUpdateTime(new Date()); + thrProductsImportLogEntity.setThirdSysFk(thirdId); + thrProductsImportLogService.insertImportLog(thrProductsImportLogEntity); + FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); + filterThrProductsRequest.setThirdSysFk(thirdId); + filterThrProductsRequest.setThirdSys(thirdId); + filterThrProductsRequest.setPage(1); + filterThrProductsRequest.setLimit(100); + thrProductsDlService.importProducrs(genKey1, filterThrProductsRequest); + log.info("第三方系统往来产品信息数据下载完成"); + } - log.info("开始下载第三方系统单据类型"); - FilterBasicThirdSysDetailRequest filterBasicThirdSysDetailRequest = new FilterBasicThirdSysDetailRequest(); - filterBasicThirdSysDetailRequest.setThirdSysFk(thirdId); - int page = 1; - int limit = 100; - while (true) { - filterBasicThirdSysDetailRequest.setPage(page); - filterBasicThirdSysDetailRequest.setLimit(limit); - BaseResponse> busResponse = erpBasicClient.getBusTypes(filterBasicThirdSysDetailRequest); - if (busResponse != null && busResponse.getCode() == 20000) { - List basicThirdSysBusApiEntities = busResponse.getData().getList(); - if (CollUtil.isNotEmpty(basicThirdSysBusApiEntities)) { - for (BasicThirdSysBusApiEntity basicThirdSysBusApiEntity : basicThirdSysBusApiEntities) { - BussinessOriginTypeEntity bussinessOriginTypeEntity = new BussinessOriginTypeEntity(); - bussinessOriginTypeEntity.setName(basicThirdSysBusApiEntity.getName()); - bussinessOriginTypeEntity.setAction(basicThirdSysBusApiEntity.getCode()); - bussinessOriginTypeEntity.setThirdSys(thirdId); - bussinessOriginTypeEntity.setInoutType(basicThirdSysBusApiEntity.getInoutType()); - bussinessOriginTypeEntity.setRemark(basicThirdSysBusApiEntity.getRemark()); - bussinessOriginTypeEntity.setEnable(true); - bussinessOriginTypeEntity.setUpdateTime(new Date()); - bussinessOriginTypeService.insertBusOriginType(bussinessOriginTypeEntity); - } - if (basicThirdSysBusApiEntities.size() >= 100) { - page++; - } else + BasicThirdSysDetailEntity busConfig = basicThirdSysDetailDao.selectByKey(ThirdSysConstant.BUS_TYPE_QUERY_URL, thirdId); + if (null != busConfig && busConfig.getFromType().equals(3) && busConfig.getEnabled()) { + log.info("开始下载第三方系统单据类型"); + FilterBasicThirdSysDetailRequest filterBasicThirdSysDetailRequest = new FilterBasicThirdSysDetailRequest(); + filterBasicThirdSysDetailRequest.setThirdSysFk(thirdId); + int page = 1; + int limit = 100; + while (true) { + filterBasicThirdSysDetailRequest.setPage(page); + filterBasicThirdSysDetailRequest.setLimit(limit); + BaseResponse> busResponse = erpBasicClient.getBusTypes(filterBasicThirdSysDetailRequest); + if (busResponse != null && busResponse.getCode() == 20000) { + List basicThirdSysBusApiEntities = busResponse.getData().getList(); + if (CollUtil.isNotEmpty(basicThirdSysBusApiEntities)) { + for (BasicThirdSysBusApiEntity basicThirdSysBusApiEntity : basicThirdSysBusApiEntities) { + BussinessOriginTypeEntity bussinessOriginTypeEntity = new BussinessOriginTypeEntity(); + bussinessOriginTypeEntity.setName(basicThirdSysBusApiEntity.getName()); + bussinessOriginTypeEntity.setAction(basicThirdSysBusApiEntity.getCode()); + bussinessOriginTypeEntity.setThirdSys(thirdId); + bussinessOriginTypeEntity.setInoutType(basicThirdSysBusApiEntity.getInoutType()); + bussinessOriginTypeEntity.setRemark(basicThirdSysBusApiEntity.getRemark()); + bussinessOriginTypeEntity.setEnable(true); + bussinessOriginTypeEntity.setUpdateTime(new Date()); + bussinessOriginTypeService.insertBusOriginType(bussinessOriginTypeEntity); + } + if (basicThirdSysBusApiEntities.size() >= 100) { + page++; + } else + break; + } else { break; + } } else { + log.error("第三方系统单据类型数据下载失败"); break; } - } else { - log.error("第三方系统单据类型数据下载失败"); - break; + log.info("第三方系统往来产品信息数据下载完成"); } - log.info("第三方系统往来产品信息数据下载完成"); } + } }