From 0409c47ca6e902271a697b88ff80ce61677e4071 Mon Sep 17 00:00:00 2001 From: anthonyywj2 <353682448@qq.com> Date: Fri, 13 May 2022 09:23:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/constant/BasicProcessStatus.java | 1 + .../sale/admin/constant/FileConstant.java | 44 ++-- .../param/SystemParamConfigController.java | 18 +- .../sync/SpsSyncDataController.java | 9 +- .../info/CompanyProductRelevanceEntity.java | 1 + .../sale/admin/entity/sync/UdiInfoEntity.java | 1 + .../admin/entity/sync/UdiRelevanceEntity.java | 5 + .../com/glxp/sale/admin/http/SpGetHttp.java | 26 +++ .../admin/res/sync/SpSyncUdiResponse.java | 14 ++ .../sale/admin/thread/DlAllDataService.java | 132 ++++++++++- .../sale/admin/thread/DlBasicService.java | 215 ------------------ .../sale/admin/thread/DlSpOrderService.java | 127 ----------- .../sale/admin/thread/DlUploadService.java | 132 ----------- .../com/glxp/sale/admin/thread/HeartTask.java | 39 ++-- .../admin/thread/ScanDownloadService.java | 165 +++----------- .../sale/admin/thread/ScanUploadService.java | 148 ------------ .../thread/didl/AsyncCompanyDlService.java | 6 +- .../admin/thread/didl/AsyncDiDlHelper.java | 6 +- .../admin/thread/didl/AsyncDiDlService.java | 41 +++- .../sale/admin/thread/didl/AsyncDiDlTask.java | 21 +- .../com/glxp/sale/admin/util/DateUtil.java | 16 ++ .../main/resources/application-pro.properties | 5 +- .../src/main/resources/logback-spring.xml | 4 +- 23 files changed, 326 insertions(+), 850 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/sale/admin/res/sync/SpSyncUdiResponse.java delete mode 100644 api-admin/src/main/java/com/glxp/sale/admin/thread/DlBasicService.java delete mode 100644 api-admin/src/main/java/com/glxp/sale/admin/thread/DlSpOrderService.java delete mode 100644 api-admin/src/main/java/com/glxp/sale/admin/thread/DlUploadService.java diff --git a/api-admin/src/main/java/com/glxp/sale/admin/constant/BasicProcessStatus.java b/api-admin/src/main/java/com/glxp/sale/admin/constant/BasicProcessStatus.java index add89d7..08959cb 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/constant/BasicProcessStatus.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/constant/BasicProcessStatus.java @@ -33,6 +33,7 @@ public class BasicProcessStatus { public static final int NEW_ALL_DATA = 7; public static final int NEW_ALL_BUS = 8; public static final int NEW_ALL_ORDER = 9; + public static final int NEW_ALL_UDIS = 10; public static final int IMPORT_LOG_TYPE_ORDER = 1;//单据 diff --git a/api-admin/src/main/java/com/glxp/sale/admin/constant/FileConstant.java b/api-admin/src/main/java/com/glxp/sale/admin/constant/FileConstant.java index 1e4ab3b..a431368 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/constant/FileConstant.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/constant/FileConstant.java @@ -4,42 +4,30 @@ public class FileConstant { //上游通,等待拷贝 - public static String upWaitCopy_root ="/UpperOut/"; - public static String upWaitCopy_order = "/UpperOut/Order/"; - public static String upWaitCopy_order_back = "/UpperOut/Order/Completed/"; - public static String upWaitCopy_order_error = "/UpperOut/Order/Error/"; - public static String upWaitCopy_products = "/UpperOut/Dictionaries/"; - public static String upWaitCopy_products_back = "/UpperOut/Dictionaries/Completed/"; - public static String upWaitCopy_products_error = "/UpperOut/Dictionaries/Error/"; + public static String upWaitCopy_root = "/UpperOut/"; + public static String upWaitCopy_products = "/UpperOut/Datas/"; + public static String upWaitCopy_products_back = "/UpperOut/Datas/Completed/"; + public static String upWaitCopy_products_error = "/UpperOut/Datas/Error/"; //上游通,等待上传 - public static String waitUpload_root ="/UpperIn/"; - public static String waitUpload_order = "/UpperIn/Order/"; - public static String waitUpload_order_back = "/UpperIn/Order/Completed"; - public static String waitUpload_order_error = "/UpperIn/Order/Error/"; - public static String waitUpload_products = "/UpperIn/Dictionaries/"; - public static String waitUpload_products_back = "/UpperIn/Dictionaries/Completed/"; - public static String waitUpload_products_error = "/UpperIn/Dictionaries/Error/"; + public static String waitUpload_root = "/UpperIn/"; + public static String waitUpload_products = "/UpperIn/Datas/"; + public static String waitUpload_products_back = "/UpperIn/Datas/Completed/"; + public static String waitUpload_products_error = "/UpperIn/Datas/Error/"; //下游通,下游上传后,等待拷贝 - public static String lowerWaitCopy_root ="/LowerOut/"; - public static String lowerWaitCopy_order = "/LowerOut/Order/"; - public static String lowerWaitCopy_order_back = "/LowerOut/Order/Completed/"; - public static String lowerWaitCopy_order_error = "/LowerOut/Order/Error/"; - public static String lowerWaitCopy_products = "/LowerOut/Dictionaries/"; - public static String lowerWaitCopy_products_back = "/LowerOut/Dictionaries/Completed/"; - public static String lowerWaitCopy_products_error = "/LowerOut/Dictionaries/Error/"; + public static String lowerWaitCopy_root = "/LowerOut/"; + public static String lowerWaitCopy_products = "/LowerOut/Datas/"; + public static String lowerWaitCopy_products_back = "/LowerOut/Datas/Completed/"; + public static String lowerWaitCopy_products_error = "/LowerOut/Datas/Error/"; //下游通,等待下载 - public static String waitDownload_root ="/LowerIn/"; - public static String waitDownload_order = "/LowerIn/Order/"; - public static String waitDownload_order_back = "/LowerIn/Order/Completed/"; - public static String waitDownload_order_error = "/LowerIn/Order/Error/"; - public static String waitDownload_products = "/LowerIn/Dictionaries/"; - public static String waitDownload_products_back = "/LowerIn/Dictionaries/Completed/"; - public static String waitDownload_products_error = "/LowerIn/Dictionaries/Error/"; + public static String waitDownload_root = "/LowerIn/"; + public static String waitDownload_products = "/LowerIn/Datas/"; + public static String waitDownload_products_back = "/LowerIn/Datas/Completed/"; + public static String waitDownload_products_error = "/LowerIn/Datas/Error/"; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemParamConfigController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemParamConfigController.java index d6618d9..ed177ba 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemParamConfigController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemParamConfigController.java @@ -130,9 +130,9 @@ public class SystemParamConfigController { boolean b6 = FileUtils.makeDirectory(new File(filePath + FileConstant.lowerWaitCopy_products_error)); //配置文件夹,上游拷贝下来得到文件,等待下游下载走 - boolean b7 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order)); - boolean b8 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order_back)); - boolean b9 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order_error)); +// boolean b7 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order)); +// boolean b8 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order_back)); +// boolean b9 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_order_error)); boolean b10 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_products)); boolean b11 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_products_back)); boolean b12 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitDownload_products_error)); @@ -181,16 +181,16 @@ public class SystemParamConfigController { if (!new File(filePath).exists()) { return ResultVOUtils.error(500, "文件根目录不存在!"); } - boolean b1 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order)); - boolean b2 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order_back)); - boolean b3 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order_error)); +// boolean b1 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order)); +// boolean b2 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order_back)); +// boolean b3 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_order_error)); boolean b4 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_products)); boolean b5 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_products_back)); boolean b6 = FileUtils.makeDirectory(new File(filePath + FileConstant.upWaitCopy_products_error)); - boolean b7 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order)); - boolean b8 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order_back)); - boolean b9 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order_error)); +// boolean b7 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order)); +// boolean b8 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order_back)); +// boolean b9 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_order_error)); boolean b10 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_products)); boolean b11 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_products_back)); boolean b12 = FileUtils.makeDirectory(new File(filePath + FileConstant.waitUpload_products_error)); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/sync/SpsSyncDataController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/sync/SpsSyncDataController.java index 264f8b1..02973d6 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/sync/SpsSyncDataController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/sync/SpsSyncDataController.java @@ -63,6 +63,13 @@ public class SpsSyncDataController { } + @GetMapping("sps/sync/syncUdi") + public BaseResponse getSyncUdi(SpsSyncDataRequest spsSyncDataRequest) { + SpSyncUdiResponse spsSyncDataResponse = (SpSyncUdiResponse) redisUtil.get(spsSyncDataRequest.getId() + ""); + return ResultVOUtils.success(spsSyncDataResponse); + } + + @PostMapping("/sps/sync/basic/upload") public BaseResponse postAllBase(@RequestBody SpsSyncDataResponse syncDataResponse, BindingResult bindingResult) { @@ -126,7 +133,7 @@ public class SpsSyncDataController { @PostMapping("sps/sync/schedule/upload") - public BaseResponse dealSchedule(@RequestBody SpsSyncScheduleResponse spsSyncScheduleResponse) { + public BaseResponse postSchedule(@RequestBody SpsSyncScheduleResponse spsSyncScheduleResponse) { SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/info/CompanyProductRelevanceEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/info/CompanyProductRelevanceEntity.java index 566db96..862742b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/info/CompanyProductRelevanceEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/info/CompanyProductRelevanceEntity.java @@ -21,4 +21,5 @@ public class CompanyProductRelevanceEntity { private Integer udiRlIdFk; private String genKeyFk; private Integer gid; + private String unitFk; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiInfoEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiInfoEntity.java index e548a14..7e185a3 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiInfoEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiInfoEntity.java @@ -60,6 +60,7 @@ public class UdiInfoEntity { private Boolean isCheck; private String genKeyFk; + private String originUuid; public Integer getId() { return id; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiRelevanceEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiRelevanceEntity.java index 8bff62a..7d9ae95 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiRelevanceEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/sync/UdiRelevanceEntity.java @@ -34,6 +34,11 @@ public class UdiRelevanceEntity { private String genKeyFk; private Integer gid; + + private String originUuid; + private boolean allowNoBatch; + + public Integer getLockStatus() { if (lockStatus == null) return 1; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/http/SpGetHttp.java b/api-admin/src/main/java/com/glxp/sale/admin/http/SpGetHttp.java index 6a22e97..a386693 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/http/SpGetHttp.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/http/SpGetHttp.java @@ -211,6 +211,8 @@ public class SpGetHttp { Map paramMap = new HashMap<>(16); if (spsSyncDataRequest.getLastUpdateTime() != null) paramMap.put("lastUpdateTime", spsSyncDataRequest.getLastUpdateTime()); + if (spsSyncDataRequest.getId() != null) + paramMap.put("id", spsSyncDataRequest.getId()); String response = UHttpClient.mipsGetHead(spmsUrl + "/sps/sync/basic", paramMap, getHeaders()); try { BaseResponse data = @@ -230,6 +232,8 @@ public class SpGetHttp { Map paramMap = new HashMap<>(16); if (spsSyncDataRequest.getLastUpdateTime() != null) paramMap.put("lastUpdateTime", spsSyncDataRequest.getLastUpdateTime()); + if (spsSyncDataRequest.getId() != null) + paramMap.put("id", spsSyncDataRequest.getId()); String response = UHttpClient.mipsGetHead(spmsUrl + "/sps/sync/order", paramMap, getHeaders()); try { BaseResponse data = @@ -248,6 +252,8 @@ public class SpGetHttp { Map paramMap = new HashMap<>(16); if (spsSyncDataRequest.getLastUpdateTime() != null) paramMap.put("lastUpdateTime", spsSyncDataRequest.getLastUpdateTime()); + if (spsSyncDataRequest.getId() != null) + paramMap.put("id", spsSyncDataRequest.getId()); String response = UHttpClient.mipsGetHead(spmsUrl + "/sps/sync/busType", paramMap, getHeaders()); try { BaseResponse data = @@ -260,4 +266,24 @@ public class SpGetHttp { return ResultVOUtils.error(500, "下载失败!"); } } + + //获取所有UDI信息 + public BaseResponse getAllDi(SpsSyncDataRequest spsSyncDataRequest) { + Map paramMap = new HashMap<>(16); + if (spsSyncDataRequest.getLastUpdateTime() != null) + paramMap.put("lastUpdateTime", spsSyncDataRequest.getLastUpdateTime()); + if (spsSyncDataRequest.getId() != null) + paramMap.put("id", spsSyncDataRequest.getId()); + String response = UHttpClient.mipsGetHead(spmsUrl + "/sps/sync/syncUdi", paramMap, getHeaders()); + try { + BaseResponse data = + JSONObject.parseObject(response, new TypeReference>() { + }); + return data; + + } catch (Exception e) { + e.printStackTrace(); + return ResultVOUtils.error(500, "下载失败!"); + } + } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/res/sync/SpSyncUdiResponse.java b/api-admin/src/main/java/com/glxp/sale/admin/res/sync/SpSyncUdiResponse.java new file mode 100644 index 0000000..17d933e --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/res/sync/SpSyncUdiResponse.java @@ -0,0 +1,14 @@ +package com.glxp.sale.admin.res.sync; + +import com.glxp.sale.admin.entity.sync.ProductInfoEntity; +import com.glxp.sale.admin.entity.sync.UdiCompanyEntity; +import lombok.Data; + +import java.util.List; + +@Data +public class SpSyncUdiResponse { + + List productInfoEntityList; + List udiCompanyEntities; +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlAllDataService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/DlAllDataService.java index 5faddfb..81a4314 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlAllDataService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/DlAllDataService.java @@ -6,30 +6,33 @@ import com.glxp.sale.admin.constant.BasicProcessStatus; import com.glxp.sale.admin.constant.FileConstant; import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; import com.glxp.sale.admin.entity.sync.BasicExportStatusEntity; +import com.glxp.sale.admin.entity.sync.ProductInfoEntity; import com.glxp.sale.admin.entity.sync.ThrImportLogEntity; +import com.glxp.sale.admin.entity.sync.UdiCompanyEntity; import com.glxp.sale.admin.http.SpGetHttp; import com.glxp.sale.admin.req.sync.BasicExportStatusRequest; import com.glxp.sale.admin.req.sync.SpsSyncDataRequest; -import com.glxp.sale.admin.res.sync.SpsSyncBusResponse; -import com.glxp.sale.admin.res.sync.SpsSyncDataResponse; -import com.glxp.sale.admin.res.sync.SpsSyncOrderResponse; -import com.glxp.sale.admin.res.sync.SpsSyncScheduleResponse; +import com.glxp.sale.admin.res.sync.*; import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.service.sync.BasicExportService; import com.glxp.sale.admin.service.sync.ThrImportLogService; +import com.glxp.sale.admin.thread.didl.AsyncDiDlHelper; import com.glxp.sale.admin.util.CustomUtil; import com.glxp.sale.admin.util.DateUtil; import com.glxp.sale.admin.util.FileUtils; import com.glxp.sale.admin.util.RedisUtil; import com.glxp.sale.common.res.BaseResponse; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Date; import java.util.List; +@Slf4j @Service public class DlAllDataService { @@ -39,11 +42,13 @@ public class DlAllDataService { SystemParamConfigService systemParamConfigService; @Resource BasicExportService basicExportService; - + @Resource + AsyncDiDlHelper asyncDiDlHelper; @Resource RedisUtil redisUtil; public void dllNewAllData() { + log.info("下载所有基础信息---"); BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest(); basicExportStatusRequest.setIdDatas("AutoDownloadAllData"); basicExportStatusRequest.setStatus(0); @@ -113,9 +118,11 @@ public class DlAllDataService { } } + log.info("下载所有基础信息---结束"); } public void dllNewAllOrder() { + log.info("下载所有单据---"); BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest(); basicExportStatusRequest.setIdDatas("AutoDownloadOrder"); basicExportStatusRequest.setStatus(0); @@ -181,11 +188,11 @@ public class DlAllDataService { } - + log.info("下载所有单据---结束"); } public void dllNewAllBusType() { - + log.info("下载所有单据类型---"); BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest(); basicExportStatusRequest.setIdDatas("AutoDownloadBusType"); basicExportStatusRequest.setStatus(0); @@ -248,11 +255,13 @@ public class DlAllDataService { } } - + log.info("下载所有单据类型---结束"); } public void dlScheduleStatus() { + + log.info("下载所有任务---"); BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest(); basicExportStatusRequest.setScheduleType(BasicProcessStatus.SCHEDULE_TRANSFER); BaseResponse> basicStatuss = spGetHttp.getBasicStatus(basicExportStatusRequest); @@ -277,7 +286,114 @@ public class DlAllDataService { } } } + log.info("下载所有任务---结束"); + } + + public void dlAllDi() { + log.info("下载所有国家库DI信息--"); + BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest(); + basicExportStatusRequest.setIdDatas("AutoDownloadDiProducts"); + basicExportStatusRequest.setStatus(0); + basicExportStatusRequest.setType(BasicProcessStatus.NEW_ALL_UDIS); + basicExportStatusRequest.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL); + BaseResponse> basicStatuss = spGetHttp.getBasicStatus(basicExportStatusRequest); + if (CollUtil.isNotEmpty(basicStatuss.getData())) { + List basicExportStatusEntities = basicStatuss.getData(); + SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); + for (BasicExportStatusEntity basicExportStatusEntity : basicExportStatusEntities) { + if (basicExportStatusEntity.getFromType() == 0) { + BaseResponse response = spGetHttp.getLastUpdateTime("AutoDownloadDiProducts"); + String lastUpdateTime = response.getData(); + if (lastUpdateTime.equals("1949-01-01 00:00:00")) { + lastUpdateTime = DateUtil.getBeforeDay(1); + } + List mProductInfoEntities = new ArrayList<>(); + int page = 1; + int limit = 300; + while (true) { + List productInfoEntityList = asyncDiDlHelper.dlByTime(page, limit, lastUpdateTime); + if (productInfoEntityList != null && productInfoEntityList.size() > 0) { + mProductInfoEntities.addAll(productInfoEntityList); + if (productInfoEntityList.size() < limit) { + break; + } else { + page++; + } + } else { + break; + } + } + //更新企业信息 + List mUdiCompanyEntities = new ArrayList<>(); + int page1 = 1; + int limit1 = 300; + while (true) { + List udiCompanyEntities = asyncDiDlHelper.dlCompanyByTime(page1, limit1, lastUpdateTime); + if (udiCompanyEntities != null && udiCompanyEntities.size() > 0) { + mUdiCompanyEntities.addAll(udiCompanyEntities); + if (udiCompanyEntities.size() < limit1) { + break; + } else { + page1++; + } + } else { + break; + } + } + + + SpSyncUdiResponse spSyncUdiResponse = new SpSyncUdiResponse(); + spSyncUdiResponse.setUdiCompanyEntities(mUdiCompanyEntities); + spSyncUdiResponse.setProductInfoEntityList(mProductInfoEntities); + + + String key = "UdiPrdoucts" + System.currentTimeMillis(); + String datas = JSON.toJSON(spSyncUdiResponse).toString(); + if (downstream.getParamValue().equals("1")) { + redisUtil.set(key, datas); + BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); + myEntity.setId(key); + basicExportService.insertExportStatus(myEntity); + } else { + String path = getPath(); + String fileName = path + FileConstant.upWaitCopy_products + "UdiPrdoucts_" + key + ".LowerIn"; + FileUtils.SaveFileAs(datas, fileName); + } + + BasicExportStatusEntity basicExportStatusEntity1 = basicExportStatusEntities.get(0); + basicExportStatusEntity1.setStatus(1); + spGetHttp.postUpdateBasicStatus(basicExportStatusEntity1); + spGetHttp.updateLastTime("AutoDownloadDiProducts", DateUtil.formatDate(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss")); + + } else { + SpsSyncDataRequest spsSyncDataRequest = new SpsSyncDataRequest(); + spsSyncDataRequest.setId(basicExportStatusEntity.getId()); + BaseResponse baseResponse = spGetHttp.getAllDi(spsSyncDataRequest); + + if (downstream.getParamValue().equals("1")) { + String key = "UdiPrdoucts" + System.currentTimeMillis(); + redisUtil.set(key, baseResponse.getData()); + BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); + myEntity.setId(key); + myEntity.setStatus(0); + myEntity.setUpdateTime(new Date()); + myEntity.setType(BasicProcessStatus.NEW_ALL_UDIS); + basicExportService.insertExportStatus(myEntity); + } else { + String path = getPath(); + String fileName = path + FileConstant.upWaitCopy_products + "UdiPrdoucts_" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; + String datas = JSON.toJSONString(baseResponse.getData()); + FileUtils.SaveFileAs(datas, fileName); + } + + spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); + } + } + + + } + log.info("下载所有国家库DI信息--结束"); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlBasicService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/DlBasicService.java deleted file mode 100644 index f44036b..0000000 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlBasicService.java +++ /dev/null @@ -1,215 +0,0 @@ -package com.glxp.sale.admin.thread; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.glxp.sale.admin.constant.BasicProcessStatus; -import com.glxp.sale.admin.constant.FileConstant; -import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; -import com.glxp.sale.admin.entity.sync.*; -import com.glxp.sale.admin.http.SpGetHttp; -import com.glxp.sale.admin.res.PageSimpleResponse; -import com.glxp.sale.admin.res.sync.DlOrderResponse; -import com.glxp.sale.admin.res.sync.UdiRelevanceExportJsonResponse; -import com.glxp.sale.admin.service.param.SystemParamConfigService; -import com.glxp.sale.admin.service.sync.*; -import com.glxp.sale.admin.util.CustomUtil; -import com.glxp.sale.admin.util.DateUtil; -import com.glxp.sale.admin.util.FileUtils; -import com.glxp.sale.admin.util.RedisUtil; -import com.glxp.sale.common.res.BaseResponse; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.scheduling.annotation.Async; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -@Service -public class DlBasicService { - - - @Resource - SpGetHttp spGetHttp; - @Resource - SystemParamConfigService systemParamConfigService; - @Resource - private ThrImportLogService thrImportLogService; - @Resource - RedisUtil redisUtil; - @Resource - BasicExportService basicExportService; - - public String getPath() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("share_folder"); - String filePath = systemParamConfigEntity.getParamValue(); - return filePath; - } - - @Async - public void dlBasicUdiInfo() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (systemParamConfigEntity.getParamValue().equals("1")) { - BaseResponse> baseResponse = spGetHttp.getBasicStatus(BasicProcessStatus.BASIC_UDI + ""); - SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - List pageSimpleResponse = baseResponse.getData(); - if (pageSimpleResponse != null) { - List basicExportStatusEntities = pageSimpleResponse; - if (basicExportStatusEntities != null && basicExportStatusEntities.size() > 0) { - for (BasicExportStatusEntity basicExportStatusEntity : basicExportStatusEntities) { - if (!StrUtil.isEmpty(basicExportStatusEntity.getIdDatas())) { - if (basicExportStatusEntity.getType() == BasicProcessStatus.BASIC_UDI) { - List ids = JSON.parseArray(basicExportStatusEntity.getIdDatas(), String.class); - String datas = spGetHttp.getBasicUdiInfo(ids); - String key = basicExportStatusEntity.getId() + ""; - if (downstream.getParamValue().equals("1")) { - redisUtil.set(key, datas); - BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); - BeanUtils.copyProperties(basicExportStatusEntity, myEntity); - myEntity.setId(key); - basicExportService.insertExportStatus(myEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } else { - String path = getPath(); -// String fileName = path + FileConstant.upWaitCopy_products + "耗材字典" + key + ".udi"; -// String backFileName = path + FileConstant.upWaitCopy_products_back + "耗材字典" + key + ".udi"; - - String fileName = path + FileConstant.upWaitCopy_products + "BaseProduct" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - String backFileName = path + FileConstant.upWaitCopy_products_back + "BaseProduct" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - - -// FileUtils.makeDirectory(path); -// FileUtils.makeDirectory(path + "/备份/"); - FileUtils.SaveFileAs(datas, fileName); - FileUtils.SaveFileAs(datas, backFileName); - ThrImportLogEntity thrImportLogEntity = new ThrImportLogEntity(); - thrImportLogEntity.setGenKey(CustomUtil.getUUId()); - thrImportLogEntity.setImportType(BasicProcessStatus.IMPORT_LOG_TYPE_UDIINFO); - thrImportLogEntity.setUpdateTime(new Date()); - thrImportLogEntity.setFilePath(fileName); - thrImportLogEntity.setBackFilePath(backFileName); - thrImportLogService.insertImportLog(thrImportLogEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } - - } - } - } - } - } - } - } - - - @Async - public void dlBasicCorp() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (systemParamConfigEntity.getParamValue().equals("1")) { - - SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - - BaseResponse> baseResponse = spGetHttp.getBasicStatus(BasicProcessStatus.BASIC_CORP + ""); - List pageSimpleResponse = baseResponse.getData(); - if (pageSimpleResponse != null) { - List basicExportStatusEntities = pageSimpleResponse; - if (basicExportStatusEntities != null && basicExportStatusEntities.size() > 0) { - for (BasicExportStatusEntity basicExportStatusEntity : basicExportStatusEntities) { - if (!StrUtil.isEmpty(basicExportStatusEntity.getIdDatas())) { - List ids = JSON.parseArray(basicExportStatusEntity.getIdDatas(), String.class); - String datas = spGetHttp.getBasicCorps(ids); - String key = basicExportStatusEntity.getId() + ""; - if (downstream.getParamValue().equals("1")) { - redisUtil.set(key, datas); - BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); - BeanUtils.copyProperties(basicExportStatusEntity, myEntity); - myEntity.setId(key); - basicExportService.insertExportStatus(myEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } else { - String path = getPath(); -// String fileName = path + FileConstant.upWaitCopy_products + "往来单位" + key + ".udi"; -// String backFileName = path + FileConstant.upWaitCopy_products_back + "往来单位" + key + ".udi"; - - String fileName = path + FileConstant.upWaitCopy_products + "BaseCorp" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - String backFileName = path + FileConstant.upWaitCopy_products_back + "BaseCorp" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - -// FileUtils.makeDirectory(path); -// FileUtils.makeDirectory(path + "备份"); - FileUtils.SaveFileAs(datas, fileName); - FileUtils.SaveFileAs(datas, backFileName); - ThrImportLogEntity thrImportLogEntity = new ThrImportLogEntity(); - thrImportLogEntity.setGenKey(CustomUtil.getUUId()); - thrImportLogEntity.setImportType(BasicProcessStatus.IMPORT_LOG_TYPE_CORP); - thrImportLogEntity.setUpdateTime(new Date()); - thrImportLogEntity.setFilePath(fileName); - thrImportLogEntity.setBackFilePath(backFileName); - thrImportLogService.insertImportLog(thrImportLogEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } - - } - } - } - } - } - - } - - @Async - public void dlBasicInv() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (systemParamConfigEntity.getParamValue().equals("1")) { - BaseResponse> baseResponse = spGetHttp.getBasicStatus(BasicProcessStatus.BASIC_INV + ""); - SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - List pageSimpleResponse = baseResponse.getData(); - if (pageSimpleResponse != null) { - List basicExportStatusEntities = pageSimpleResponse; - if (basicExportStatusEntities != null && basicExportStatusEntities.size() > 0) { - for (BasicExportStatusEntity basicExportStatusEntity : basicExportStatusEntities) { - if (!StrUtil.isEmpty(basicExportStatusEntity.getIdDatas())) { - List ids = JSON.parseArray(basicExportStatusEntity.getIdDatas(), String.class); - String datas = spGetHttp.getBasicInv(ids); - String key = basicExportStatusEntity.getId() + ""; - if (downstream.getParamValue().equals("1")) { - redisUtil.set(key, datas); - BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); - BeanUtils.copyProperties(basicExportStatusEntity, myEntity); - myEntity.setId(key); - basicExportService.insertExportStatus(myEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } else { - String path = getPath(); -// String fileName = path + FileConstant.upWaitCopy_products + "仓库字典" + key + ".udi"; -// String backFileName = path + FileConstant.upWaitCopy_products_back + "仓库字典" + key + ".udi"; - - String fileName = path + FileConstant.upWaitCopy_products + "BaseWarehouse" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - String backFileName = path + FileConstant.upWaitCopy_products_back + "BaseWarehouse" + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - -// FileUtils.makeDirectory(path); -// FileUtils.makeDirectory(path + "/备份/"); - FileUtils.SaveFileAs(datas, fileName); - FileUtils.SaveFileAs(datas, backFileName); - ThrImportLogEntity thrImportLogEntity = new ThrImportLogEntity(); - thrImportLogEntity.setGenKey(CustomUtil.getUUId()); - thrImportLogEntity.setImportType(BasicProcessStatus.IMPORT_LOG_TYPE_INV); - thrImportLogEntity.setUpdateTime(new Date()); - thrImportLogEntity.setFilePath(fileName); - thrImportLogEntity.setBackFilePath(backFileName); - thrImportLogService.insertImportLog(thrImportLogEntity); - spGetHttp.postDeleteBasicStatus(basicExportStatusEntity.getId()); - } - - } - } - } - } - } - - } - - -} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlSpOrderService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/DlSpOrderService.java deleted file mode 100644 index c96582e..0000000 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlSpOrderService.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.glxp.sale.admin.thread; - -import com.alibaba.fastjson.JSONObject; -import com.glxp.sale.admin.constant.FileConstant; -import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; -import com.glxp.sale.admin.entity.sync.*; -import com.glxp.sale.admin.http.SpGetHttp; -import com.glxp.sale.admin.res.PageSimpleResponse; -import com.glxp.sale.admin.res.sync.DlOrderResponse; -import com.glxp.sale.admin.service.param.SystemParamConfigService; -import com.glxp.sale.admin.service.sync.CodesService; -import com.glxp.sale.admin.service.sync.IOOrderStatusService; -import com.glxp.sale.admin.service.sync.OrderService; -import com.glxp.sale.admin.service.sync.ThrImportLogService; -import com.glxp.sale.admin.util.CustomUtil; -import com.glxp.sale.admin.util.DateUtil; -import com.glxp.sale.admin.util.FileUtils; -import com.glxp.sale.common.res.BaseResponse; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.scheduling.annotation.Async; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.io.File; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -@Service -public class DlSpOrderService { - @Resource - SpGetHttp spGetHttp; - @Resource - CodesService codesService; - @Resource - OrderService orderService; - @Resource - SystemParamConfigService systemParamConfigService; - @Resource - IOOrderStatusService ioOrderStatusService; - @Resource - private ThrImportLogService thrImportLogService; - - public String getPath() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("share_folder"); - String filePath = systemParamConfigEntity.getParamValue(); - return filePath; - } - - @Async - public void dlOrdedrs() { - - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (systemParamConfigEntity.getParamValue().equals("1")) { - String path = getPath(); - SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - BaseResponse> baseResponse = spGetHttp.getOrderStatus(); - PageSimpleResponse pageSimpleResponse = baseResponse.getData(); -// SystemParamConfigEntity folderConfig = systemParamConfigService.selectByParamKey("gen_order_folder"); -// SystemParamConfigEntity stausConfig = systemParamConfigService.selectByParamKey("gen_order_status"); - - - if (pageSimpleResponse != null) { - List ioOrderStatusEntityList = pageSimpleResponse.getList(); - if (ioOrderStatusEntityList != null && ioOrderStatusEntityList.size() > 0) { - for (IOOrderStatusEntity ioOrderStatusEntity : ioOrderStatusEntityList) { - BaseResponse> ordersRes = spGetHttp.getOrders(ioOrderStatusEntity.getOrderId()); - List dlOrderResponses = ordersRes.getData(); - if (dlOrderResponses != null && dlOrderResponses.size() > 0) { - for (DlOrderResponse dlOrderResponse : dlOrderResponses) { - OrderEntity orderEntity = dlOrderResponse.getOrderEntity(); - if (orderEntity != null) { - IOOrderStatusEntity temp = ioOrderStatusService.findByOrderId(orderEntity.getId()); - if (temp == null) {//避免重复操作插入 - if (Integer.parseInt(downstream.getParamValue()) == 1) { - IOOrderStatusEntity orderStatusEntity = new IOOrderStatusEntity(); - orderStatusEntity.setOrderId(orderEntity.getId()); - orderStatusEntity.setUpdateTime(new Date()); - orderStatusEntity.setStatus(1); - ioOrderStatusService.insertOrderStatus(orderStatusEntity); - List codes = dlOrderResponse.getCodes(); - orderService.insertOrder(orderEntity); - codesService.insertWarehouses(codes); - } else { - - String fileName = path + FileConstant.upWaitCopy_order + "Order" + orderEntity.getId() + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - String backFileName = path + FileConstant.upWaitCopy_order_back + "Order" + orderEntity.getId() + DateUtil.formatDate(new Date(), "yyyyMMddHHmmss") + ".LowerIn"; - List postOrders = new ArrayList<>(); - PostOrderRequest postOrderRequest = new PostOrderRequest(); - List warehouseEntityList = dlOrderResponse.getCodes(); - PostOrderRequest.PostOrder postOrder = new PostOrderRequest.PostOrder(); - postOrder.setCodes(warehouseEntityList); - postOrder.setBillType(orderEntity.getAction()); - postOrders.add(postOrder); - postOrderRequest.setPostOrders(postOrders); - String json = JSONObject.toJSON(postOrderRequest).toString(); -// FileUtils.makeDirectory(path); -// FileUtils.makeDirectory(path + "/备份/"); - FileUtils.SaveFileAs(json, fileName); - FileUtils.SaveFileAs(json, backFileName); - ThrImportLogEntity thrImportLogEntity = new ThrImportLogEntity(); - thrImportLogEntity.setGenKey(CustomUtil.getUUId()); - thrImportLogEntity.setImportType(1); - thrImportLogEntity.setUpdateTime(new Date()); - thrImportLogEntity.setFilePath(fileName); - thrImportLogEntity.setBackFilePath(backFileName); - thrImportLogEntity.setOrderId(orderEntity.getId()); - thrImportLogService.insertImportLog(thrImportLogEntity); - } - - spGetHttp.postOrder(orderEntity.getId()); - } - } - - - } - } - - } - } - } - } - } - -} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlUploadService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/DlUploadService.java deleted file mode 100644 index cf94d9e..0000000 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/DlUploadService.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.glxp.sale.admin.thread; - -import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; -import com.glxp.sale.admin.service.param.SystemParamConfigService; -import com.glxp.sale.admin.util.RedisUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; - -@Service -public class DlUploadService { - @Resource - RedisUtil redisUtil; - @Resource - SystemParamConfigService systemParamConfigService; - @Resource - DlSpOrderService dlSpOrderService; - @Resource - DlBasicService dlBasicService; - - final Logger logger = LoggerFactory.getLogger(DlUploadService.class); - - //定时从上游下载数据----下载单据 - public void dlOrder() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_order_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - //任务一,定时下载供应商平台已完成单据 - Long lastTime = (Long) redisUtil.get("DL_ORDER_STATUS"); - if (lastTime == null) { - lastTime = System.currentTimeMillis(); - redisUtil.set("DL_ORDER_STATUS", lastTime); - } - if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次单据下载"); - redisUtil.set("DL_ORDER_STATUS", curTime); - dlSpOrderService.dlOrdedrs(); - } - } - - //定时从上游下载数据----下载基础信息 - public void dlBasicUdiInfo() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_basic_udiinfo_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - Long lastTime = (Long) redisUtil.get("DL_BASIC_UDIINFO_STATUS"); - if (lastTime == null) { - lastTime = System.currentTimeMillis(); - redisUtil.set("DL_BASIC_UDIINFO_STATUS", lastTime); - } else if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次基础信息下载"); - redisUtil.set("DL_BASIC_UDIINFO_STATUS", curTime); - dlBasicService.dlBasicUdiInfo(); - dlBasicService.dlBasicCorp(); - dlBasicService.dlBasicInv(); - } - } - - - //定时扫描本地共享文件夹---上传到上游 - public void scanFolderUpload() { - SystemParamConfigEntity upConnect = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (upConnect.getParamValue().equals("1")) { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_basic_udiinfo_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - Long lastTime = (Long) redisUtil.get("DL_BASIC_UDIINFO_STATUS"); - if (lastTime == null) { - redisUtil.set("DL_BASIC_UDIINFO_STATUS", System.currentTimeMillis()); - } else if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次基础信息下载"); - redisUtil.set("DL_BASIC_UDIINFO_STATUS", curTime); - dlBasicService.dlBasicUdiInfo(); - dlBasicService.dlBasicCorp(); - dlBasicService.dlBasicInv(); - } - } - } - - //定时扫描本地共享文件夹---上传到上游 - public void scanFolderDown() { - SystemParamConfigEntity upConnect = systemParamConfigService.selectByParamKey("sync_upstream_enable"); - if (upConnect.getParamValue().equals("1")) { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_basic_udiinfo_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - Long lastTime = (Long) redisUtil.get("DL_BASIC_UDIINFO_STATUS"); - if (lastTime == null) { - redisUtil.set("DL_BASIC_UDIINFO_STATUS", System.currentTimeMillis()); - } else if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次基础信息下载"); - redisUtil.set("DL_BASIC_UDIINFO_STATUS", curTime); - dlBasicService.dlBasicUdiInfo(); - dlBasicService.dlBasicCorp(); - dlBasicService.dlBasicInv(); - } - } - } - - public void dlBasicCorp() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_basic_corp_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - //任务一,定时下载供应商平台已完成单据 - Long lastTime = (Long) redisUtil.get("DL_BASIC_CORP_STATUS"); - if (lastTime == null) { - redisUtil.set("DL_BASIC_CORP_STATUS", System.currentTimeMillis()); - } else if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次单据下载"); - redisUtil.set("DL_BASIC_CORP_STATUS", curTime); - dlBasicService.dlBasicCorp(); - } - } - - public void dlBasicInv() { - SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("dl_basic_inv_status"); - long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; - long curTime = System.currentTimeMillis(); - //任务一,定时下载供应商平台已完成单据 - Long lastTime = (Long) redisUtil.get("DL_BASIC_INV_STATUS"); - if (lastTime == null) { - redisUtil.set("DL_BASIC_INV_STATUS", System.currentTimeMillis()); - } else if (curTime - lastTime > timeInterval) { - logger.info("每分钟执行一次单据下载"); - redisUtil.set("DL_BASIC_INV_STATUS", curTime); - dlBasicService.dlBasicInv(); - } - } - -} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/HeartTask.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/HeartTask.java index c83345b..b491e96 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/HeartTask.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/HeartTask.java @@ -7,6 +7,7 @@ import com.glxp.sale.admin.http.SpGetHttp; import com.glxp.sale.admin.req.info.ScheduledRequest; import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.service.sync.IOOrderStatusService; +import com.glxp.sale.admin.thread.didl.AsyncDiDlService; import com.glxp.sale.admin.util.DateUtil; import com.glxp.sale.admin.util.RedisUtil; import org.slf4j.Logger; @@ -38,6 +39,8 @@ public class HeartTask implements SchedulingConfigurer { ScanDownloadService scanDownloadService; @Resource DlAllDataService dlAllDataService; + @Resource + AsyncDiDlService asyncDiDlService; @Override public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) { @@ -83,7 +86,7 @@ public class HeartTask implements SchedulingConfigurer { Long lastTime = (Long) redisUtil.get("UPLOAD_UDIINFO_STATUS"); if (lastTime == null) { lastTime = System.currentTimeMillis(); - redisUtil.set("UPLOAD_UDIINFO_STATUS", lastTime); + redisUtil.set("UPLOAD_UDIINFO_STATUS", lastTime, 30 * 60); } if (curTime - lastTime > timeInterval) { redisUtil.set("UPLOAD_UDIINFO_STATUS", curTime); @@ -97,21 +100,6 @@ public class HeartTask implements SchedulingConfigurer { private void scanDonwload() { SystemParamConfigEntity upConnect = systemParamConfigService.selectByParamKey("sync_downstream_enable"); -// if (upConnect.getParamValue().equals("1")) { -// SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sc_order_status"); -// long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; -// long curTime = System.currentTimeMillis(); -// //任务一,定时下载供应商平台已完成单据 -// Long lastTime = (Long) redisUtil.get("SC_ORDER_DOWNLOAD_STATUS"); -// if (lastTime == null) { -// lastTime = System.currentTimeMillis(); -// redisUtil.set("SC_ORDER_DOWNLOAD_STATUS", lastTime); -// } -// if (curTime - lastTime > timeInterval) { -// redisUtil.set("SC_ORDER_DOWNLOAD_STATUS", curTime); -// scanDownloadService.scanOrder(); -// } -// } if (upConnect.getParamValue().equals("1")) { SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sc_udiinfo_status"); @@ -128,12 +116,15 @@ public class HeartTask implements SchedulingConfigurer { scanDownloadService.scanAllBus(); scanDownloadService.scanAllOrder(); scanDownloadService.scanScheduleList(); + scanDownloadService.scanUdis(); } } } private void dlAllData() { + + logger.info("定时从上游下载全部据-----"); SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sc_udiinfo_status"); long timeInterval = Long.parseLong(systemParamConfigEntity.getParamValue()) * 60 * 1000; long curTime = System.currentTimeMillis(); @@ -148,12 +139,18 @@ public class HeartTask implements SchedulingConfigurer { } if (curTime - lastTime > timeInterval) { redisUtil.set("SC_UDIINFO_DOWNLOAD_STATUS", curTime); - dlAllDataService.dllNewAllData(); - dlAllDataService.dllNewAllOrder(); - dlAllDataService.dllNewAllBusType(); - dlAllDataService.dlScheduleStatus(); - + String doing = (String) redisUtil.get("is_doing_download"); + if (doing == null || doing.equals("false")) { + redisUtil.set("is_doing_download", "true", 60); + dlAllDataService.dllNewAllData(); + dlAllDataService.dllNewAllOrder(); + dlAllDataService.dllNewAllBusType(); + dlAllDataService.dlScheduleStatus(); + dlAllDataService.dlAllDi(); + redisUtil.set("is_doing_download", "false"); + } } + logger.info("定时从上游下载全部据-----结束"); } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanDownloadService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanDownloadService.java index f489556..4f90a8e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanDownloadService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanDownloadService.java @@ -38,8 +38,6 @@ import java.util.List; @Service public class ScanDownloadService { - @Resource - IOOrderStatusService ioOrderStatusService; @Resource RedisUtil redisUtil; @Resource @@ -55,138 +53,6 @@ public class ScanDownloadService { return filePath; } - public void scanOrder() { - logger.info("扫描单据生成状态表等待下载!"); - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitDownload_order), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - - String data = FileUtils.readFileAll(file.getPath()); - IOOrderStatusEntity orderStatusEntity = new IOOrderStatusEntity(); - String fileName; - String orderId = null; - try { - fileName = file.getName(); - orderId = fileName.substring(4, fileName.length() - 4); - if (!fileName.contains(".LowerIn")) { - errorFile(file); - continue; - } - } catch (Exception e) { - e.printStackTrace(); - errorFile(file); - //文件格式异常 - continue; - } - orderStatusEntity.setOrderId(orderId); - orderStatusEntity.setUpdateTime(new Date()); - orderStatusEntity.setStatus(1); - ioOrderStatusService.insertOrderStatus(orderStatusEntity); - redisUtil.set(orderId, data); - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_order_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - - - public void errorFile(File file) { - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_order_error + file.getName()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - - public void scanUdi() { - logger.info("扫描耗材字典生成状态表等待下载!"); - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitDownload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseProduct") && file.getName().contains("LowerIn")) { - String data = FileUtils.readFileAll(file.getPath()); - BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity(); - String fileName = file.getName(); - String id = fileName.substring(4, fileName.length() - 4); - basicExportStatusEntity.setId(id); - basicExportStatusEntity.setUpdateTime(new Date()); - basicExportStatusEntity.setStatus(1); - basicExportStatusEntity.setIdDatas(file.getPath()); - basicExportStatusEntity.setType(BasicProcessStatus.BASIC_UDI); - basicExportService.insertExportStatus(basicExportStatusEntity); - redisUtil.set(id, data); - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - - } - } - } - - public void scanCorp() { - logger.info("扫描往来单位生成状态表等待下载!"); - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitDownload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseCorp") && file.getName().contains("LowerIn")) { - String data = FileUtils.readFileAll(file.getPath()); - BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity(); - String fileName = file.getName(); - String id = fileName.substring(4, fileName.length() - 4); - basicExportStatusEntity.setId(id); - basicExportStatusEntity.setUpdateTime(new Date()); - basicExportStatusEntity.setStatus(1); - basicExportStatusEntity.setIdDatas(file.getPath()); - basicExportStatusEntity.setType(BasicProcessStatus.BASIC_CORP); - basicExportService.insertExportStatus(basicExportStatusEntity); - redisUtil.set(id, data); - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - - public void scanInv() { - logger.info("扫描仓库字典生成状态表等待下载!"); - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitDownload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseWarehouse") && file.getName().contains("LowerIn")) { - String data = FileUtils.readFileAll(file.getPath()); - BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity(); - String fileName = file.getName(); - String id = fileName.substring(4, fileName.length() - 4); - basicExportStatusEntity.setId(id); - basicExportStatusEntity.setUpdateTime(new Date()); - basicExportStatusEntity.setStatus(1); - basicExportStatusEntity.setIdDatas(file.getPath()); - basicExportStatusEntity.setType(BasicProcessStatus.BASIC_INV); - basicExportService.insertExportStatus(basicExportStatusEntity); - redisUtil.set(id, data); - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - public void scanAllData() { logger.info("扫描基础信息文件生成状态表等待下载!"); @@ -307,5 +173,36 @@ public class ScanDownloadService { } } + public void scanUdis() { + logger.info("扫描UDI数据生成状态表等待下载!"); + File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitDownload_products), new FileFilterImpl()); + if (files != null && files.length > 0) { + for (int i = 0; i < files.length; i++) { + File file = files[i]; + if (file.getName().contains("UdiPrdoucts") && file.getName().contains("LowerIn")) { + String data = FileUtils.readFileAll(file.getPath()); + BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity(); + String fileName = file.getName(); + basicExportStatusEntity.setId(fileName); + basicExportStatusEntity.setUpdateTime(new Date()); + basicExportStatusEntity.setStatus(1); + basicExportStatusEntity.setIdDatas(file.getPath()); + basicExportStatusEntity.setType(BasicProcessStatus.NEW_ALL_UDIS); + basicExportStatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL); + basicExportService.insertExportStatus(basicExportStatusEntity); + SpsSyncOrderResponse baseResponse = + JSONObject.parseObject(data, new TypeReference() { + }); + redisUtil.set(fileName, baseResponse); + try { + FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitDownload_products_back + file.getName()); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + } + } + } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanUploadService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanUploadService.java index e2b98d9..2793107 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanUploadService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/ScanUploadService.java @@ -46,154 +46,6 @@ public class ScanUploadService { return filePath; } - public void scanOrder() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_order), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - String data = FileUtils.readFileAll(file.getPath()); - DlOrderResponse dlOrderResponse = JSON.parseObject(data, DlOrderResponse.class); - BaseResponse baseResponse = spPostHttp.postOrder(dlOrderResponse); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_order_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - - } - } - } - - public void scanUdi() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseProduct") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - UdiRelevanceExportJsonResponse udiRelevanceExportJsonResponse = JSON.parseObject(data, UdiRelevanceExportJsonResponse.class); - BaseResponse baseResponse = spPostHttp.postUdiInfo(udiRelevanceExportJsonResponse); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - - } - } - } - - public void scanCorp() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseCorp") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - BasicUnitMaintainExportResponse basicUnitMaintainExportResponse = JSON.parseObject(data, BasicUnitMaintainExportResponse.class); - BaseResponse baseResponse = spPostHttp.postCorp(basicUnitMaintainExportResponse); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - } - - public void scanInv() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("BaseWarehouse") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - InvWarehouseExportResponse invWarehouseExportResponse = JSON.parseObject(data, InvWarehouseExportResponse.class); - BaseResponse baseResponse = spPostHttp.postInv(invWarehouseExportResponse); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - } - - public void scanThirdProducts() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("ThirdWarehouse") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - PostThrProductsRequest postThrProductsRequest = JSON.parseObject(data, PostThrProductsRequest.class); - BaseResponse baseResponse = spPostHttp.postThirdProducts(postThrProductsRequest); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - } - - - public void scanThirdCorp() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("ThirdCorp") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - PostThrCorpRequest postThrCorpRequest = JSON.parseObject(data, PostThrCorpRequest.class); - BaseResponse baseResponse = spPostHttp.postThirdCorps(postThrCorpRequest); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - } - - public void scanThirdOrder() { - File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); - if (files != null && files.length > 0) { - for (int i = 0; i < files.length; i++) { - File file = files[i]; - if (file.getName().contains("ThirdOrder") && file.getName().contains("UpperIn")) { - String data = FileUtils.readFileAll(file.getPath()); - ThrOrderExportJsonResponse thrOrderExportJsonResponse = JSON.parseObject(data, ThrOrderExportJsonResponse.class); - BaseResponse baseResponse = spPostHttp.postThirdOrders(thrOrderExportJsonResponse); - if (baseResponse.getCode() == 20000) {//上传成功 - try { - FileUtils.CutFile(file.getPath(), getPath() + FileConstant.waitUpload_products_back + file.getName()); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - } - } - public void scanAllDatas() { File[] files = FileUtils.listCurentAll(new File(getPath() + FileConstant.waitUpload_products), new FileFilterImpl()); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncCompanyDlService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncCompanyDlService.java index 28dfbc3..33b125c 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncCompanyDlService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncCompanyDlService.java @@ -48,7 +48,7 @@ public class AsyncCompanyDlService { int limit = 300; while (true) { logger.info("更新时间:" + updateTime + "----" + page + "----" + limit); - List udiCompanyEntities = asyncDiDlHelper.dlCompanyByTime(null, page, limit, updateTime); + List udiCompanyEntities = asyncDiDlHelper.dlCompanyByTime(page, limit, updateTime); if (udiCompanyEntities != null && udiCompanyEntities.size() > 0) { mUdiCompanyEntities.addAll(udiCompanyEntities); if (udiCompanyEntities.size() < limit) { @@ -63,7 +63,7 @@ public class AsyncCompanyDlService { logger.info("更新时间:" + updateTime + "----" + "下载结束"); SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - String key = "dlcompany" + System.currentTimeMillis(); + String key = "UdiCompanys" + System.currentTimeMillis(); String datas = JSON.toJSON(mUdiCompanyEntities).toString(); if (downstream.getParamValue().equals("1")) { redisUtil.set(key, datas); @@ -72,7 +72,7 @@ public class AsyncCompanyDlService { basicExportService.insertExportStatus(myEntity); } else { String path = getPath(); - String fileName = path + FileConstant.upWaitCopy_products + "同步库企业信息_" + key + ".udi"; + String fileName = path + FileConstant.upWaitCopy_products + "UdiCompanys_" + key + ".LowerIn"; FileUtils.SaveFileAs(datas, fileName); } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlHelper.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlHelper.java index ad0888b..c290f66 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlHelper.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlHelper.java @@ -7,11 +7,13 @@ import com.glxp.sale.admin.http.UHttpClient; import com.glxp.sale.common.res.BaseResponse; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.HttpHeaders; +import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; import java.util.Map; +@Service public class AsyncDiDlHelper { @Value("${SPMS_IP}") private String spmsUrl; @@ -28,7 +30,7 @@ public class AsyncDiDlHelper { return headers; } - public List dlByTime(String udiUrl, int page, int limit, String updateTime) { + public List dlByTime(int page, int limit, String updateTime) { Map paramMap = new HashMap<>(16); paramMap.put("page", page); paramMap.put("limit", limit); @@ -45,7 +47,7 @@ public class AsyncDiDlHelper { } - public List dlCompanyByTime(String udiUrl, int page, int limit, String updateTime) { + public List dlCompanyByTime(int page, int limit, String updateTime) { Map paramMap = new HashMap<>(16); paramMap.put("page", page); paramMap.put("limit", limit); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlService.java index b34e519..15ca806 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlService.java @@ -7,6 +7,8 @@ import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; import com.glxp.sale.admin.entity.sync.BasicExportStatusEntity; import com.glxp.sale.admin.entity.sync.ProductInfoEntity; import com.glxp.sale.admin.entity.sync.ThrImportLogEntity; +import com.glxp.sale.admin.entity.sync.UdiCompanyEntity; +import com.glxp.sale.admin.res.sync.SpSyncUdiResponse; import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.service.sync.BasicExportService; import com.glxp.sale.admin.util.CustomUtil; @@ -35,18 +37,19 @@ public class AsyncDiDlService { private static final Logger logger = LoggerFactory.getLogger(AsyncDiDlService.class); - @Async - public void asyncDiByTime(String updateTime) { + public void dlSyncUdi(String updateTime) { SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sync_upstream_enable"); + + //更新DI信息 if (systemParamConfigEntity.getParamValue().equals("1")) { AsyncDiDlHelper asyncDiDlHelper = new AsyncDiDlHelper(); List mProductInfoEntities = new ArrayList<>(); int page = 1; - int limit = 200; + int limit = 300; while (true) { logger.info("更新时间:" + updateTime + "----" + page + "----" + limit); - List productInfoEntityList = asyncDiDlHelper.dlByTime(null, page, limit, updateTime); + List productInfoEntityList = asyncDiDlHelper.dlByTime(page, limit, updateTime); if (productInfoEntityList != null && productInfoEntityList.size() > 0) { mProductInfoEntities.addAll(productInfoEntityList); if (productInfoEntityList.size() < limit) { @@ -58,9 +61,33 @@ public class AsyncDiDlService { break; } } + //更新企业信息 + List mUdiCompanyEntities = new ArrayList<>(); + int page1 = 1; + int limit1 = 300; + while (true) { + logger.info("更新时间:" + updateTime + "----" + page1 + "----" + limit1); + List udiCompanyEntities = asyncDiDlHelper.dlCompanyByTime(page1, limit1, updateTime); + if (udiCompanyEntities != null && udiCompanyEntities.size() > 0) { + mUdiCompanyEntities.addAll(udiCompanyEntities); + if (udiCompanyEntities.size() < limit1) { + break; + } else { + page1++; + } + } else { + break; + } + } + + + SpSyncUdiResponse spSyncUdiResponse = new SpSyncUdiResponse(); + spSyncUdiResponse.setUdiCompanyEntities(mUdiCompanyEntities); + spSyncUdiResponse.setProductInfoEntityList(mProductInfoEntities); + SystemParamConfigEntity downstream = systemParamConfigService.selectByParamKey("sync_downstream_enable"); - String key = "dlDi" + System.currentTimeMillis(); - String datas = JSON.toJSON(mProductInfoEntities).toString(); + String key = "UdiPrdoucts" + System.currentTimeMillis(); + String datas = JSON.toJSON(spSyncUdiResponse).toString(); if (downstream.getParamValue().equals("1")) { redisUtil.set(key, datas); BasicExportStatusEntity myEntity = new BasicExportStatusEntity(); @@ -68,7 +95,7 @@ public class AsyncDiDlService { basicExportService.insertExportStatus(myEntity); } else { String path = getPath(); - String fileName = path + FileConstant.upWaitCopy_products + "同步库DI信息_" + key + ".udi"; + String fileName = path + FileConstant.upWaitCopy_products + "UdiPrdoucts_" + key + ".LowerIn"; FileUtils.SaveFileAs(datas, fileName); } logger.info("更新时间:" + updateTime + "----" + "下载结束"); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlTask.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlTask.java index dfc6f5f..6a11203 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlTask.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/didl/AsyncDiDlTask.java @@ -42,18 +42,17 @@ public class AsyncDiDlTask implements SchedulingConfigurer { return new CronTrigger(cron).nextExecutionTime(triggerContext); }); } - private void process() { - String day = DateUtil.getLastDayFormat(-1); - asyncDiDlService.asyncDiByTime(day); - - - String lastUpDiTime = (String) redisUtil.get("lastDiUpTime"); - if (lastUpDiTime == null) { - lastUpDiTime = DateUtil.getLastDayFormat(-10); - } - asyncDiDlService.asyncDiByTime(lastUpDiTime); - redisUtil.set("lastDiUpTime", DateUtil.formatDate(new Date())); +// String day = DateUtil.getLastDayFormat(-1); +// asyncDiDlService.asyncDiByTime(day); +// +// +// String lastUpDiTime = (String) redisUtil.get("lastDiUpTime"); +// if (lastUpDiTime == null) { +// lastUpDiTime = DateUtil.getLastDayFormat(-10); +// } +// asyncDiDlService.asyncDiByTime(lastUpDiTime); +// redisUtil.set("lastDiUpTime", DateUtil.formatDate(new Date())); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/util/DateUtil.java b/api-admin/src/main/java/com/glxp/sale/admin/util/DateUtil.java index a577eec..c9645c4 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/util/DateUtil.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/util/DateUtil.java @@ -499,4 +499,20 @@ public class DateUtil extends org.apache.commons.lang3.time.DateUtils { String formatDate = smdate.format(calendar.getTime()); return formatDate; } + + public static String getBeforeDay(int day) { + try { + long time = new Date().getTime(); + long move = day * 24 * 1000 * 60 * 60; + time = time - move; + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date = new Date(time); + String res = simpleDateFormat.format(date); + return res; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + } \ No newline at end of file diff --git a/api-admin/src/main/resources/application-pro.properties b/api-admin/src/main/resources/application-pro.properties index 2784891..9174527 100644 --- a/api-admin/src/main/resources/application-pro.properties +++ b/api-admin/src/main/resources/application-pro.properties @@ -31,11 +31,12 @@ back_file_path=D:/share/udisps/back/ spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.time-zone=GMT+8 -#UDIWMS_IP=http://139.159.187.130:8080/UDI_WMS_MC #UDI管理系统地址 -UDIWMS_IP=http://127.0.0.1:9991 +UDIWMS_IP=http://139.9.178.73:8080/UDI_WMS_MC +#UDIWMS_IP=http://127.0.0.1:9991 #自助平台地址 SPMS_IP=http://127.0.0.1:9996 +#SPMS_IP=http://139.9.178.73:8080/SPMS_SERVER API_KEY=1101 API_SECRET=zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L #SPMS_IP=http://139.159.187.130:8080/SPMS_SERVER diff --git a/api-admin/src/main/resources/logback-spring.xml b/api-admin/src/main/resources/logback-spring.xml index bd4c40d..d3940ba 100644 --- a/api-admin/src/main/resources/logback-spring.xml +++ b/api-admin/src/main/resources/logback-spring.xml @@ -40,7 +40,7 @@ - /www/glxpdata/spsync/logs/${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log + d://wmslog/SP_SYNC_SERVER/logs/${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log 30 - /www/glxpdata/spsync/logs/${LOG_ERROR_HOME}//%d{yyyy-MM-dd}_%i.log + d://wmslog/SP_SYNC_SERVER/logs/${LOG_ERROR_HOME}//%d{yyyy-MM-dd}_%i.log 30