Bläddra i källkod

汤阴二期版本切换

1037015548@qq.com 1 vecka sedan
förälder
incheckning
31ada8ab47

+ 17 - 14
dc3-gateway/src/main/java/io/github/pnoker/gateway/bizmgr/KprTangyinWaterBizFun.java

@@ -35,7 +35,7 @@ public class KprTangyinWaterBizFun {
         // 转换为 Instant(基于 UTC 时间)
         Instant instant = localDateTime.toInstant(ZoneOffset.UTC);
 
-        // 获取纳秒时间戳
+        // 获取纳秒时间戳
         long nanoTimestamp = instant.getEpochSecond() * 1_000_000_000L + instant.getNano();
         return nanoTimestamp;
     }
@@ -47,16 +47,16 @@ public class KprTangyinWaterBizFun {
         // 当前时间
         LocalDateTime now = LocalDateTime.now();
         // 一年前的时间
-        LocalDateTime startDateTime = now.minusYears(1);
+        LocalDateTime startDateTime = now.minusMonths(6);
 
         // 创建Map来存储时间范围
         Map<LocalDateTime, LocalDateTime> timeRanges = new LinkedHashMap<>();
 
         // 初始化开始时间
         LocalDateTime currentStart = startDateTime; // 一年前
-        for (int i = 0; i < 12; i++) {
+        for (int i = 0; i < 6; i++) {
             // 当前时间段的结束时间:当前月的最后一天 23:59:59
-            LocalDateTime currentEnd = currentStart.plusMonths(1).minusSeconds(1);
+            LocalDateTime currentEnd = currentStart.plusMonths(1);
 
             // 将开始和结束时间存储到Map中
             timeRanges.put(currentStart, currentEnd);
@@ -75,7 +75,7 @@ public class KprTangyinWaterBizFun {
                         .withZoneSameInstant(ZoneId.of("UTC")).toLocalDateTime();//最终结束日
                 while (currentStartTime.isBefore(currentEndTime)) {
                     long startLong = formaterUTCnano(currentStartTime);
-                    LocalDateTime currentEnd = currentStartTime.minusDays(-1);
+                    LocalDateTime currentEnd = currentStartTime.minusHours(-3);
                     // 如果计算的结束时间超过最终结束时间,则将其调整为最终结束时间
                     if (currentEnd.isAfter(currentEndTime)) {
                         currentEnd = currentEndTime;
@@ -84,10 +84,15 @@ public class KprTangyinWaterBizFun {
                     String queryInfluxdbSql = "SELECT time,dev_id,press_cur FROM WaterMeter WHERE " +
                             " time >= " + startLong + " and time<=" + endLong + " ORDER BY time desc tz('Asia/Shanghai')";
                     log.info(currentStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "---" +
-                            currentEnd.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "进行中.....");
-                    selectPressCollecation(queryInfluxdbSql);
+                            currentEnd.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "进行中....."+"查询压力并插入到pgsql开始,SQL语句:"+queryInfluxdbSql);
+                    new Timer().schedule(new TimerTask() {
+                        @Override
+                        public void run() {
+                            selectPressCollecation(queryInfluxdbSql);
+                        }
+                    },2000);
                     log.info(currentStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "---" +
-                            currentEnd.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "已完成");
+                            currentEnd.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "任务注册已完成");
                     // 更新开始时间为当前结束时间
                     currentStartTime = currentEnd;
                 }
@@ -106,8 +111,7 @@ public class KprTangyinWaterBizFun {
     public static void selectPressCollecation(String queryInfluxdbSql){
         try{
             if(infulxTyDbUtil!=null){
-                log.info("查询压力并插入到pgsql开始,SQL语句:"+queryInfluxdbSql);
-                QueryResult queryResult = infulxTyDbUtil.queryDatabase(queryInfluxdbSql);
+                QueryResult queryResult = infulxTyDbUtil.queryDatabase(queryInfluxdbSql,5,2000);
                 if(queryResult==null){
                     log.info("queryResult==null:"+queryInfluxdbSql);
                 }
@@ -124,7 +128,7 @@ public class KprTangyinWaterBizFun {
                                     // 解析字段
                                     String timeString = (String) value.get(0); // 时间戳
                                     String devId = (String) value.get(1);       // 设备ID
-                                    Double pressCur = (Double) value.get(2);    // 当前压力
+                                    Double pressCur = value.get(2)!=null?(Double) value.get(2):null;    // 当前压力
                                     // 解析ISO 8601格式的日期时间
                                     ZonedDateTime zonedDateTime = ZonedDateTime.parse(timeString);
 
@@ -142,14 +146,13 @@ public class KprTangyinWaterBizFun {
                                     map.put("collecation_time", formattedDate);
                                     map.put("dev_id", devId);
                                     map.put("press_cur", pressCur);
-                                    System.out.println(getApi());
                                     int resultDb = getApi().insertOrUpdateTbmHourLevel(map);
                                     if (!(resultDb > 0)) {
                                         log.error("function selectPressCollecation insertOrUpdate error:" + resultDb);
                                     }
                                 } catch (Exception ex) {
                                     ex.printStackTrace();
-                                    log.error("function selectPressCollecation forEach error:" + ex.getMessage());
+                                    log.error("function selectPressCollecation forEach error:" + ex.getLocalizedMessage(),ex);
                                 }
                             }
                         }
@@ -158,7 +161,7 @@ public class KprTangyinWaterBizFun {
                 log.info("function selectPressCollecation success:"+queryInfluxdbSql);
             }
         }catch (Exception ex){
-            log.error("function selectPressCollecation error:"+ex.getMessage());
+            log.error("function selectPressCollecation error:"+ex.getMessage(),ex);
         }
     }
 }

+ 6 - 6
dc3-gateway/src/main/java/io/github/pnoker/gateway/config/Child2SourceConfiguration.java

@@ -2,6 +2,7 @@
 //
 //import com.zaxxer.hikari.HikariConfig;
 //import com.zaxxer.hikari.HikariDataSource;
+//import io.github.pnoker.gateway.dbdao.DBMgrProxy;
 //import org.apache.ibatis.session.SqlSessionFactory;
 //import org.mybatis.spring.SqlSessionFactoryBean;
 //import org.mybatis.spring.SqlSessionTemplate;
@@ -53,7 +54,6 @@
 //    private Long validTimeout;
 //
 //    @Bean(name = "child2Datasource")
-//    @ConditionalOnProperty(name = "datasource.child2pg.enabled", havingValue = "true")
 //    //@ConfigurationProperties(prefix = "spring.datasource.data")
 //    public DataSource mainDataSource() {
 //        return new HikariDataSource(getConfig());
@@ -105,9 +105,9 @@
 //    public void init(){
 //        GlobalData.getInstance().setPostGisValid("org.postgis.DriverWrapper".equals(driveClass));
 //    }
-//    @Bean
-//    public DBMgrProxy startDBMgrProxy(){
-//        DBMgrProxy.getInstance().init();
-//        return DBMgrProxy.getInstance();
-//    }
+////    @Bean
+////    public DBMgrProxy startDBMgrProxy(){
+////        DBMgrProxy.getInstance().init();
+////        return DBMgrProxy.getInstance();
+////    }
 //}

+ 6 - 6
dc3-gateway/src/main/java/io/github/pnoker/gateway/config/Child3SourceConfiguration.java

@@ -2,6 +2,7 @@
 //
 //import com.zaxxer.hikari.HikariConfig;
 //import com.zaxxer.hikari.HikariDataSource;
+//import io.github.pnoker.gateway.dbdao.DBMgrProxy;
 //import org.apache.ibatis.session.SqlSessionFactory;
 //import org.mybatis.spring.SqlSessionFactoryBean;
 //import org.mybatis.spring.SqlSessionTemplate;
@@ -53,7 +54,6 @@
 //    private Long validTimeout;
 //
 //    @Bean(name = "child3Datasource")
-//    @ConditionalOnProperty(name = "datasource.child3pg.enabled", havingValue = "true")
 //    //@ConfigurationProperties(prefix = "spring.datasource.data")
 //    public DataSource mainDataSource() {
 //        return new HikariDataSource(getConfig());
@@ -105,9 +105,9 @@
 //    public void init(){
 //        GlobalData.getInstance().setPostGisValid("org.postgis.DriverWrapper".equals(driveClass));
 //    }
-//    @Bean
-//    public DBMgrProxy startDBMgrProxy(){
-//        DBMgrProxy.getInstance().init();
-//        return DBMgrProxy.getInstance();
-//    }
+////    @Bean
+////    public DBMgrProxy startDBMgrProxy(){
+////        DBMgrProxy.getInstance().init();
+////        return DBMgrProxy.getInstance();
+////    }
 //}

+ 5 - 6
dc3-gateway/src/main/java/io/github/pnoker/gateway/config/ChildSourceConfiguration.java

@@ -54,7 +54,6 @@
 //    private Long validTimeout;
 //
 //    @Bean(name = "childDatasource")
-//    @ConditionalOnProperty(name = "datasource.childpg.enabled", havingValue = "true")
 //    //@ConfigurationProperties(prefix = "spring.datasource.data")
 //    public DataSource mainDataSource() {
 //        return new HikariDataSource(getConfig());
@@ -106,9 +105,9 @@
 //    public void init(){
 //        GlobalData.getInstance().setPostGisValid("org.postgis.DriverWrapper".equals(driveClass));
 //    }
-//    @Bean
-//    public DBMgrProxy startDBMgrProxy(){
-//        DBMgrProxy.getInstance().init();
-//        return DBMgrProxy.getInstance();
-//    }
+////    @Bean
+////    public DBMgrProxy startDBMgrProxy(){
+////        DBMgrProxy.getInstance().init();
+////        return DBMgrProxy.getInstance();
+////    }
 //}

+ 0 - 1
dc3-gateway/src/main/java/io/github/pnoker/gateway/config/MainSourceConfiguration.java

@@ -56,7 +56,6 @@
 //
 //    @Bean(name = "mainDatasource")
 //    //@ConfigurationProperties(prefix = "spring.datasource.data")
-//    @ConditionalOnProperty(name = "datasource.enabled", havingValue = "true")
 //    public DataSource mainDataSource() {
 //        return new HikariDataSource(getConfig());
 //        //return DataSourceBuilder.create().build();

+ 6 - 7
dc3-gateway/src/main/java/io/github/pnoker/gateway/config/OrcaleDataSourceConfig.java

@@ -2,6 +2,7 @@
 //
 //import com.zaxxer.hikari.HikariConfig;
 //import com.zaxxer.hikari.HikariDataSource;
+//import io.github.pnoker.gateway.dbdao.DBMgrProxy;
 //import org.springframework.beans.factory.annotation.Qualifier;
 //import org.springframework.beans.factory.annotation.Value;
 //import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
@@ -21,7 +22,6 @@
 //@Configuration
 //public class OrcaleDataSourceConfig {
 //    @Bean(name = "primaryDataSource")
-//    @ConditionalOnProperty(name = "datasource.primary.enabled", havingValue = "true")
 //    public DataSource primaryDataSource(@Value("${spring.datasource.primary.url}") String url,
 //                                        @Value("${spring.datasource.primary.username}") String username,
 //                                        @Value("${spring.datasource.primary.password}") String password,
@@ -36,7 +36,6 @@
 //    }
 //
 //    @Bean(name = "zilaishuiDataSource")
-//    @ConditionalOnProperty(name = "datasource.zilaishui.enabled", havingValue = "true")
 //    public DataSource secondaryDataSource(@Value("${spring.datasource.zilaishui.url}") String url,
 //                                          @Value("${spring.datasource.zilaishui.username}") String username,
 //                                          @Value("${spring.datasource.zilaishui.password}") String password,
@@ -58,9 +57,9 @@
 //    public JdbcTemplate zilaishuiJdbcTemplate(@Qualifier("zilaishuiDataSource") DataSource dataSource) {
 //        return new JdbcTemplate(dataSource);
 //    }
-//    @Bean
-//    public DBMgrProxy startDBMgrProxy(){
-//        DBMgrProxy.getInstance().init();
-//        return DBMgrProxy.getInstance();
-//    }
+////    @Bean
+////    public DBMgrProxy startDBMgrProxy(){
+////        DBMgrProxy.getInstance().init();
+////        return DBMgrProxy.getInstance();
+////    }
 //}

+ 6 - 0
dc3-gateway/src/main/java/io/github/pnoker/gateway/dbdao/tangyinSource/mapper/TangyinPressDataDao.java

@@ -1,6 +1,9 @@
 package io.github.pnoker.gateway.dbdao.tangyinSource.mapper;
 
+import io.github.pnoker.gateway.comtool.ScheduleTaskMgr;
 import lombok.extern.slf4j.Slf4j;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.jdbc.core.JdbcTemplate;
@@ -24,6 +27,8 @@ public class TangyinPressDataDao {
     @Qualifier("child4Datasource")
     private DataSource child4Datasource;
 
+    private static final Logger log = LoggerFactory.getLogger(TangyinPressDataDao.class);
+
     //TODO 添加或修改日小时预测数据
     public int insertOrUpdateTbmHourLevel(Map<String,Object> value){
         try{
@@ -51,6 +56,7 @@ public class TangyinPressDataDao {
             Integer resCode = pgJdbc.update(sql);
             return resCode;
         }catch(Exception ex){
+            log.error("TangyinPressDataDao insertOrUpdateTbmHourLevel error:"+ex.getLocalizedMessage());
             return -1;
         }
     }

+ 36 - 9
dc3-gateway/src/main/java/io/github/pnoker/gateway/utils/InfulxTyDbUtil.java

@@ -4,6 +4,7 @@ import io.github.pnoker.gateway.bizmgr.KprTangyinWaterBizFun;
 import io.github.pnoker.gateway.comtool.ResponseCode;
 import org.influxdb.InfluxDB;
 import org.influxdb.InfluxDBFactory;
+import org.influxdb.InfluxDBIOException;
 import org.influxdb.dto.BatchPoints;
 import org.influxdb.dto.Point;
 import org.influxdb.dto.Query;
@@ -13,6 +14,8 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
+import java.net.SocketException;
+
 /**
  * @ClassName InfulxDbUtil
  * @Description: TODO influxDb连接工具类
@@ -60,15 +63,39 @@ public class InfulxTyDbUtil {
         }
     }
 
-    public QueryResult queryDatabase(String sqlQuery) {
-        try {
-            Query query = new Query(sqlQuery, database);
-            QueryResult result = influxDB.query(query);
-            return result;
-        } catch (Exception ex) {
-            // 处理异常
-            log.error("queryDatabase error:"+ex.getMessage());
-            return null;
+    public QueryResult queryDatabase(String sqlQuery, int maxRetries, long retryDelayMillis) {
+        int attempt = 0; // 当前重试次数
+
+        while (attempt <= maxRetries) {
+            try {
+                // 创建查询对象
+                Query query = new Query(sqlQuery, database);
+
+                // 执行查询
+                QueryResult result = influxDB.query(query);
+                return result; // 查询成功,返回结果
+
+            } catch (Exception ex) {
+                attempt++;
+                log.warn("Attempt " + attempt + " failed due to connection reset. Retrying...");
+
+                if (attempt > maxRetries) {
+                    // 超出最大重试次数,记录错误并返回 null
+                    log.error("Failed to query database after " + maxRetries + " attempts", ex);
+                    return null;
+                }
+
+                try {
+                    // 等待一段时间后再重试
+                    Thread.sleep(retryDelayMillis);
+                } catch (InterruptedException ie) {
+                    // 如果线程被中断,记录错误并退出
+                    Thread.currentThread().interrupt();
+                    log.error("Retry interrupted", ie);
+                    return null;
+                }
+            }
         }
+        return null; // 如果到达这里,说明所有重试都失败了
     }
 }

+ 24 - 19
dc3-gateway/src/main/java/io/github/pnoker/gateway/utils/TestUtil.java

@@ -9,8 +9,10 @@ import org.influxdb.dto.Query;
 import org.influxdb.dto.QueryResult;
 
 import java.text.SimpleDateFormat;
+import java.time.Instant;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
+import java.time.ZoneOffset;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
@@ -25,24 +27,27 @@ import java.util.concurrent.TimeUnit;
 public class TestUtil {
     private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
     public static void main(String[] args) throws Exception{
-        // 转换ISO时间戳为目标格式
-        // 转换为毫秒时间戳
-        LocalDateTime startTime = LocalDateTime.now().withHour(0).withMinute(0).withSecond(0).atZone(ZoneId.systemDefault()).withZoneSameInstant(ZoneId.of("UTC")).toLocalDateTime();
-        long startLong = KprTangyinWaterBizFun.formaterUTCnano(startTime);//转换乘纳秒
-        long endLong = KprTangyinWaterBizFun.formaterUTCnano(startTime.minusHours(-1));//转换乘纳秒
-        long milliTimestamp = TimeUnit.MILLISECONDS.convert(startLong, TimeUnit.NANOSECONDS);
-        long milliTimestamp2 = TimeUnit.MILLISECONDS.convert(endLong, TimeUnit.NANOSECONDS);
-
-        // 创建Date对象
-        Date date = new Date(milliTimestamp);
-        Date date2 = new Date(milliTimestamp2);
-
-        // 格式化为目标格式
-        SimpleDateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        targetFormat.setTimeZone(java.util.TimeZone.getTimeZone("Asia/Shanghai")); // 转换为上海时区
-        String formattedDate = targetFormat.format(date);
-        String formattedDate2 = targetFormat.format(date2);
-        System.out.println(formattedDate);
-        System.out.println(formattedDate2);
+        // 创建一个 LocalDateTime 对象
+        LocalDateTime currentStartTime = LocalDateTime.now().atZone(ZoneId.systemDefault())
+                .withZoneSameInstant(ZoneId.of("UTC")).toLocalDateTime();//最初开始日
+
+        // 转换为 Instant 对象
+        Instant instant = currentStartTime.toInstant(ZoneOffset.UTC);
+
+        // 获取纳秒级时间戳
+        long nanoTimestamp = instant.getEpochSecond() * 1_000_000_000L + instant.getNano();
+
+        // 输出结果
+        System.out.println("LocalDateTime: " + currentStartTime);
+        System.out.println("纳秒时间戳: " + nanoTimestamp);
+
+        // 将纳秒级时间戳转换回 LocalDateTime
+        long seconds = nanoTimestamp / 1_000_000_000L;
+        int nanos = (int) (nanoTimestamp % 1_000_000_000L);
+        Instant instantFromNano = Instant.ofEpochSecond(seconds, nanos);
+        LocalDateTime dateTimeFromNano = LocalDateTime.ofInstant(instantFromNano, ZoneOffset.UTC);
+
+        // 输出转换回的 LocalDateTime
+        System.out.println("转换回的 LocalDateTime (UTC): " + dateTimeFromNano);
     }
 }

+ 118 - 127
dc3-gateway/src/main/resources/application.yml

@@ -127,12 +127,11 @@ spring:
             #   name: default
             #   fallbackUri: 'forward:/fallback'
   datasource:
-#      enabled: flase
-#      driver-class-name: org.postgis.DriverWrapper
-##      jdbc-url: jdbc:postgresql_postGIS://192.168.0.4:5432/watersmart?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#      jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_smart_develop_branch?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#      username: postgres
-#      password: kpr.23417.postgres
+      driver-class-name: org.postgis.DriverWrapper
+#      jdbc-url: jdbc:postgresql_postGIS://192.168.0.4:5432/watersmart?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+      jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_smart_develop_branch?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+      username: postgres
+      password: kpr.23417.postgres
       data:
         maximum-pool-size: 200
         validation-query: SELECT 1
@@ -140,50 +139,42 @@ spring:
         test-on-return: false
         idle-timeout: 30000
         connection-timeout: 30000
-#      primary:
-#            enabled: flase
-#            url: jdbc:oracle:thin:@10.127.16.117:1521/ORCLPDB1
-#            username: v_jiangjin
-#            password: JiangJin@1127
-#            driver-class-name: oracle.jdbc.driver.OracleDriver
-#      zilaishui:
-#            enabled: flase
-#            url: jdbc:oracle:thin:@10.127.16.117:1521/ORCLPDB1
-#            username: v_shizilaishui
-#            password: ShiZiLaiShui@0811
-#            driver-class-name: oracle.jdbc.driver.OracleDriver
-#      childpg:
-#        enabled: flase
-#        driver-class-name: org.postgis.DriverWrapper
-##        jdbc-url: jdbc:postgresql_postGIS://10.101.3.104:5432/water_volume_prediction_jiangjin2?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#        jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_volume_prediction_jiangjin?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#        username: postgres
-#        password: kpr.23417.postgres
-#      child2pg:
-#        enabled: flase
-#        driver-class-name: org.postgis.DriverWrapper
-##        jdbc-url: jdbc:postgresql_postGIS://10.101.5.50:5432/water_level_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-##        username: postgres
-##        password: ygt.23417.postgres
-#        jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_volume_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#        username: postgres
-#        password: kpr.23417.postgres
-#      child3pg:
-#        enabled: flase
-#        driver-class-name: org.postgis.DriverWrapper
-##        jdbc-url: jdbc:postgresql_postGIS://10.101.5.50:5432/water_volume_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+      primary:
+         url: jdbc:oracle:thin:@10.127.16.117:1521/ORCLPDB1
+         username: v_jiangjin
+         password: JiangJin@1127
+         driver-class-name: oracle.jdbc.driver.OracleDriver
+      zilaishui:
+         url: jdbc:oracle:thin:@10.127.16.117:1521/ORCLPDB1
+         username: v_cqzls
+         password: CQzls#2025
+         driver-class-name: oracle.jdbc.driver.OracleDriver
+      childpg:
+        driver-class-name: org.postgis.DriverWrapper
+#        jdbc-url: jdbc:postgresql_postGIS://10.101.3.104:5432/water_volume_prediction_jiangjin2?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+        jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_volume_prediction_jiangjin?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+        username: postgres
+        password: kpr.23417.postgres
+      child2pg:
+        driver-class-name: org.postgis.DriverWrapper
+        jdbc-url: jdbc:postgresql_postGIS://10.101.5.50:5432/water_level_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
+        username: postgres
+        password: ygt.23417.postgres
+      child3pg:
+        driver-class-name: org.postgis.DriverWrapper
+        jdbc-url: jdbc:postgresql_postGIS://10.101.5.50:5432/water_volume_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
 #        jdbc-url: jdbc:postgresql_postGIS://140.246.183.164:5432/water_volume_prediction?useSSL=false&useAffectedRows=false&allowMultiQueries=true
-#        username: postgres
-##        password: ygt.23417.postgres
+        username: postgres
+        password: ygt.23417.postgres
 #        password: kpr.23417.postgres
+#汤阴配置
       child4pg:
-        enabled: true
         driver-class-name: org.postgis.DriverWrapper
         jdbc-url: jdbc:postgresql_postGIS://221.176.189.184:5432/tangyin_press?useSSL=false&useAffectedRows=false&allowMultiQueries=true
         username: postgres
         password: kpr.23417.postgres
-  jpa:
-    show-sql: false
+      jpa:
+        show-sql: false
 
 logging:
   level:
@@ -191,92 +182,92 @@ logging:
   file:
     name: dc3/logs/gateway/${spring.application.name}.log
 
-##许昌八百支户表相关参数配置,密码为MD532位大写前二十位
-#xuchang:
-#  user: zzsfy
-#  pwd: D41D8CD98F00B204E980
-#  url: http://42.227.69.38:8004/WebServiceOfNBIoT.asmx
-#
-##当阳influxdb配置
-#dangyang:
-##influxdb相关配置
-#  inluxdb:
-#    database: iot_test
-##    database: iot
-#    serverUrl: http://192.168.0.4:8086
+#许昌八百支户表相关参数配置,密码为MD532位大写前二十位
+xuchang:
+  user: zzsfy
+  pwd: D41D8CD98F00B204E980
+  url: http://42.227.69.38:8004/WebServiceOfNBIoT.asmx
+
+#当阳influxdb配置
+dangyang:
+#influxdb相关配置
+  inluxdb:
+    database: iot_test
+#    database: iot
+    serverUrl: http://192.168.0.4:8086
+    username: kpr
+    password: kpr.2024dy.influxdb
+#    serverUrl: http://127.0.0.1:8086
+#    username: admin
+#    password: yourpassword
+#设备数据相关接口地址
+  http:
+    username: shkpr
+    password: shkpr
+    token: http://192.168.0.9:48085/admin-api/system/auth/login
+    realtimeDataList: http://192.168.0.9:48085/admin-api/data/device/realtimeDataList
+    hisDataList: http://192.168.0.9:48085/admin-api/data/device/hisDataList
+    list: http://192.168.0.9:48085/admin-api/data/device/list
+#设备类型列表配置
+  device:
+    type: >
+              [{
+                	"key": "FLOW_METER",
+                	"name": "流量计"
+                }, {
+                	"key": "WATER_QUALITY",
+                	"name": "水质仪"
+                }, {
+                	"key": "WATER_PUMP",
+                	"name": "水泵"
+                }, {
+                	"key": "WATER_METER",
+                	"name": "水表"
+                }, {
+                	"key": "PRESS_METER",
+                	"name": "压力计"
+                }, {
+                	"key": "LIQUID_LEVEL_METER",
+                	"name": "液位计"
+                }, {
+                	"key": "ELEC_CTRL_VALVE",
+                	"name": "电控阀"
+                }]
+#当阳远程物联网接口返回字段信息 ___后跟的是自己的字段
+
+watermeter: ftotal___flow_total_pos,rtotal___flow_total_rev,flow___flow_cur,press___press_cur,soc___battery
+flowmeter: ftotal___flow_total_pos,rtotal___flow_total_rev,flow___flow_cur,speed___flow_speed,alarm___alarm,csq___csq,press___press_cur
+pressmeter: press___press_cur
+waterquality: ph___ph,wd___dev_temperature,yl___chlorine,zd___turbidity
+waterpump: power___power,currentA___ia,currentB___ib,currentC___ic,voltageA___ua,voltageB___ub,voltageC___uc,soc___battery,dn___quantity,runTime,runFrequency___frequency
+elecctrlvalve: RP16___battery_voltage,RW01___flow_total_pos,RW03___flow_speed,RW02___flow_cur,rp16___battery_voltage,rw01___flow_total_pos,rw03___flow_speed,rw02___flow_cur
+liquidlevelmeter: level___level
+
+WATER_METER: WaterMeter
+FLOW_METER: WaterMeter
+PRESS_METER: WaterMeter
+WATER_QUALITY: WaterQuality
+WATER_PUMP: WaterPump
+ELEC_CTRL_VALVE: ValveMeter
+LIQUID_LEVEL_METER: LiquidLevel
+
+#江津influxdb配置
+jiangjin:
+#influxdb相关配置
+  inluxdb:
+    database: iot_test
+#    database: iot
+    serverUrl: http://10.101.16.13:8086
 #    username: kpr
 #    password: kpr.2024dy.influxdb
-##    serverUrl: http://127.0.0.1:8086
-##    username: admin
-##    password: yourpassword
-##设备数据相关接口地址
-#  http:
-#    username: shkpr
-#    password: shkpr
-#    token: http://192.168.0.9:48085/admin-api/system/auth/login
-#    realtimeDataList: http://192.168.0.9:48085/admin-api/data/device/realtimeDataList
-#    hisDataList: http://192.168.0.9:48085/admin-api/data/device/hisDataList
-#    list: http://192.168.0.9:48085/admin-api/data/device/list
-##设备类型列表配置
-#  device:
-#    type: >
-#              [{
-#                	"key": "FLOW_METER",
-#                	"name": "流量计"
-#                }, {
-#                	"key": "WATER_QUALITY",
-#                	"name": "水质仪"
-#                }, {
-#                	"key": "WATER_PUMP",
-#                	"name": "水泵"
-#                }, {
-#                	"key": "WATER_METER",
-#                	"name": "水表"
-#                }, {
-#                	"key": "PRESS_METER",
-#                	"name": "压力计"
-#                }, {
-#                	"key": "LIQUID_LEVEL_METER",
-#                	"name": "液位计"
-#                }, {
-#                	"key": "ELEC_CTRL_VALVE",
-#                	"name": "电控阀"
-#                }]
-##当阳远程物联网接口返回字段信息 ___后跟的是自己的字段
-#
-#watermeter: ftotal___flow_total_pos,rtotal___flow_total_rev,flow___flow_cur,press___press_cur,soc___battery
-#flowmeter: ftotal___flow_total_pos,rtotal___flow_total_rev,flow___flow_cur,speed___flow_speed,alarm___alarm,csq___csq,press___press_cur
-#pressmeter: press___press_cur
-#waterquality: ph___ph,wd___dev_temperature,yl___chlorine,zd___turbidity
-#waterpump: power___power,currentA___ia,currentB___ib,currentC___ic,voltageA___ua,voltageB___ub,voltageC___uc,soc___battery,dn___quantity,runTime,runFrequency___frequency
-#elecctrlvalve: RP16___battery_voltage,RW01___flow_total_pos,RW03___flow_speed,RW02___flow_cur,rp16___battery_voltage,rw01___flow_total_pos,rw03___flow_speed,rw02___flow_cur
-#liquidlevelmeter: level___level
-#
-#WATER_METER: WaterMeter
-#FLOW_METER: WaterMeter
-#PRESS_METER: WaterMeter
-#WATER_QUALITY: WaterQuality
-#WATER_PUMP: WaterPump
-#ELEC_CTRL_VALVE: ValveMeter
-#LIQUID_LEVEL_METER: LiquidLevel
-#
-##江津influxdb配置
-#jiangjin:
-##influxdb相关配置
-#  inluxdb:
-#    database: iot_test
-##    database: iot
-#    serverUrl: http://10.101.16.13:8086
-##    username: kpr
-##    password: kpr.2024dy.influxdb
-#
-##自来水influxdb配置
-#zilaishui:
-#  #influxdb相关配置
-#  inluxdb:
+
+#自来水influxdb配置
+zilaishui:
+  #influxdb相关配置
+  inluxdb:
 #    database: iot_test
-##    database: iot
-#    serverUrl: http://10.101.5.201:8086
+    database: iot
+    serverUrl: http://10.101.5.201:8086
 
 #汤阴二期相关配置
 tangyin:
@@ -284,5 +275,5 @@ tangyin:
   inluxdb:
 #    database: iot
 #    serverUrl: http://221.176.189.184:8086
-    database: iot_test
+    database: iot
     serverUrl: http://10.101.16.13:8086