ard-work/src/main/java/com/ruoyi/alarmpoints/well/mapper/ArdAlarmpointsWellMapper.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell; import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWellDeptVo; import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWellParam; import com.ruoyi.common.annotation.DataScope; @@ -22,6 +23,8 @@ * @return 井管理 */ public ArdAlarmpointsWell selectArdAlarmpointsWellById(String id); /** * 查询井管理 @@ -98,4 +101,6 @@ List<ArdAlarmpointsWellDeptVo> wellListDept(List<Long> deptList); List<ArdAlarmpointsWell> conditionList(ArdAlarmpointsWellParam ardAlarmpointsWellParam); } ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
@@ -291,21 +291,14 @@ Integer pageNum = ardAlarmpointsWellParam.getPageNum(); Integer pageSize = ardAlarmpointsWellParam.getPageSize(); PageHelper.startPage(pageNum, pageSize); QueryWrapper<ArdAlarmpointsWell> queryWrapper = new QueryWrapper<>(); queryWrapper.in("dept_id", ardAlarmpointsWellParam.getDeptList()) .like(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellId()), "well_id", ardAlarmpointsWellParam.getWellId()); // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellNumber()),"well_number",ardAlarmpointsWellParam.getWellNumber()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getOilProduction()),"oil_production",ardAlarmpointsWellParam.getOilProduction()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellBlock()),"well_block",ardAlarmpointsWellParam.getWellBlock()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getDisplacementMode()),"displacement_mode",ardAlarmpointsWellParam.getDisplacementMode()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getSurroundingEnvironment()),"surrounding_environment",ardAlarmpointsWellParam.getSurroundingEnvironment()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellType()),"well_type",ardAlarmpointsWellParam.getWellType()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getInstalledLoad()),"installed_load",ardAlarmpointsWellParam.getInstalledLoad()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getMeteringStation()),"metering_station",ardAlarmpointsWellParam.getMeteringStation()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getTransferStation()),"transfer_station",ardAlarmpointsWellParam.getTransferStation()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getDehydrationStation()),"dehydration_station",ardAlarmpointsWellParam.getDehydrationStation()) // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getRunStatus()),"run_status",ardAlarmpointsWellParam.getRunStatus()); List<ArdAlarmpointsWell> list = ardAlarmpointsWellMapper.selectList(queryWrapper); // QueryWrapper<ArdAlarmpointsWell> queryWrapper = new QueryWrapper<>(); // queryWrapper.select("id","altitude","metering_station","displacement_mode","latitude","dehydration_station", // "well_type","production_date","well_id","transfer_station","oil_production","run_status","longitude", // "installed_load","dept_id","user_id","surrounding_environment","well_number","well_block") // .eq(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellId()), "well_id", ardAlarmpointsWellParam.getWellId()) // .in("dept_id", ardAlarmpointsWellParam.getDeptList()); // List<ArdAlarmpointsWell> list = ardAlarmpointsWellMapper.selectList(queryWrapper); List<ArdAlarmpointsWell> list = ardAlarmpointsWellMapper.conditionList(ardAlarmpointsWellParam); return new PageInfo<>(list); } ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
@@ -177,42 +177,7 @@ } } //车辆有值优先判断是否为手动添加车辆 if(ardAccessFence.getIsAlarm()==1){ //1为手动添加车辆无需报警信息,更新位置即可 ardAccessFence.setLng(lng); ardAccessFence.setLat(lat); ardAccessFenceService.updAccess(ardAccessFence); }else if(ardAccessFence.getIsAlarm() == 2){ //2为手动添加报警车辆有报警,所在围栏名称赋null,排查报警信息,只需处理路上情况 ardAccessFence.setNowWallName(null); //如果在路上判断坐标是否与上次一样 if(ardAccessFence.getLng().equals(lng) && ardAccessFence.getLat().equals(lat)){ if(timeType){ Date nowTime = sdf.parse(time); Date lastTime = sdf.parse(ardAccessFence.getLastTime()); Long diff = (nowTime.getTime() - lastTime.getTime())/1000; ArdAccessNum list = accessNumService.queryNum(); if(list!=null){ int alarm = list.getAlarm(); if(diff>=alarm){ //报警字段为1提示报警 ardAccessFence.setIsWarning(1); ardAccessFence.setAlarmLat(lat); ardAccessFence.setAlarmLng(lng); ardAccessFenceService.updAccess(ardAccessFence); } } }else { log.debug(carId+"号车定位时间为空"); } }else { //如果不一样更新坐标 ardAccessFence.setLat(lat); ardAccessFence.setLng(lng); ardAccessFence.setLastTime(time); ardAccessFenceService.updAccess(ardAccessFence); } }else if(ardAccessFence.getIsAlarm() == 0 || ardAccessFence.getIsAlarm() == null){ if(ardAccessFence.getIsAlarm() == 0 || ardAccessFence.getIsAlarm() == null){ //车辆非手动添加数据,判断是否有进入围栏ID if(ardAccessFence.getIntoShipmentId()==null){ //没有进入装油点,赋值经纬度 @@ -368,6 +333,42 @@ } } } }else if(ardAccessFence.getIsAlarm()==1){ //1为手动添加车辆无需报警信息,更新位置即可 ardAccessFence.setLng(lng); ardAccessFence.setLat(lat); ardAccessFenceService.updAccess(ardAccessFence); }else if(ardAccessFence.getIsAlarm() == 2){ //2为手动添加报警车辆有报警,所在围栏名称赋null,排查报警信息,只需处理路上情况 ardAccessFence.setNowWallName(null); //如果在路上判断坐标是否与上次一样 if(ardAccessFence.getLng().equals(lng) && ardAccessFence.getLat().equals(lat)){ if(timeType){ Date nowTime = sdf.parse(time); Date lastTime = sdf.parse(ardAccessFence.getLastTime()); Long diff = (nowTime.getTime() - lastTime.getTime())/1000; ArdAccessNum list = accessNumService.queryNum(); if(list!=null){ int alarm = list.getAlarm(); if(diff>=alarm){ //报警字段为1提示报警 ardAccessFence.setIsWarning(1); ardAccessFence.setAlarmLat(lat); ardAccessFence.setAlarmLng(lng); ardAccessFenceService.updAccess(ardAccessFence); } } }else { log.debug(carId+"号车定位时间为空"); } }else { //如果不一样更新坐标 ardAccessFence.setLat(lat); ardAccessFence.setLng(lng); ardAccessFence.setLastTime(time); ardAccessFenceService.updAccess(ardAccessFence); } } } //清淤结束------------ ard-work/src/main/java/com/ruoyi/utils/mqtt/MqttConsumerCallback.java
@@ -38,13 +38,13 @@ */ @Override public void connectionLost(Throwable cause) { log.info("MQTT连接断开,发起重连......"); // log.info("MQTT连接断开,发起重连......"); while (!client.isConnected()) { try { Thread.sleep(10000); if (null != client && !client.isConnected()) { client.reconnect(); log.error("尝试重新连接"); // log.error("尝试重新连接"); } else { client.connect(options); log.error("尝试建立新连接"); @@ -112,8 +112,8 @@ if (null != topic && null != qos) { if (client.isConnected()) { client.subscribe(topic, qos); log.info("mqtt连接成功" ); log.info("订阅主题:" + Arrays.toString(topic)); // log.info("mqtt连接成功" ); // log.info("订阅主题:" + Arrays.toString(topic)); } else { log.info("mqtt连接失败"); } ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
@@ -258,4 +258,15 @@ #{item} </foreach> </select> <select id="conditionList" parameterType="List" resultType="com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWellDeptVo"> Select * from ard_alarmpoints_well well where WHERE well.well_id = #{wellId} and well.dept_id in <foreach collection="list" index="index" item="item" open="(" separator="," close=")"> #{item} </foreach> </select> </mapper>