From 807cd9ec35eba09acf0a227b5f14ed097b085de3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=95=B8=E9=9D=9E?= <8153694@qq.com> Date: Tue, 26 Mar 2024 17:20:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xhx/common/pdu/product/ProductPdu.java | 33 +++++++ .../xhx/feign/device/IDeviceFeign.java | 17 ++++ .../daemon/task/SyncSiteDeviceTaskImpl.java | 98 ++++--------------- .../xhx/module/device/model/DeviceEntity.java | 2 +- 4 files changed, 71 insertions(+), 79 deletions(-) create mode 100644 common-lib/src/main/java/com/mortals/xhx/common/pdu/product/ProductPdu.java diff --git a/common-lib/src/main/java/com/mortals/xhx/common/pdu/product/ProductPdu.java b/common-lib/src/main/java/com/mortals/xhx/common/pdu/product/ProductPdu.java new file mode 100644 index 0000000..4677274 --- /dev/null +++ b/common-lib/src/main/java/com/mortals/xhx/common/pdu/product/ProductPdu.java @@ -0,0 +1,33 @@ +package com.mortals.xhx.common.pdu.product; + +import lombok.Data; + +/** + * 浜у搧瀹炰綋瀵硅薄 + * + * @author zxfei + * @date 2022-11-09 + */ +@Data +public class ProductPdu { + + + /** + * id + */ + private Long id; + /** + * 鍏宠仈骞冲彴 + */ + private Long platformId; + /** + * 浜у搧鍚嶇О锛屽悕绉板敮涓€ + */ + private String productName; + /** + * 浜у搧缂栫爜 + */ + private String productCode; + + +} \ No newline at end of file diff --git a/common-lib/src/main/java/com/mortals/xhx/feign/device/IDeviceFeign.java b/common-lib/src/main/java/com/mortals/xhx/feign/device/IDeviceFeign.java index 7a0b1e4..f501bec 100644 --- a/common-lib/src/main/java/com/mortals/xhx/feign/device/IDeviceFeign.java +++ b/common-lib/src/main/java/com/mortals/xhx/feign/device/IDeviceFeign.java @@ -6,6 +6,7 @@ import com.mortals.xhx.common.pdu.device.DevicePdu; import com.alibaba.fastjson.JSON; import com.mortals.framework.common.Rest; import com.mortals.xhx.common.pdu.device.DeviceReq; +import com.mortals.xhx.common.pdu.product.ProductPdu; import com.mortals.xhx.feign.IFeign; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; @@ -74,6 +75,17 @@ public interface IDeviceFeign extends IFeign { @PostMapping(value = "/api/receive") Rest<String> deviceCall(@RequestBody DeviceReq deviceReq); + + /** + * 鏌ョ湅璁惧鍒楄〃 + * + * @param productPdu + * @return + */ + @PostMapping(value = "/product/interlist") + Rest<RespData<List<ProductPdu>>> list(@RequestBody ProductPdu productPdu); + + } @@ -107,6 +119,11 @@ class DeviceFeignFallbackFactory implements FallbackFactory<IDeviceFeign> { public Rest<String> deviceCall(DeviceReq deviceReq) { return Rest.fail("鏆傛椂鏃犳硶淇濆瓨璁惧锛岃绋嶅悗鍐嶈瘯!"); } + + @Override + public Rest<RespData<List<ProductPdu>>> list(ProductPdu productPdu) { + return Rest.fail("璇风◢鍚庡啀璇�!"); + } }; } } diff --git a/sample-form-manager/src/main/java/com/mortals/xhx/daemon/task/SyncSiteDeviceTaskImpl.java b/sample-form-manager/src/main/java/com/mortals/xhx/daemon/task/SyncSiteDeviceTaskImpl.java index 7240019..7a589cd 100644 --- a/sample-form-manager/src/main/java/com/mortals/xhx/daemon/task/SyncSiteDeviceTaskImpl.java +++ b/sample-form-manager/src/main/java/com/mortals/xhx/daemon/task/SyncSiteDeviceTaskImpl.java @@ -10,6 +10,7 @@ import com.mortals.framework.service.ITaskExcuteService; import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.common.pdu.RespData; import com.mortals.xhx.common.pdu.device.DevicePdu; +import com.mortals.xhx.common.pdu.product.ProductPdu; import com.mortals.xhx.common.pdu.site.SiteMatterPdu; import com.mortals.xhx.common.pdu.site.SitePdu; import com.mortals.xhx.common.pdu.skin.SkinBasePdu; @@ -72,17 +73,30 @@ public class SyncSiteDeviceTaskImpl implements ITaskExcuteService { } private void syncDevice() { + Long productId = null; + ProductPdu productPdu = new ProductPdu(); + productPdu.setProductCode("ybj"); + Rest<RespData<List<ProductPdu>>> rest = deviceFeign.list(productPdu); + if (rest.getCode() == YesNoEnum.YES.getValue() && !ObjectUtils.isEmpty(rest.getData())) { + if (!ObjectUtils.isEmpty(rest.getData().getData())) { + ProductPdu pdu = rest.getData().getData().get(0); + productId = pdu.getId(); + } + } + SitePdu sitePdu = new SitePdu(); sitePdu.setId(1L); Rest<List<SitePdu>> siteRest = siteFeign.getFlatSitesBySiteId(sitePdu); if (siteRest.getCode() == YesNoEnum.YES.getValue()) { log.info("绔欑偣鎬绘暟閲忥細{}", siteRest.getData().size()); - siteRest.getData().forEach(site -> { + for (SitePdu site : siteRest.getData()) { log.info("绔欑偣鍚嶇О:{}", site.getSiteName()); DevicePdu devicePdu = new DevicePdu(); - //devicePdu.setProductCode("ybj"); - //devicePdu.setProductId(10L); - devicePdu.setProductName("鏍疯〃鏈�"); + if (!ObjectUtils.isEmpty(productId)) { + devicePdu.setProductId(productId); + } else { + devicePdu.setProductName("鏍疯〃鏈�"); + } devicePdu.setSiteId(site.getId()); devicePdu.setSize(-1); Rest<RespData<List<DevicePdu>>> deviceRest = deviceFeign.list(devicePdu); @@ -141,7 +155,7 @@ public class SyncSiteDeviceTaskImpl implements ITaskExcuteService { if (!ObjectUtils.isEmpty(updateDeviceLsit)) { log.info("璁惧鏇存柊锛宻ize:{}", updateDeviceLsit.size()); - deviceService.update(updateDeviceLsit); + deviceService.update(updateDeviceLsit); } if (!ObjectUtils.isEmpty(saveDeviceList)) { @@ -157,84 +171,12 @@ public class SyncSiteDeviceTaskImpl implements ITaskExcuteService { } else { log.info("璁惧鍒楄〃鏌ヨ寮傚父锛寋}", JSON.toJSONString(deviceRest)); } - }); + } } else { log.info("绔欑偣鍒楄〃鏌ヨ寮傚父锛寋}", JSON.toJSONString(siteRest)); } } - /* private void syncSkin() { - - SkinBasePdu skinBasePdu = new SkinBasePdu(); - skinBasePdu.setProductName("鏍疯〃鏈�"); - skinBasePdu.setSize(-1); - - Rest<RespData<List<SkinBasePdu>>> skinBaseRest = skinBaseFeign.list(skinBasePdu); - if (skinBaseRest.getCode() == YesNoEnum.YES.getValue()) { - List<SkinBasePdu> skinBasePduList = skinBaseRest.getData().getData(); - log.info("鏍疯〃鏈虹毊鑲ゆ€绘暟閲忥細{}", skinBasePduList.size()); - if (!ObjectUtils.isEmpty(skinBasePduList)) { - List<SkinEntity> newSkinList = skinBasePduList.stream().map(newSkin -> { - SkinEntity skinEntity = new SkinEntity(); - skinEntity.initAttrValue(); - //瀛樼浉瀵瑰湴鍧€ - newSkin.setCssFilePath("/"+StrUtil.subAfter(newSkin.getCssFilePath(), "/", true)); - newSkin.setPreviewImagePath("/"+StrUtil.subAfter(newSkin.getPreviewImagePath(), "/", true)); - BeanUtils.copyProperties(newSkin, skinEntity, BeanUtil.getNullPropertyNames(newSkin)); - return skinEntity; - }).collect(Collectors.toList()); - - List<SkinEntity> oldSkinList = skinService.find(new SkinQuery()); - Map<Long, SkinEntity> oldSkinMap = oldSkinList.stream().collect(Collectors.toMap(x -> x.getId(), y -> y, (o, n) -> n)); - Map<Long, SkinEntity> newSkinMap = newSkinList.stream().collect(Collectors.toMap(x -> x.getId(), y -> y, (o, n) -> n)); - - List<SkinEntity> updateSkinLsit = newSkinList.stream().map(item -> { - if (oldSkinMap.containsKey(item.getId())) { - item.setUsed(oldSkinMap.get(item.getId()).getUsed()); - item.setUpdateTime(new Date()); - return item; - } - return null; - }).filter(f -> f != null).collect(Collectors.toList()); - - List<SkinEntity> saveSkinList = newSkinList.stream().map(item -> { - if (!oldSkinMap.containsKey(item.getId())) { - item.setCreateUserId(1L); - item.setCreateUserName("绯荤粺绠$悊鍛�"); - item.setCreateTime(new Date()); - return item; - } - return null; - }).filter(f -> f != null).collect(Collectors.toList()); - - - //鍋氬樊闆� - List<Long> delSkinList = oldSkinList.stream().map(item -> { - if (!newSkinMap.containsKey(item.getId())) { - return item.getId(); - } - return null; - }).filter(f -> f != null).collect(Collectors.toList()); - - -// if (!ObjectUtils.isEmpty(updateSkinLsit)) { -// log.info("鐨偆鏇存柊锛宻ize:{}", updateSkinLsit.size()); -// skinService.update(updateSkinLsit); -// } - - if (!ObjectUtils.isEmpty(saveSkinList)) { - log.info("鐨偆鏂板锛宻ize:{}", saveSkinList.size()); - skinService.save(saveSkinList); - } - - if (!ObjectUtils.isEmpty(delSkinList)) { - log.info("鐨偆鍒犻櫎锛宻ize:{}", delSkinList.size()); - skinService.remove(delSkinList, null); - } - - } - } - }*/ @Override public void stopTask(ITask task) throws AppException { diff --git a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java index 0cc867b..299bc95 100644 --- a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java +++ b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java @@ -160,7 +160,7 @@ public class DeviceEntity extends DeviceVo { this.deviceFirmname = ""; this.ip = ""; this.port = ""; - this.enabled = 0; + this.enabled = 1; this.productCode = ""; this.productName = ""; this.deviceSrc = 2; -- 2.24.3