From a680331eb20854df447efebd9a66c81c8faf102d Mon Sep 17 00:00:00 2001 From: 25604 Date: Wed, 27 Aug 2025 18:33:44 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E8=A1=A5=E6=B0=B4=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=97=B6=E6=8E=A7=E6=8E=A7=E5=88=B6=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mh/user/job/DealDataJob.java | 4 +-- .../com/mh/user/mapper/ControlSetMapper.java | 2 +- .../mh/user/mapper/DeviceInstallMapper.java | 11 +++++- .../com/mh/user/model/SerialPortModel.java | 5 +++ .../mh/user/service/DeviceInstallService.java | 2 ++ .../service/impl/ControlSetServiceImpl.java | 2 +- .../impl/DeviceControlServiceImpl.java | 11 +++++- .../impl/DeviceInstallServiceImpl.java | 5 +++ .../src/main/resources/application-dev.yml | 2 +- .../src/main/resources/application-prod.yml | 35 +++++++++++++------ .../src/main/resources/application-test.yml | 13 ++++--- .../mh/user/UserServiceApplicationTests.java | 2 +- .../java/com/mh/user/device/CRC16Test.java | 24 +++++++++---- 13 files changed, 90 insertions(+), 28 deletions(-) diff --git a/user-service/src/main/java/com/mh/user/job/DealDataJob.java b/user-service/src/main/java/com/mh/user/job/DealDataJob.java index b36fea3..5c19368 100644 --- a/user-service/src/main/java/com/mh/user/job/DealDataJob.java +++ b/user-service/src/main/java/com/mh/user/job/DealDataJob.java @@ -180,9 +180,9 @@ public class DealDataJob { } } -// @Scheduled(cron = "0 0 0/1 * * ?") +// @Scheduled(cron = "0 0 0/12 * * ?") // public void preUseData() { -// // 每小时预测一次数据 +// // 每12时预测一次数据 // SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd"); // Date date = new Date(); // String curDate = sdf1.format(date); diff --git a/user-service/src/main/java/com/mh/user/mapper/ControlSetMapper.java b/user-service/src/main/java/com/mh/user/mapper/ControlSetMapper.java index a410a2a..f1a09dc 100644 --- a/user-service/src/main/java/com/mh/user/mapper/ControlSetMapper.java +++ b/user-service/src/main/java/com/mh/user/mapper/ControlSetMapper.java @@ -74,7 +74,7 @@ public interface ControlSetMapper { " device_install di " + " where " + " di.building_id = building_id " + - " and di.device_name like concat(#{timeName}, '时控') " + + " and di.device_name like concat('%',#{timeName}, '时控') " + ") ") ControlSetEntity queryControlSet(@Param("buildingId") String buildingId, @Param("timeName") String timeName); } diff --git a/user-service/src/main/java/com/mh/user/mapper/DeviceInstallMapper.java b/user-service/src/main/java/com/mh/user/mapper/DeviceInstallMapper.java index cd9b1a6..c422c60 100644 --- a/user-service/src/main/java/com/mh/user/mapper/DeviceInstallMapper.java +++ b/user-service/src/main/java/com/mh/user/mapper/DeviceInstallMapper.java @@ -251,9 +251,18 @@ public interface DeviceInstallMapper extends BaseMapper { @Result(column = "device_name", property = "deviceName"), @Result(column = "id", property = "id") }) - @Select("select * from device_install where building_id=#{buildingId} and device_type=#{deviceType}") + @Select("select * from device_install where building_id=#{buildingId} and device_type=#{deviceType} ") List selectDevices(@Param("buildingId") String buildingId, @Param("deviceType") String deviceType); + //查询设备 + @Results({ + @Result(column = "device_addr",property = "deviceAddr" ), + @Result(column = "device_name", property = "deviceName"), + @Result(column = "id", property = "id") + }) + @Select("select * from device_install where building_id=#{buildingId} and device_type=#{deviceType} and device_name like concat('%',#{deviceName},'时控')") + List selectDevicesByOthers(@Param("buildingId") String buildingId, @Param("deviceType") String deviceType, @Param("deviceName") String deviceName); + //修改故障状态 @Update("update device_install set is_fault=#{isFault} where device_addr=#{deviceAddr} and device_type=#{deviceType}") diff --git a/user-service/src/main/java/com/mh/user/model/SerialPortModel.java b/user-service/src/main/java/com/mh/user/model/SerialPortModel.java index 8c3327b..72bd8a3 100644 --- a/user-service/src/main/java/com/mh/user/model/SerialPortModel.java +++ b/user-service/src/main/java/com/mh/user/model/SerialPortModel.java @@ -20,6 +20,11 @@ public class SerialPortModel { */ private String deviceType; + /** + * 设备名称 + */ + private String deviceName; + /** * 操作类型 */ diff --git a/user-service/src/main/java/com/mh/user/service/DeviceInstallService.java b/user-service/src/main/java/com/mh/user/service/DeviceInstallService.java index a419274..621b1e8 100644 --- a/user-service/src/main/java/com/mh/user/service/DeviceInstallService.java +++ b/user-service/src/main/java/com/mh/user/service/DeviceInstallService.java @@ -135,6 +135,8 @@ public interface DeviceInstallService { //查询设备 List selectDevices(String buildingId,String deviceType); + List selectDevicesByOthers(String buildingId,String deviceType, String deviceName); + //修改故障状态 void updateDeviceFault(String isFault, String deviceAddr, String deviceType); diff --git a/user-service/src/main/java/com/mh/user/service/impl/ControlSetServiceImpl.java b/user-service/src/main/java/com/mh/user/service/impl/ControlSetServiceImpl.java index fdeac96..a7b78d1 100644 --- a/user-service/src/main/java/com/mh/user/service/impl/ControlSetServiceImpl.java +++ b/user-service/src/main/java/com/mh/user/service/impl/ControlSetServiceImpl.java @@ -29,7 +29,7 @@ public class ControlSetServiceImpl implements ControlSetService { @Override public ControlSetEntity queryControlSet(String buildingId, String timeName) { if (StringUtils.isBlank(timeName)) { - timeName = "%"; + return null; } return controlSetMapper.queryControlSet(buildingId,timeName); } diff --git a/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java b/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java index 6370e98..46afeb6 100644 --- a/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java +++ b/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java @@ -18,6 +18,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.List; +import java.util.stream.Collectors; /** * @author LJF @@ -57,9 +58,17 @@ public class DeviceControlServiceImpl implements DeviceControlService { String deviceType = serialPortModel.getDeviceType(); String buildingId = serialPortModel.getBuildingId(); String param = serialPortModel.getParam(); + String deviceName = serialPortModel.getDeviceName(); if (StringUtils.isBlank(deviceAddr)) { - List list = deviceInstallService.selectDevices(buildingId, deviceType); + List list = null; + if (StringUtils.isBlank(deviceName)) { + list = deviceInstallService.selectDevices(buildingId, deviceType); + // 过滤掉deviceName='补水时控'的值 + list = list.stream().filter(val -> !val.getDeviceName().equals("补水时控")).collect(Collectors.toList()); + } else { + list = deviceInstallService.selectDevicesByOthers(buildingId, deviceType, deviceName); + } deviceAddr = list.get(0).getDeviceAddr(); } if (deviceAddr == null || deviceAddr.length() == 0) { diff --git a/user-service/src/main/java/com/mh/user/service/impl/DeviceInstallServiceImpl.java b/user-service/src/main/java/com/mh/user/service/impl/DeviceInstallServiceImpl.java index bf43297..5461111 100644 --- a/user-service/src/main/java/com/mh/user/service/impl/DeviceInstallServiceImpl.java +++ b/user-service/src/main/java/com/mh/user/service/impl/DeviceInstallServiceImpl.java @@ -363,6 +363,11 @@ public class DeviceInstallServiceImpl implements DeviceInstallService { return deviceInstallMapper.selectDevices(buildingId, deviceType); } + @Override + public List selectDevicesByOthers(String buildingId, String deviceType, String deviceName) { + return deviceInstallMapper.selectDevicesByOthers(buildingId, deviceType, deviceName); + } + @Override public void updateDeviceFault(String isFault, String deviceAddr, String deviceType) { deviceInstallMapper.updateDeviceFault(isFault,deviceAddr,deviceType); diff --git a/user-service/src/main/resources/application-dev.yml b/user-service/src/main/resources/application-dev.yml index 2f18bc0..a582bc5 100644 --- a/user-service/src/main/resources/application-dev.yml +++ b/user-service/src/main/resources/application-dev.yml @@ -8,7 +8,7 @@ spring: type: com.alibaba.druid.pool.DruidDataSource druid: #添加allowMultiQueries=true 在批量更新时才不会出错 - url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=chws_hx;allowMultiQueries=true + url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=chws_chx;allowMultiQueries=true driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver username: sa password: mh@803 diff --git a/user-service/src/main/resources/application-prod.yml b/user-service/src/main/resources/application-prod.yml index 02ba3b8..96d645b 100644 --- a/user-service/src/main/resources/application-prod.yml +++ b/user-service/src/main/resources/application-prod.yml @@ -1,5 +1,5 @@ server: - port: 8762 #8761创新、8762广商、8763华厦、广州理工,华粤8762 + port: 8762 #8761创新、8762广商、8763华厦、广州理工,华粤8762,广外8764 spring: application: name: user-service @@ -24,15 +24,15 @@ spring: # username: chws # password: minghan123456@ #创新服务器 -# url: jdbc:sqlserver://119.29.33.133:2008;DatabaseName=chws_chx;allowMultiQueries=true +# url: jdbc:sqlserver://106.55.173.225:57238;DatabaseName=chws_chx;allowMultiQueries=true # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver -# username: chws -# password: mh@803 +# username: chws_gsh +# password: Mhtech@803 # #广商服务器 -# url: jdbc:sqlserver://119.29.33.133:2008;DatabaseName=chws_gsh;allowMultiQueries=true +# url: jdbc:sqlserver://106.55.173.225:57238;DatabaseName=chws_gsh;allowMultiQueries=true # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver -# username: chws -# password: mh@803 +# username: chws_gsh +# password: Mhtech@803 #本机 # url: jdbc:sqlserver://127.0.0.1:9956;DatabaseName=CHWS;allowMultiQueries=true # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver @@ -44,10 +44,25 @@ spring: # username: sa # password: mh@803 #华粤服务器 - url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=chws_hy;allowMultiQueries=true +# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=chws_hy;allowMultiQueries=true +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# username: chws_hy +# password: huayue@803 + #广外本地服务器 +# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=chws_gw;allowMultiQueries=true +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# username: chws_gw +# password: chws_gw@803 + url: jdbc:sqlserver://111.230.50.186:32012;DatabaseName=chws_gw;allowMultiQueries=true driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - username: chws_hy - password: huayue@803 + username: chws_gw + password: chws_gw@803 + + # 华软江门 +# url: jdbc:sqlserver://127.0.0.1:57238;DatabaseName=chws_jm;allowMultiQueries=true +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# username: chws_jm +# password: Mhtech@803 filters: stat,wall,config max-active: 100 diff --git a/user-service/src/main/resources/application-test.yml b/user-service/src/main/resources/application-test.yml index caa2e85..b82f11c 100644 --- a/user-service/src/main/resources/application-test.yml +++ b/user-service/src/main/resources/application-test.yml @@ -22,10 +22,10 @@ spring: # username: chws # password: minghan123456@ #创新服务器 - url: jdbc:sqlserver://119.29.33.133:2008;DatabaseName=chws_chx;allowMultiQueries=true - driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - username: chws - password: mh@803 +# url: jdbc:sqlserver://119.29.33.133:2008;DatabaseName=chws_chx;allowMultiQueries=true +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# username: chws +# password: mh@803 #广商服务器 # url: jdbc:sqlserver://119.29.33.133:2008;DatabaseName=chws_gsh;allowMultiQueries=true # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver @@ -41,6 +41,11 @@ spring: # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver # username: sa # password: mh@803 +# 测试 + url: jdbc:sqlserver://106.55.173.225:57238;DatabaseName=test;allowMultiQueries=true + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + username: test + password: Ming@ratuo123!! filters: stat,wall,config max-active: 100 diff --git a/user-service/src/test/java/com/mh/user/UserServiceApplicationTests.java b/user-service/src/test/java/com/mh/user/UserServiceApplicationTests.java index 577e264..966e68b 100644 --- a/user-service/src/test/java/com/mh/user/UserServiceApplicationTests.java +++ b/user-service/src/test/java/com/mh/user/UserServiceApplicationTests.java @@ -134,7 +134,7 @@ class UserServiceApplicationTests { @Test public void testDealData() { - dealDataJob.dealData(); +// dealDataJob.dealData(); } @Autowired diff --git a/user-service/src/test/java/com/mh/user/device/CRC16Test.java b/user-service/src/test/java/com/mh/user/device/CRC16Test.java index ef2ce3d..a26eec9 100644 --- a/user-service/src/test/java/com/mh/user/device/CRC16Test.java +++ b/user-service/src/test/java/com/mh/user/device/CRC16Test.java @@ -1,8 +1,11 @@ package com.mh.user.device; +import com.mh.common.utils.StringUtils; import com.mh.user.utils.ExchangeStringUtil; import java.io.IOException; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; /** * @Classname CRC16Test @@ -66,12 +69,21 @@ public class CRC16Test { } //测试 public static void main(String[] args) throws IOException { -// c0a8020a1f90ff04fb0000000100010200000300000400000500000600000700140800000901cb0a00000b00000c00000d00000e00000f0000100000110025120000130910 - byte[] buffer; - String string = "c0a8020a1f90ff02fd0000000100000200000300000400000500000600000700000800010900000a00780b00010c8c310d00000e00000f0000100000110022120000132d1e140000150000160000170001182c381900001a01a61b00001c00001d00011e00011f25cd20000121b1332200002300002400002500002600712700002834202900002a00002b00002c00002d00402e00002f0363a6ff"; - buffer = ExchangeStringUtil.HexString2Bytes(string); - int crc16 = CRC16Test.calcCrc16(buffer,buffer.length); - System.out.println(String.format("0x%04x", crc16));//0x7c09 + String lastHourTime = "2020-06-03 01:00:00"; + // lastHourTime转换成LocalDateTime + LocalDateTime lastHour1 = null; + if(lastHourTime != null && !"".equals(lastHourTime)){ + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + lastHour1 = LocalDateTime.parse(lastHourTime, formatter); + System.out.println(lastHour1); + } + + LocalDateTime now = lastHour1; + LocalDateTime lastHour = now.minusHours(1); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:00:00"); + lastHourTime = lastHour.format(formatter); + System.out.println(lastHourTime); + } }