From b5ae703a499b97fd83dd9a7b67a10a7b8157df5f Mon Sep 17 00:00:00 2001 From: aijinhui <aijinhui> Date: 星期四, 09 十一月 2023 13:29:54 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java | 35 +++++++++++++++++++++++++++-------- 1 files changed, 27 insertions(+), 8 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java index 0c01de8..1dc9796 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java +++ b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java @@ -8,19 +8,18 @@ package com.ruoyi.sy.gps31; import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; import com.gps31.push.netty.PushClient; import com.gps31.push.netty.PushMsg; import com.gps31.push.netty.client.TcpClient; import com.gps31.push.util.MapUtil; import com.ruoyi.common.utils.spring.SpringUtils; -import com.ruoyi.sy.domain.ArdAccessFence; -import com.ruoyi.sy.domain.ArdAccessNum; -import com.ruoyi.sy.domain.ArdOilWall; -import com.ruoyi.sy.domain.ArdSyCarLock; +import com.ruoyi.sy.domain.*; import com.ruoyi.sy.service.ArdAccessFenceService; import com.ruoyi.sy.service.ArdOilWallService; import com.ruoyi.sy.service.impl.*; import com.ruoyi.utils.gps.GeoTools; +import com.ruoyi.utils.mqtt.MqttConsumer; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -83,7 +82,7 @@ ((ArdSyCarDayServiceImpl)SpringUtils.getBean("ardSyCarDayServiceImpl")).insertArdSyCarDay(carId);//鏂板杞﹁締涓婃姤鏃堕棿 Map<String,Object> result = ((ArdSyCarServiceImpl)SpringUtils.getBean("ardSyCarServiceImpl")).getArdSyCarAndDeptByCarId(carId);//鏌ヨ杞﹁締鍙婇儴闂� if(result != null){ - //娓呮筏鍏ユ爮寮�濮�---------- + //娓呮筏寮�濮�---------- String lng = (String) gpsMap.get("lng").toString();//鑾峰彇缁忓害 String lat = (String) gpsMap.get("lat").toString();//鑾峰彇绾害 String carName = (String) gpsMap.get("carName");//鑾峰彇杞︾墝鍙� @@ -91,7 +90,7 @@ String deptNum = (String) result.get("deptId").toString();//鑾峰彇閮ㄩ棬ID String deptName = (String) result.get("deptName");//鑾峰彇閮ㄩ棬鍚嶇О String carModel = (String) result.get("carModel");//鑾峰彇杞﹁締妯″瀷 - String drct = (String) gpsMap.get("drct");//鑾峰彇杞﹁締妯″瀷 + Integer drct = (Integer) gpsMap.get("drct");//鑾峰彇杞﹁締妯″瀷 //瀹氫箟2缁寸┖闂� Point2D.Double point = new Point2D.Double(Double.parseDouble(lng), Double.parseDouble(lat)); List<Point2D.Double> pts = new ArrayList<Point2D.Double>(); @@ -183,7 +182,6 @@ break; } } - ((ArdAccessFenceServiceImpl)SpringUtils.getBean("ArdAccessFenceServiceImpl")).updAccess(ardAccessFence); }else { //濡傛灉鏈夎繘鍏ュ洿鏍廔D锛屽垽鏂槸鍚﹀紑鍑鸿娌圭偣 String out = ardAccessFence.getOutShipmentId(); @@ -212,9 +210,10 @@ //濡傛灉unload涓虹┖锛屽垽鏂槸鍚﹁繘鍏ュ嵏娌圭偣 if (unload == null) { //杞﹁締鏈繘鍏ュ嵏娌圭偣 - List<ArdOilWall> ardOilWallUpload = SpringUtils.getBean(ArdOilWallService.class).uploadAll(); + List<ArdOilWall> ardOilWallUpload = ((ArdOilWallServiceImpl)SpringUtils.getBean("ArdOilWallServiceImpl")).uploadAll(); //鏄惁鍦ㄨ矾涓� Boolean isRoad = true; + //鍒ゆ柇鏄惁杩涘幓鍗告补鐐� for (int i = 0; i < ardOilWallUpload.size(); i++) { pts.clear(); ArdOilWall ardOilWall = ardOilWallUpload.get(i); @@ -231,6 +230,17 @@ ardAccessFence.setNowWallName(ardOilWall.getName()); ardAccessFence.setLastTime(time); ((ArdAccessFenceServiceImpl) SpringUtils.getBean("ArdAccessFenceServiceImpl")).updAccess(ardAccessFence); + //鍙戦�佽В灏佹寚浠� + ArdSyCarRtu ardSyCarRtu = ((ArdSyCarRtuServiceImpl) SpringUtils.getBean("ArdSyCarRtuServiceImpl")).one(carId); + if(ardSyCarRtu!=null){ + Map<String,Object> map = new HashMap<>(); + map.put("A01", 110000);//瀵奸�氱涓�璺户鐢靛櫒 +// map.put("A02", 110000);//瀵奸�氱浜岃矾缁х數鍣� + map.put("res", String.valueOf(System.currentTimeMillis())); + MqttConsumer.publish(ardSyCarRtu.getTopicSubscribe(), String.valueOf(new JSONObject(map))); + }else { + log.error("杞﹁締"+carId+"鏃犻攣鐘舵��"); + } //宸茬粡杩涘叆鍗告补鐐癸紝涓嶅湪璺笂涓嶉渶瑕佸仠杞︽姤璀� isRoad = false; break; @@ -273,6 +283,15 @@ } if (!GeoTools.IsPtInPoly(point, pts)) { //寮�鍑轰簡鍗告补鐐瑰洿鏍忥紝鍒犻櫎璇ユ潯杞﹁締鏁版嵁 + //鍙戦�佽В灏佹寚浠� + ArdSyCarRtu ardSyCarRtu = ((ArdSyCarRtuServiceImpl) SpringUtils.getBean("ArdSyCarRtuServiceImpl")).one(carId); + if(ardSyCarRtu!=null) { + Map<String, Object> map = new HashMap<>(); + map.put("A01", 100000);//鏂紑绗竴璺户鐢靛櫒 +// map.put("A02", 100000);//鏂紑绗簩璺户鐢靛櫒 + map.put("res", String.valueOf(System.currentTimeMillis())); + MqttConsumer.publish(ardSyCarRtu.getTopicSubscribe(), String.valueOf(new JSONObject(map))); + } ((ArdAccessFenceServiceImpl) SpringUtils.getBean("ArdAccessFenceServiceImpl")).delAccess(carId); }else { //鏈紑鍑哄嵏娌圭偣锛屾洿鏂扮粡绾害淇濆瓨 -- Gitblit v1.9.3