Compare commits

...

3 Commits

Author SHA1 Message Date
yj 2453ae14e1 修改部署内容 2 years ago
yj 75e0fcee55 修改部署内容 2 years ago
yj ab520ef7c8 修改部署内容 2 years ago
  1. 2
      device_cars/src/main/java/com/xr/device_car/config/common/LoginConfig.java
  2. 2
      device_cars/src/main/java/com/xr/device_car/config/common/MyBatisPlusConfig.java
  3. 2
      device_cars/src/main/java/com/xr/device_car/modules/analysis/controller/FocalLengthConfigController.java
  4. 6
      device_cars/src/main/java/com/xr/device_car/modules/analysis/controller/MeterConfigController.java
  5. 2
      device_cars/src/main/resources/application-dev.yml
  6. 2
      device_cars/src/main/resources/application-prod.yml
  7. 2
      device_cars/src/main/resources/application-test.yml
  8. 2
      device_cars/src/main/resources/application.yml
  9. 3
      device_display/src/main/java/com/xr/device_display/modules/analysis/controller/HomePageController.java
  10. 2
      device_display/src/main/java/com/xr/device_display/modules/analysis/controller/MeterReadingRecordController.java
  11. 10
      device_display/src/main/java/com/xr/device_display/modules/analysis/dto/HistogramDto.java
  12. 12
      device_display/src/main/java/com/xr/device_display/modules/analysis/dto/dataset.java
  13. 2
      device_display/src/main/java/com/xr/device_display/modules/analysis/mapper/MeterReadingRecordMapper.java
  14. 2
      device_display/src/main/java/com/xr/device_display/modules/analysis/service/IHomePageService.java
  15. 2
      device_display/src/main/java/com/xr/device_display/modules/analysis/service/IMeterReadingRecordService.java
  16. 70
      device_display/src/main/java/com/xr/device_display/modules/analysis/service/impl/HomePageServiceImpl.java
  17. 23
      device_display/src/main/java/com/xr/device_display/modules/analysis/service/impl/MeterReadingRecordServiceImpl.java
  18. 4
      device_display/src/main/resources/application-dev.yml
  19. 2
      device_display/src/main/resources/application-prod.yml
  20. 2
      device_display/src/main/resources/application-test.yml
  21. 4
      device_display/src/main/resources/application.yml
  22. 35
      device_display/src/main/resources/modules/analysis/MeterReadingRecordMapper.xml
  23. 2
      device_iec104/src/main/resources/application-dev.yml
  24. 2
      device_iec104/src/main/resources/application-prod.yml
  25. 2
      device_iec61850clent/src/main/java/com/xr/iec61850clent/Iec61850ClentApplication.java
  26. 113
      device_iec61850clent/src/main/java/com/xr/iec61850clent/common/util/Iec61850Eunm.java
  27. 2
      device_iec61850clent/src/main/resources/application-dev.yml
  28. 2
      device_iec61850clent/src/main/resources/application-prod.yml
  29. 14
      device_iec61850clent/src/main/resources/application-test.yml
  30. 2
      device_iec61850clent/src/main/resources/application.yml
  31. 2
      device_iec61850server/src/main/resources/application-dev.yml
  32. 2
      device_iec61850server/src/main/resources/application-prod.yml
  33. 2
      device_iec61850server/src/main/resources/application-test.yml
  34. 120
      device_modbus/src/main/java/com/xr/clent/utils/ModbusRtuUtil.java
  35. 2
      device_modbus/src/main/resources/application-dev.yml
  36. 2
      device_modbus/src/main/resources/application-prod.yml
  37. 2
      device_udpclent/src/main/resources/application-dev.yml
  38. 2
      device_udpclent/src/main/resources/application-prod.yml
  39. 2
      device_udpserver/src/main/resources/application-dev.yml
  40. 2
      device_udpserver/src/main/resources/application-prod.yml
  41. 6
      drone_data/src/main/java/com/xr/drone/DroneDataApplication.java
  42. 1
      drone_data/src/main/resources/application-dev.yml
  43. 12
      drone_data/src/main/resources/application-prod.yml
  44. 2
      drone_data/src/main/resources/application.yml

2
device_cars/src/main/java/com/xr/device_car/config/common/LoginConfig.java

@ -38,7 +38,7 @@ public class LoginConfig {
public static final String USER_ROLE_ID="1";
public static final String TIMESTAMP = "timeStamp";
public static final String TIMESTAMP = "time_stamp";
public static final String CryptoKey="ReGlory";
}

2
device_cars/src/main/java/com/xr/device_car/config/common/MyBatisPlusConfig.java

@ -9,7 +9,7 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@EnableTransactionManagement
@MapperScan("com.xr.device_car.modules.*.mapper")
@MapperScan("com.xr.device_car.analysis.mapper")
@Configuration
public class MyBatisPlusConfig {

2
device_cars/src/main/java/com/xr/device_car/modules/analysis/controller/FocalLengthConfigController.java

@ -336,7 +336,7 @@ public class FocalLengthConfigController {
if(!file.getParentFile().exists()){
file.getParentFile().mkdirs();
}
return Result.OK(AdbUtil.readLog("D:\\images\\log\\log","D:\\images\\log","/userdata/logs/log"));
return Result.OK(AdbUtil.readConfig("D:\\images\\log\\log","D:\\images\\log","/userdata/logs/log"));
}catch (Exception e){
e.printStackTrace();
return Result.error(e.getMessage());

6
device_cars/src/main/java/com/xr/device_car/modules/analysis/controller/MeterConfigController.java

@ -101,12 +101,12 @@ public class MeterConfigController {
meterConfig.setUpdateTime(new Date());
ids.add(meterConfig.getId());
meterConfigService.saveOrUpdate(meterConfig);
/*if (meterConfig.getStatus()==1){
if (meterConfig.getStatus()==1){
// 删除原有任务
scheduleSettingService.meterStart(ids,0);
// 新增并启用新任务
scheduleSettingService.meterStart(ids,1);
}*/
}
}else{
meterConfig.setCreateUser(userInfo.getUserName());
@ -150,7 +150,7 @@ public class MeterConfigController {
UpdateWrapper<MeterConfig> updateWrapper=new UpdateWrapper<>();
updateWrapper.in("id",ids).set("status",status);
meterConfigService.update(null,updateWrapper);
/*scheduleSettingService.meterStart(ids,Integer.valueOf(status));*/
scheduleSettingService.meterStart(ids,Integer.valueOf(status));
return Result.OK(status.equals("1")?"启动":"停止"+"成功!");
}
@RequestMapping("/saveCamera")

2
device_cars/src/main/resources/application-dev.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
#Hikari连接池配置

2
device_cars/src/main/resources/application-prod.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://192.168.1.252:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://192.168.1.252:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
#Hikari连接池配置

2
device_cars/src/main/resources/application-test.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
#Hikari连接池配置

2
device_cars/src/main/resources/application.yml

@ -2,7 +2,7 @@ spring:
profiles:
#active: dev #开发环境
# active: test #测试环境5
active: test #生产环境
active: prod #生产环境
# active: prod #生产环境
application:
name: deviceCars

3
device_display/src/main/java/com/xr/device_display/modules/analysis/controller/HomePageController.java

@ -16,8 +16,7 @@ public class HomePageController {
@GetMapping("/getCardList")
private AjaxResult getCardList(){
// return homePageService.getCardList();
return homePageService.getHistogramList();
return homePageService.getCardList();
}
}

2
device_display/src/main/java/com/xr/device_display/modules/analysis/controller/MeterReadingRecordController.java

@ -52,7 +52,7 @@ public class MeterReadingRecordController extends BaseController {
@PostMapping(value = "/getPresentReadingPage")
public TableDataInfo getPresentReadingPage(@RequestBody MeterReadingRecordQueryVo vo){
PageHelper.startPage(vo.getPageNum(), vo.getPageSize());
return getDataTable(meterReadingRecordService.getPresentReadingPageList(vo));
return getDataTable(meterReadingRecordService.getPresentReadingPage(vo));
}
@PostMapping(value = "/export")

10
device_display/src/main/java/com/xr/device_display/modules/analysis/dto/HistogramDto.java

@ -1,10 +0,0 @@
package com.xr.device_display.modules.analysis.dto;
import lombok.Data;
@Data
public class HistogramDto {
private dataset dataset;
}

12
device_display/src/main/java/com/xr/device_display/modules/analysis/dto/dataset.java

@ -1,12 +0,0 @@
package com.xr.device_display.modules.analysis.dto;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class dataset {
List<List<Object>> source;
}

2
device_display/src/main/java/com/xr/device_display/modules/analysis/mapper/MeterReadingRecordMapper.java

@ -41,8 +41,6 @@ public interface MeterReadingRecordMapper extends BaseMapper<MeterReadingRecord>
List<PresentReadingQueryDto> getPresentReadingPage(@Param("vo") MeterReadingRecordQueryVo vo);
List<PresentReadingQueryDto> getPresentReadingPageList(@Param("vo") MeterReadingRecordQueryVo vo);
// List<MeterReadingRecord> getMeterReadingRecordList(@Param("vo") MeterReadingRecordQueryVo vo);

2
device_display/src/main/java/com/xr/device_display/modules/analysis/service/IHomePageService.java

@ -8,6 +8,4 @@ import java.util.List;
public interface IHomePageService {
AjaxResult getCardList();
AjaxResult getHistogramList();
}

2
device_display/src/main/java/com/xr/device_display/modules/analysis/service/IMeterReadingRecordService.java

@ -25,7 +25,5 @@ public interface IMeterReadingRecordService extends IService<MeterReadingRecord>
List<PresentReadingQueryDto> getPresentReadingPage(MeterReadingRecordQueryVo vo);
List<PresentReadingQueryDto> getPresentReadingPageList(MeterReadingRecordQueryVo vo);
AjaxResult getSevenDaysReading(MeterReadingRecordQueryVo vo);
}

70
device_display/src/main/java/com/xr/device_display/modules/analysis/service/impl/HomePageServiceImpl.java

@ -5,7 +5,10 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.xr.device_display.config.common.AjaxResult;
import com.xr.device_display.modules.analysis.dto.*;
import com.xr.device_display.modules.analysis.dto.Card;
import com.xr.device_display.modules.analysis.dto.HomePageCardDto;
import com.xr.device_display.modules.analysis.dto.Series;
import com.xr.device_display.modules.analysis.dto.Title;
import com.xr.device_display.modules.analysis.entity.MeterAbnormalRecord;
import com.xr.device_display.modules.analysis.entity.MeterConfig;
import com.xr.device_display.modules.analysis.entity.MeterType;
@ -13,12 +16,10 @@ import com.xr.device_display.modules.analysis.service.IHomePageService;
import com.xr.device_display.modules.analysis.service.IMeterAbnormalRecordService;
import com.xr.device_display.modules.analysis.service.IMeterConfigService;
import com.xr.device_display.modules.analysis.service.IMeterTypeService;
import org.aspectj.weaver.loadtime.Aj;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@ -36,46 +37,6 @@ public class HomePageServiceImpl implements IHomePageService {
@Autowired
private IMeterTypeService meterTypeService;
@Override
public AjaxResult getHistogramList() {
AjaxResult ajax = AjaxResult.success();
// 获取所有在启用的表计类型
Map<Integer, String> typeMap = meterTypeService.list(
Wrappers.<MeterType>lambdaQuery().eq(MeterType::getStatus, 1))
.stream()
.collect(Collectors.toMap(MeterType::getId, MeterType::getMeterType));
// 获取所有启用的表计配置
List<MeterConfig> meterConfigList = meterConfigService.list(
Wrappers.<MeterConfig>lambdaQuery().eq(MeterConfig::getStatus, 1));
// 根据表计类型分组
Map<String, List<MeterConfig>> groupedByTypeName = meterConfigList.stream()
.collect(Collectors.groupingBy(
meterConfig -> typeMap.getOrDefault(meterConfig.getTypeId(), "未知类型"),
Collectors.toList()
));
// 查询未处理的异常表计记录
List<MeterAbnormalRecord> recordList = meterAbnormalRecordService.list(
Wrappers.<MeterAbnormalRecord>lambdaQuery().eq(MeterAbnormalRecord::getProcessingStatus, 0));
List<Integer> meterIdAbnormal = recordList.stream()
.map(MeterAbnormalRecord::getMeterId)
.collect(Collectors.toList());
List<HistogramDto> tableTypeList = new ArrayList<>();
// 根据表计类型分组生成卡片数据
groupedByTypeName.forEach((k, v) -> {
if (!k.equals("水位表")){
HistogramDto histogramDto = generateHistogramDto(k, v, meterIdAbnormal);
tableTypeList.add(histogramDto);
}
});
ajax.put("tableTypeList", tableTypeList);
return ajax;
}
@Override
public AjaxResult getCardList() {
@ -130,29 +91,6 @@ public class HomePageServiceImpl implements IHomePageService {
return ajax;
}
private HistogramDto generateHistogramDto(String typeName,List<MeterConfig> meterConfigs, List<Integer> meterIdAbnormal){
HistogramDto histogramDto = new HistogramDto();
dataset dataset = new dataset();
List<List<Object>> source = new ArrayList<>();
String[] array = {"product", "表计总数", "正常表计数", "异常表计数"};
List<Object> list = Arrays.asList((Object[]) array);
Long abnormalMeterCount = meterConfigs.stream()
.filter(meterConfig -> meterIdAbnormal.contains(meterConfig.getId()))
.count();
// 总数
Long all = (long) meterConfigs.size();
Long normal = all - abnormalMeterCount;
Object[] array1 = {typeName,all,normal.intValue(),abnormalMeterCount.intValue()};
source.add(list);
source.add(Arrays.asList(array1));
dataset.setSource(source);
histogramDto.setDataset(dataset);
return histogramDto;
}
private HomePageCardDto generateCardDto(String titleText, List<MeterConfig> meterConfigs, List<Integer> meterIdAbnormal) {
HomePageCardDto homePageCardDto = new HomePageCardDto();
List<Card> data = new ArrayList<>();

23
device_display/src/main/java/com/xr/device_display/modules/analysis/service/impl/MeterReadingRecordServiceImpl.java

@ -114,25 +114,6 @@ public class MeterReadingRecordServiceImpl extends ServiceImpl<MeterReadingRecor
return queryDtoList;
}
@Override
public List<PresentReadingQueryDto> getPresentReadingPageList(MeterReadingRecordQueryVo vo) {
List<PresentReadingQueryDto> queryDtoList = readingRecordMapper.getPresentReadingPageList(vo);
List<MeterAbnormalRecord> abnormalRecordList = abnormalRecordService.list(new LambdaQueryWrapper<MeterAbnormalRecord>().eq(MeterAbnormalRecord::getProcessingStatus, 0));
queryDtoList.forEach(dto -> {
dto.setFlag(0);
if (CollUtil.isNotEmpty(abnormalRecordList)) {
if (abnormalRecordList.stream().filter(m -> m.getMeterId().equals(dto.getId())).findAny().isPresent()) {
dto.setFlag(1);
}
}
});
return queryDtoList;
}
@Override
public AjaxResult getSevenDaysReading(MeterReadingRecordQueryVo vo) {
String meterCode = vo.getMeterCode();
@ -140,14 +121,12 @@ public class MeterReadingRecordServiceImpl extends ServiceImpl<MeterReadingRecor
// 获取当前日期
LocalDate currentDate = LocalDate.now();
// 获取第二天日期
LocalDate nextDay = currentDate.plusDays(1);
// 构建查询条件:在过去7天内的记录
LocalDate sevenDaysAgo = currentDate.minusDays(days);
LambdaQueryWrapper<MeterReadingRecord> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(MeterReadingRecord::getMeterCode, meterCode);
lambdaQueryWrapper.between(MeterReadingRecord::getReadingTime, sevenDaysAgo, nextDay);
lambdaQueryWrapper.between(MeterReadingRecord::getReadingTime, sevenDaysAgo, currentDate);
lambdaQueryWrapper.orderByAsc(MeterReadingRecord::getReadingTime);
// 查询记录

4
device_display/src/main/resources/application-dev.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
#Hikari连接池配置
@ -54,7 +54,7 @@ spring:
# 数据库索引
database: 2
# 密码
password: 111111
password:
# 连接超时时间
timeout: 10s
lettuce:

2
device_display/src/main/resources/application-prod.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://192.168.1.252:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://192.168.1.252:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
#Hikari连接池配置

2
device_display/src/main/resources/application-test.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
#Hikari连接池配置

4
device_display/src/main/resources/application.yml

@ -21,8 +21,8 @@ spring:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: dev #开发环境
# active: test #测试环境5
# active: prod #开发环境
active: prod #测试环境5
#active: prod #生产环境
# active: prod #生产环境
application:

35
device_display/src/main/resources/modules/analysis/MeterReadingRecordMapper.xml

@ -118,41 +118,6 @@
</select>
<select id="getPresentReadingPageList"
parameterType="com.xr.device_display.modules.analysis.vo.MeterReadingRecordQueryVo"
resultType="com.xr.device_display.modules.analysis.dto.PresentReadingQueryDto">
SELECT
mc.id,
mrr.meter_code,
mrr.meter_type_name,
mrr.reading_value,
mrr.meter_type_id,
t1.reading_time,
mc.owning_interval,
mc.device_name
FROM
( SELECT meter_id, MAX( reading_time ) AS reading_time FROM meter_reading_record GROUP BY meter_id ) AS t1
LEFT JOIN meter_reading_record AS mrr ON t1.meter_id = mrr.meter_id
AND t1.reading_time = mrr.reading_time
LEFT JOIN meter_config AS mc ON t1.meter_id = mc.id
<where>
AND mc.status = 1
<if test="vo.meterCode != null and vo.meterCode != ''">
AND mrr.meter_code LIKE CONCAT('%',#{vo.meterCode},'%')
</if>
<if test="vo.meterTypeId != null and vo.meterTypeId != ''">
AND mrr.meter_type_id = #{vo.meterTypeId}
</if>
<if test="vo.owningInterval != null and vo.owningInterval !=''">
AND owning_interval LIKE CONCAT('%',#{vo.owningInterval},'%')
</if>
<if test="vo.deviceName != null and vo.deviceName !=''">
AND mc.device_name LIKE CONCAT('%',#{vo.deviceName},'%')
</if>
</where>
ORDER BY mc.id
</select>
<select id="getPresentReadingPage"
parameterType="com.xr.device_display.modules.analysis.vo.MeterReadingRecordQueryVo"
resultType="com.xr.device_display.modules.analysis.dto.PresentReadingQueryDto">

2
device_iec104/src/main/resources/application-dev.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_iec104/src/main/resources/application-prod.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: root
db3:

2
device_iec61850clent/src/main/java/com/xr/iec61850clent/Iec61850ClentApplication.java

@ -30,7 +30,7 @@ public class Iec61850ClentApplication implements CommandLineRunner {
@Override
@Async
public void run(String[] args){
Iec61850clent iec61850clent=new Iec61850clent(args,"192.168.1.254",102);
Iec61850clent iec61850clent=new Iec61850clent(args,"192.168.1.137",102);
executor.execute(iec61850clent);
// Iec61850clent iec61850clent1=new Iec61850clent(args,"192.168.1.138",102);
// executor.submit(iec61850clent1);

113
device_iec61850clent/src/main/java/com/xr/iec61850clent/common/util/Iec61850Eunm.java

@ -147,75 +147,50 @@ public enum Iec61850Eunm {
ythdy134("192.168.2.10","一体化电源","TEMPLATELD0/c12_0GGIO0.Alm81","通信电源_通信中断"),
ythdy135("192.168.2.10","一体化电源","TEMPLATELD0/c12_0GGIO0.Alm82","UPS电源_通信中断"),
ythdy136("192.168.2.10","一体化电源","TEMPLATELD0/c12_0GGIO0.Alm83","事故照明_通信中断"),
camera1("192.168.1.137","camera","TEMPLATELD0/c11_0GGIO0.Ang1","192168125~指针表"),
camera2("192.168.1.137","camera","TEMPLATELD0/c11_1GGIO0.Ang1","192168126~指针表"),
camera3("192.168.1.137","camera","TEMPLATELD0/c11_2GGIO0.Ang1","192168128~指针表"),
camera4("192.168.1.137","camera","TEMPLATELD0/c11_3GGIO0.Ang1","192168124~指针表"),
camera5("192.168.1.137","camera","TEMPLATELD0/c11_4GGIO0.Ang1","192168123~指针表"),
camera6("192.168.1.137","camera","TEMPLATELD0/c11_5GGIO0.Ang1","192168122~指针表"),
camera7("192.168.1.137","camera","TEMPLATELD0/c11_6GGIO0.Ang1","192168136~指针"),
camera8("192.168.1.137","camera","TEMPLATELD0/c11_6GGIO0.Ang2","192168136~数字"),
camera9("192.168.1.137","camera","TEMPLATELD0/c11_7GGIO0.Ang1","192168135~指针"),
camera10("192.168.1.137","camera","TEMPLATELD0/c11_7GGIO0.Ang2","192168135~数字"),
camera11("192.168.1.137","camera","TEMPLATELD0/c11_8GGIO0.Ang1","192168134~指针"),
camera12("192.168.1.137","camera","TEMPLATELD0/c11_8GGIO0.Ang2","192168134~数字"),
camera13("192.168.1.137","camera","TEMPLATELD0/c11_9GGIO0.Ang1","192168132~指针表"),
camera14("192.168.1.137","camera","TEMPLATELD0/c11_10GGIO0.Ang1","192168131~指针表"),
camera15("192.168.1.137","camera","TEMPLATELD0/c11_11GGIO0.Ang1","192168127~指针表"),
camera16("192.168.1.137","camera","TEMPLATELD0/c11_12GGIO0.Ang1","192168121~数字表"),
camera17("192.168.1.137","camera","TEMPLATELD0/c11_13GGIO0.Ang1","192168137~数字表"),
camera18("192.168.1.137","camera","TEMPLATELD0/c11_14GGIO0.Ang1","192168129~指针表"),
camera19("192.168.1.137","camera","TEMPLATELD0/c11_15GGIO0.Ang1","192168130~指针表"),
camera20("192.168.1.137","camera","TEMPLATELD0/c11_16GGIO0.Ang1","192168143~指针表"),
camera21("192.168.1.137","camera","TEMPLATELD0/c11_17GGIO0.Ang1","192168139~指针表"),
camera22("192.168.1.137","camera","TEMPLATELD0/c11_18GGIO0.Ang1","192168146~指针"),
camera23("192.168.1.137","camera","TEMPLATELD0/c11_18GGIO0.Ang2","192168146~数字"),
camera24("192.168.1.137","camera","TEMPLATELD0/c11_19GGIO0.Ang1","192168138~指针表"),
camera25("192.168.1.137","camera","TEMPLATELD0/c11_20GGIO0.Ang1","192168142~指针表"),
camera26("192.168.1.137","camera","TEMPLATELD0/c11_21GGIO0.Ang1","19216816~指针表"),
camera27("192.168.1.137","camera","TEMPLATELD0/c11_22GGIO0.Ang1","19216817~指针表"),
camera28("192.168.1.137","camera","TEMPLATELD0/c11_23GGIO0.Ang1","19216818~指针表"),
camera29("192.168.1.137","camera","TEMPLATELD0/c11_24GGIO0.Ang1","19216819~指针表"),
camera30("192.168.1.137","camera","TEMPLATELD0/c11_25GGIO0.Ang1","192168140~指针表"),
camera31("192.168.1.137","camera","TEMPLATELD0/c11_26GGIO0.Ang1","192168144~指针"),
camera32("192.168.1.137","camera","TEMPLATELD0/c11_26GGIO0.Ang2","192168144~数字"),
camera33("192.168.1.137","camera","TEMPLATELD0/c11_27GGIO0.Ang1","192168145~指针"),
camera34("192.168.1.137","camera","TEMPLATELD0/c11_27GGIO0.Ang2","192168145~数字"),
camera35("192.168.1.137","camera","TEMPLATELD0/c11_28GGIO0.Ang1","192168147~数字表"),
camera36("192.168.1.137","camera","TEMPLATELD0/c11_29GGIO0.Ang1","192168148~数字表"),
camera37("192.168.1.137","camera","TEMPLATELD0/c11_30GGIO0.Ang1","192168150~数字表"),
camera38("192.168.1.137","camera","TEMPLATELD0/c11_31GGIO0.Ang1","192168151~数字表"),
camera39("192.168.1.137","camera","TEMPLATELD0/c11_32GGIO0.Ang1","192168152~数字表"),
camera40("192.168.1.137","camera","TEMPLATELD0/c11_33GGIO0.Ang1","192168153~数字表"),
camera41("192.168.1.137","camera","TEMPLATELD0/c11_34GGIO0.Ang1","192168154~数字表"),
camera42("192.168.1.137","camera","TEMPLATELD0/c11_35GGIO0.Ang1","192168155~数字表"),
camera43("192.168.1.137","camera","TEMPLATELD0/c11_36GGIO0.Ang1","192168156~数字表"),
camera44("192.168.1.137","camera","TEMPLATELD0/c11_37GGIO0.Ang1","192168157~数字表"),
camera45("192.168.1.137","camera","TEMPLATELD0/c11_38GGIO0.Ang1","192168160~数字表"),
camera46("192.168.1.137","camera","TEMPLATELD0/c11_39GGIO0.Ang1","192168161~数字表"),
camera47("192.168.1.137","camera","TEMPLATELD0/c11_40GGIO0.Ang1","192168170~数字表"),
camera48("192.168.1.137","camera","TEMPLATELD0/c11_41GGIO0.Ang1","192168171~数字表"),
camera62("192.168.1.137","camera","TEMPLATELD0/c11_42GGIO0.Ang1","192168133~指针表"),
camera63("192.168.1.137","camera","TEMPLATELD0/c11_43GGIO0.Ang1","192168141~指针表"),
camera49("192.168.1.137","camera","TEMPLATELD0/c27_0GGIO0.Ang1","192168312~指针表"),
camera50("192.168.1.137","camera","TEMPLATELD0/c27_1GGIO0.Ang1","192168311~指针表"),
camera51("192.168.1.137","camera","TEMPLATELD0/c27_2GGIO0.Ang1","192168314~指针表"),
camera52("192.168.1.137","camera","TEMPLATELD0/c27_3GGIO0.Ang1","192168320~指针表"),
camera53("192.168.1.137","camera","TEMPLATELD0/c27_4GGIO0.Ang1","192168321~指针表"),
camera54("192.168.1.137","camera","TEMPLATELD0/c27_5GGIO0.Ang1","192168313~指针表"),
camera55("192.168.1.137","camera","TEMPLATELD0/c27_6GGIO0.Ang1","192168316~指针"),
camera56("192.168.1.137","camera","TEMPLATELD0/c27_6GGIO0.Ang2","192168316~数字"),
camera57("192.168.1.137","camera","TEMPLATELD0/c27_7GGIO0.Ang1","192168317~指针"),
camera58("192.168.1.137","camera","TEMPLATELD0/c27_7GGIO0.Ang2","192168317~数字"),
camera59("192.168.1.137","camera","TEMPLATELD0/c27_8GGIO0.Ang1","192168318~指针"),
camera60("192.168.1.137","camera","TEMPLATELD0/c27_8GGIO0.Ang2","192168318~数字"),
camera61("192.168.1.137","camera","TEMPLATELD0/c27_9GGIO0.Ang1","192168315~指针表"),
camera64("192.168.1.137","camera","TEMPLATELD0/c27_10GGIO0.Ang1","192168319~指针表"),
camera65("192.168.1.137","camera","TEMPLATELD0/c27_10GGIO0.Ang2","192168319~数字表"),
camera66("192.168.1.254","camera","TEMPLATELD0/c5_0GGIO0.Ang1","192168110~指针表"),
camera67("192.168.1.254","camera","TEMPLATELD0/c5_1GGIO0.Ang1","192168111~数字表");
camera1("192.168.1.137","camera","TEMPLATELD0/c11_0GGIO0.Ang1","192.168.1.25-指针表"),
camera2("192.168.1.137","camera","TEMPLATELD0/c11_1GGIO0.Ang1","192.168.1.26-指针表"),
camera3("192.168.1.137","camera","TEMPLATELD0/c11_2GGIO0.Ang1","192.168.1.28-指针表"),
camera4("192.168.1.137","camera","TEMPLATELD0/c11_3GGIO0.Ang1","192.168.1.24-指针表"),
camera5("192.168.1.137","camera","TEMPLATELD0/c11_4GGIO0.Ang1","192.168.1.23-指针表"),
camera6("192.168.1.137","camera","TEMPLATELD0/c11_5GGIO0.Ang1","192.168.1.22-指针表"),
camera7("192.168.1.137","camera","TEMPLATELD0/c11_6GGIO0.Ang1","192.168.1.36-指针"),
camera8("192.168.1.137","camera","TEMPLATELD0/c11_6GGIO0.Ang2","192.168.1.36-数字"),
camera9("192.168.1.137","camera","TEMPLATELD0/c11_7GGIO0.Ang1","192.168.1.35-指针"),
camera10("192.168.1.137","camera","TEMPLATELD0/c11_7GGIO0.Ang2","192.168.1.35-数字"),
camera11("192.168.1.137","camera","TEMPLATELD0/c11_8GGIO0.Ang1","192.168.1.34-指针"),
camera12("192.168.1.137","camera","TEMPLATELD0/c11_8GGIO0.Ang2","192.168.1.34-数字"),
camera13("192.168.1.137","camera","TEMPLATELD0/c11_9GGIO0.Ang1","192.168.1.32-指针表"),
camera14("192.168.1.137","camera","TEMPLATELD0/c11_10GGIO0.Ang1","192.168.1.31-指针表"),
camera15("192.168.1.137","camera","TEMPLATELD0/c11_11GGIO0.Ang1","192.168.1.27-指针表"),
camera16("192.168.1.137","camera","TEMPLATELD0/c11_12GGIO0.Ang1","192.168.1.21-遥测0"),
camera17("192.168.1.137","camera","TEMPLATELD0/c11_12GGIO0.Ang2","192.168.1.21-遥测1"),
camera18("192.168.1.137","camera","TEMPLATELD0/c11_12GGIO0.Ang3","192.168.1.21-遥测2"),
camera19("192.168.1.137","camera","TEMPLATELD0/c11_13GGIO0.Ang1","192.168.1.37-数字表"),
camera20("192.168.1.137","camera","TEMPLATELD0/c11_14GGIO0.Ang1","192.168.1.29-指针表"),
camera21("192.168.1.137","camera","TEMPLATELD0/c11_15GGIO0.Ang1","192.168.1.30-指针表"),
camera22("192.168.1.137","camera","TEMPLATELD0/c11_16GGIO0.Ang1","192.168.1.43-指针表"),
camera23("192.168.1.137","camera","TEMPLATELD0/c11_17GGIO0.Ang1","192.168.1.39-指针表"),
camera24("192.168.1.137","camera","TEMPLATELD0/c11_18GGIO0.Ang1","192.168.1.46-指针"),
camera25("192.168.1.137","camera","TEMPLATELD0/c11_18GGIO0.Ang2","192.168.1.46-数字"),
camera26("192.168.1.137","camera","TEMPLATELD0/c11_19GGIO0.Ang1","192.168.1.38-指针表"),
camera27("192.168.1.137","camera","TEMPLATELD0/c11_20GGIO0.Ang1","192.168.1.42-指针表"),
camera28("192.168.1.137","camera","TEMPLATELD0/c11_21GGIO0.Ang1","192.168.1.6-指针表"),
camera29("192.168.1.137","camera","TEMPLATELD0/c11_22GGIO0.Ang1","192.168.1.7-指针表"),
camera30("192.168.1.137","camera","TEMPLATELD0/c11_23GGIO0.Ang1","192.168.1.8-指针表"),
camera31("192.168.1.137","camera","TEMPLATELD0/c11_24GGIO0.Ang1","192.168.1.9-指针表"),
camera32("192.168.1.137","camera","TEMPLATELD0/c11_25GGIO0.Ang1","192.168.1.40-指针表"),
camera33("192.168.1.137","camera","TEMPLATELD0/c27_0GGIO0.Ang1","192.168.3.12-指针表"),
camera34("192.168.1.137","camera","TEMPLATELD0/c27_1GGIO0.Ang1","192.168.3.11-指针表"),
camera35("192.168.1.137","camera","TEMPLATELD0/c27_2GGIO0.Ang1","192.168.3.14-指针表"),
camera36("192.168.1.137","camera","TEMPLATELD0/c27_3GGIO0.Ang1","192.168.3.20-指针表"),
camera37("192.168.1.137","camera","TEMPLATELD0/c27_4GGIO0.Ang1","192.168.3.21-指针表"),
camera38("192.168.1.137","camera","TEMPLATELD0/c27_5GGIO0.Ang1","192.168.3.13-指针表"),
camera39("192.168.1.137","camera","TEMPLATELD0/c27_6GGIO0.Ang1","192.168.3.16-指针"),
camera40("192.168.1.137","camera","TEMPLATELD0/c27_6GGIO0.Ang2","192.168.3.16-数字"),
camera41("192.168.1.137","camera","TEMPLATELD0/c27_7GGIO0.Ang1","192.168.3.17-指针"),
camera42("192.168.1.137","camera","TEMPLATELD0/c27_7GGIO0.Ang2","192.168.3.17-数字"),
camera43("192.168.1.137","camera","TEMPLATELD0/c27_8GGIO0.Ang1","192.168.3.18-指针表"),
camera44("192.168.1.137","camera","TEMPLATELD0/c27_8GGIO0.Ang2","192.168.3.18-数字表");

2
device_iec61850clent/src/main/resources/application-dev.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_iec61850clent/src/main/resources/application-prod.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://192.168.1.252:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://192.168.1.252:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
db3:

14
device_iec61850clent/src/main/resources/application-test.yml

@ -17,15 +17,15 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
db3:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/modbusrtu?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
# db3:
# driver-class-name: com.mysql.cj.jdbc.Driver
# type: com.zaxxer.hikari.HikariDataSource
# url: jdbc:mysql://localhost:3306/modbusrtu?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
# username: root
# password: 123456
#Hikari连接池配置
hikari:
#池中维护的最小空闲连接数

2
device_iec61850clent/src/main/resources/application.yml

@ -1,6 +1,6 @@
spring:
profiles:
active: test #开发环境
active: prod #开发环境
# active: test #测试环境5
#active: prod #生产环境
# active: prod #生产环境

2
device_iec61850server/src/main/resources/application-dev.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_iec61850server/src/main/resources/application-prod.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: root
db3:

2
device_iec61850server/src/main/resources/application-test.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
db3:

120
device_modbus/src/main/java/com/xr/clent/utils/ModbusRtuUtil.java

@ -1,120 +0,0 @@
package com.xr.clent.utils;
import java.math.BigDecimal;
import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class ModbusRtuUtil {
public static void main(String[] args) {
// String str="FE 04 1A 08 D2 0C 35 06 6C 60 79 90 1C 04 04 00 00 00 00 00 00 00 00 00 00 00 00 CF 0A";
// String str16[] = str.split("\\s+");
// System.out.println("设备地址:"+Integer.parseInt(str16[0], 16));
// System.out.println("功能码:"+Integer.parseInt(str16[1], 16));
// System.out.println("字节数:"+Integer.parseInt(str16[2], 16));
// System.out.println("温度:"+hexToDecimal(str16[3]+str16[4]));
// System.out.println("湿度:"+hexToDecimal(str16[5]+str16[6]));
// System.out.println("CO2:"+hexToDecimal(str16[7]+str16[8]));
// System.out.println("光照:"+hexToDecimal(str16[9]+str16[10]));
// System.out.println("大气压:"+hexToDecimal(str16[11]+str16[12]));
// System.out.println("风速:"+hexToDecimal(str16[13]+str16[14]));
// System.out.println("风向:"+hexToDecimal(str16[15]+str16[16]));
// System.out.println("土壤湿度:"+hexToDecimal(str16[17]+str16[18]));
// System.out.println("土壤温度:"+hexToDecimal(str16[19]+str16[20]));
// System.out.println("PM2.5:"+hexToDecimal(str16[21]+str16[22]));
// System.out.println("PM1.0:"+hexToDecimal(str16[23]+str16[24]));
// System.out.println("PM10:"+hexToDecimal(str16[25]+str16[26]));
// System.out.println("校验码:"+str16[27]+str16[28]);
readHex();
}
public static void readHex(){
String str = "FE 04 3C 00 00 00 00 00 00 00 00 00 00 00 00 F0 00 45 13 D0 00 45 30 40 00 44 45 CC 00 46 01 3D 00 47 C7 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1F F1";
String str16[] = str.split("\\s+");
int lth=str16.length;
System.out.println("设备地址:"+Integer.parseInt(str16[0], 16));
System.out.println("功能码:"+Integer.parseInt(str16[1], 16));
System.out.println("字节数:"+Integer.parseInt(str16[2], 16));
System.out.println("校验码:"+str16[lth-1]+" "+str16[lth-2]);
String [] strs = Arrays.copyOfRange(str16, 3, lth-2);
String s = "";
Map<Integer,String> map=new HashMap<>();
map.put(1,"单次雨量");
map.put(2,"瞬时雨量");
map.put(3,"总雨量");
map.put(4,"温度");
map.put(5,"湿度");
map.put(6,"CO2");
map.put(7,"光照");
map.put(8,"大气压");
map.put(9,"风速");
map.put(10,"风向");
map.put(11,"土壤湿度");
map.put(12,"土壤温度");
map.put(13,"PM2.5");
map.put(14,"PM1.0");
map.put(15,"PM10");
for(int i=0;i<strs.length-1;i++){
s+=strs[i];
if(s.length() == 8){
int b =(i+1)/4;
String name = map.get(b);
BigDecimal d = new BigDecimal(1);
if(b == 4 || b ==5 || b==7|| b==9){
d = new BigDecimal("0.01");
}
if (b == 8){
d = new BigDecimal("0.001");
}
if(b == 10 || b == 12 || b == 11){
d = new BigDecimal("0.1");
}
s=s.substring(s.length()-4)+s.substring(0,4);
System.out.println(name+":"+new BigDecimal(hexStringToJavaFloat(s)).multiply(d));
s="";
}
}
}
public static int hexToDecimal(String hex) {
int decimal = 0;
int length = hex.length();
for (int i = 0; i < length; i++) {
char c = hex.charAt(i);
int digit = Character.digit(c, 16);
decimal += digit * Math.pow(16, 2 * (length - i - 1));
}
return decimal;
}
public static float hexStringToJavaFloat(String message){
// 将字符串转换为字节数组
byte[] bytes = hexStringToByteArray(message);
// 创建一个ByteBuffer
ByteBuffer buffer = ByteBuffer.wrap(bytes);
// 获取float值
return buffer.getFloat();
}
public static byte[] hexStringToByteArray(String s) {
int len = s.length();
byte[] data = new byte[len / 2];
for (int i = 0; i < len; i += 2) {
data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+ Character.digit(s.charAt(i+1), 16));
}
return data;
}
}

2
device_modbus/src/main/resources/application-dev.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_modbus/src/main/resources/application-prod.yml

@ -19,7 +19,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://localhost:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: root
db3:

2
device_udpclent/src/main/resources/application-dev.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_udpclent/src/main/resources/application-prod.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://192.168.1.252:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://192.168.1.252:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
db3:

2
device_udpserver/src/main/resources/application-dev.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://116.196.120.81:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://116.196.120.81:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 5ea47c0bdd7146ebbd53020eca@672307
db3:

2
device_udpserver/src/main/resources/application-prod.yml

@ -17,7 +17,7 @@ spring:
db2:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://192.168.1.252:3306/image_analysis?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
url: jdbc:mysql://192.168.1.252:3306/image_analysis_jc?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: 123456
db3:

6
drone_data/src/main/java/com/xr/drone/DroneDataApplication.java

@ -47,9 +47,9 @@ public class DroneDataApplication implements CommandLineRunner {
@Async
@Override
public void run(String[] args) throws Exception{
// Thread.sleep(3000);
// MqttClent mqttClent=new MqttClent();
// mqttClent.start();
Thread.sleep(3000);
MqttClent mqttClent=new MqttClent();
mqttClent.start();
// MqttConnect mqttConnect = new MqttConnect(mqttConfiguration);
// mqttConnect.start();
}

1
drone_data/src/main/resources/application-dev.yml

@ -28,6 +28,7 @@ service:
path: http://123.249.26.7/indoorUavFlightControlBackend
userName: admin
password: 888888
shiwai:
spring:
mqtt:
username: admin

12
drone_data/src/main/resources/application-prod.yml

@ -25,9 +25,10 @@ oss:
service:
dajiang: http://123.249.26.7
shinei:
path: http://192.168.1.185/indoorUavFlightControlBackend
path: http://192.168.1.2/indoorUavFlightControlBackend
userName: admin
password: 888888
shiwai:
spring:
mqtt:
@ -44,12 +45,3 @@ mqtt:
keep:
alive:
interval: 20
work:
mqtt:
username: admin
password: public
clientId: publish_client
broker: tcp://localhost:1883
topic: mqtt/test
timeout: 30000
interval: 20

2
drone_data/src/main/resources/application.yml

@ -1,6 +1,6 @@
spring:
profiles:
active: prod #开发环境
active: dev #开发环境
application:
name: droneData
devtools:

Loading…
Cancel
Save