From 75bdadc0c4e468217b93142d965cd92ee52838ec Mon Sep 17 00:00:00 2001 From: vince <757871790@qq.com> Date: 星期一, 20 五月 2024 09:01:27 +0800 Subject: [PATCH] 粮情协议优化 --- src/main/java/com/fzzy/gateway/GatewayTimerScheduled.java | 93 ++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 89 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/fzzy/gateway/GatewayTimerScheduled.java b/src/main/java/com/fzzy/gateway/GatewayTimerScheduled.java index 302fc5e..cdefca1 100644 --- a/src/main/java/com/fzzy/gateway/GatewayTimerScheduled.java +++ b/src/main/java/com/fzzy/gateway/GatewayTimerScheduled.java @@ -2,13 +2,19 @@ import com.alibaba.fastjson.JSON; import com.fzzy.api.data.GatewayDeviceProtocol; +import com.fzzy.api.data.GatewayDeviceType; +import com.fzzy.api.utils.DateUtil; import com.fzzy.data.ConfigData; import com.fzzy.gateway.api.GatewayRemoteManager; +import com.fzzy.gateway.api.GatewayRemoteService; +import com.fzzy.gateway.api.GatewaySyncGranService; import com.fzzy.gateway.data.BaseReqData; +import com.fzzy.gateway.data.BaseResp; import com.fzzy.gateway.data.WeatherWebDto; import com.fzzy.gateway.entity.GatewayConf; import com.fzzy.gateway.entity.GatewayDevice; import com.fzzy.gateway.service.GatewayConfService; +import com.fzzy.gateway.service.GatewayDeviceTestPR; import com.fzzy.gateway.util.GatewayHttpUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; @@ -16,10 +22,7 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 缃戝叧鐩稿叧鐨勫畾鏃跺櫒 @@ -43,6 +46,8 @@ @Resource private ConfigData configData; + @Resource + private GatewayDeviceTestPR gatewayDeviceTestPR; /** * <p> @@ -55,6 +60,86 @@ doHeartbeat(); } + /** + * <p> + * 绮儏姣忓ぉ11鐐圭┛涓婂尯 + */ + @Scheduled(cron = "0 0 11 * * ?") + public void scheduledGrain() { + //鑾峰彇璁惧閰嶇疆锛屽彧閽堝绮儏璁惧杩涜鎵ц + log.info("瀹氭椂kafka绮儏鎺ㄩ��"); + List<GatewayDevice> list = gatewayDeviceTestPR.listAll(); + + if (null == list || list.isEmpty()) { + log.error("涓鸿幏鍙栧埌绯荤粺涓澶囬厤缃紝鍙栨秷鎵ц\""); + return ; + } + BaseReqData reqData; + BaseResp resp; + for (GatewayDevice device : list) { + + //濡傛灉涓嶆槸绮儏鍒嗘満璺宠繃 + if (!GatewayDeviceType.TYPE_07.getCode().equals(device.getType())) { + continue; + } + reqData = new BaseReqData(); + reqData.setProductId(device.getProductId()); + reqData.setDeviceName(device.getDeviceName()); + reqData.setDeviceId(device.getDeviceId()); + reqData.setDayTime(new Date()); + reqData.setDevice(device); + + //鑾峰彇鍒� + resp = gatewayRemoteManager.getGatewayTestService(device.getPushProtocol()).testGrainKafka(reqData); + log.info("resp = "+resp.toString()); + //鑷姩鎺ㄩ�� + if (BaseResp.CODE_200 == resp.getCode()) { + reqData.setData(resp.getData()); + gatewayRemoteManager.getDeviceReportService(device.getPushProtocol()).reportGrainDataByHand(reqData); + } + } + } + + + + /** + * <p> + * 绮儏姣忓ぉ8鐐归噰闆嗙伯鎯� + * + */ +// @Scheduled(cron = "0 32 11 ? * *") + @Scheduled(cron = "0 32 11 ? * 2,5 *") + public void scheduledGrain2() { + //鑾峰彇璁惧閰嶇疆锛屽彧閽堝绮儏璁惧杩涜鎵ц + log.info("瀹氭椂绮儏閲囬泦kafka鎺ㄩ��"); + List<GatewayDevice> list = gatewayDeviceTestPR.listAll(); + + if (null == list || list.isEmpty()) { + log.error("涓鸿幏鍙栧埌绯荤粺涓澶囬厤缃紝鍙栨秷鎵ц\""); + return ; + } + BaseReqData reqData = new BaseReqData(); + BaseResp resp; + for (GatewayDevice device : list) { + try{ + //濡傛灉涓嶆槸绮儏鍒嗘満璺宠繃 + if (!GatewayDeviceType.TYPE_07.getCode().equals(device.getType())) { + continue; + } + reqData.setDeviceId(device.getDeviceId()); + reqData.setProductId(device.getProductId()); + reqData.setDeviceName(device.getDeviceName()); + reqData.setDevice(device); + reqData.setAutoReplay(true); + GatewaySyncGranService syncGrainService = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()); + resp = syncGrainService.syncGrain(reqData); + log.info("鍛戒护鍙戦�佺粨鏋滐細"+resp.toString()); + Thread.sleep(30000); + }catch (Exception e){ + log.error(e.getMessage(),e); + } + } + } /** * <p> -- Gitblit v1.9.3