diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/src/main/java/com/casic/service/impl/DayDataProvider.java b/src/main/java/com/casic/service/impl/DayDataProvider.java new file mode 100644 index 0000000..cb77410 --- /dev/null +++ b/src/main/java/com/casic/service/impl/DayDataProvider.java @@ -0,0 +1,135 @@ +package com.casic.service.impl; + +import com.casic.config.DeviceTypeConfig; +import com.casic.dao.*; +import com.casic.entity.*; +import com.casic.service.DayDataService; +import com.casic.util.SnowBizPhyId; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; + +@Service +public class DayDataProvider implements DayDataService { + + @Resource + private DayDataDao dayDataDao; + @Resource + private HydrantDataMapper hydrantDataMapper; + @Resource + private WellInfoDao wellInfoDao; + @Resource + private LiquidDataMapper liquidDataMapper; + @Resource + private NoiseDataMapper noiseDataMapper; + @Resource + private HarmfulDataMapper harmfulDataMapper; + @Resource + private DeviceTypeConfig deviceTypeConfig; + + + @Override + public void nextDayData() { + String[] deviceTypeList = deviceTypeConfig.getDayTypes().split(","); + for (String deviceType : deviceTypeList) { + List> devcodeList = dayDataDao.getListDevcodeByType(deviceType); + devcodeList.stream().forEach( + devcodeMap -> { + String devcode = deviceType == "7" ? devcodeMap.get("DBID") : devcodeMap.get("DEVCODE"); + deviceManger(deviceType, devcode); + } + ); + } + } + + //噪声是1 液位是5 有害气体是 7 消防栓是 14 + private void deviceManger(String deviceType, String devcode) { + switch (deviceType) { + case "1": + noiseDataCreator(devcode); + break; + case "5": + liquidDataCreator(devcode); + break; + case "7": + harmfulDataCreator(devcode); + break; + case "13": + wellDataCreator(devcode); + break; + case "14": + hydrantDataCreator(devcode); + break; + } + } + + private Random random = new Random(); + + private void wellDataCreator(String devcode) { + WellInfo wellInfo = new WellInfo(); + wellInfo.setDbid(SnowBizPhyId.getBizPhyId()); + wellInfo.setDevcode(devcode); + wellInfo.setDescn("状态正常"); + wellInfo.setCell("96"); + wellInfo.setStatus("0"); + wellInfo.setLogtime(new Date()); + wellInfoDao.insert(wellInfo); + } + + private void hydrantDataCreator(String devcode) { + HydrantData hydrantData = new HydrantData(); + hydrantData.setDbid(SnowBizPhyId.getBizPhyId()); + hydrantData.setDevcode(devcode); + hydrantData.setDescn("状态正常"); + hydrantData.setCell("98"); + hydrantData.setStatus("0"); + hydrantData.setLogtime(new Date()); + hydrantDataMapper.insert(hydrantData); + } + + private void harmfulDataCreator(String devcode) { + HarmfulData harmfulData = new HarmfulData(); + harmfulData.setDbid(SnowBizPhyId.getBizPhyId()); + harmfulData.setCo("0"); + harmfulData.setDevid(devcode); + harmfulData.setFiregas("0.0"); + harmfulData.setH2s("0"); + harmfulData.setO2("21.0"); + harmfulData.setUptime(new Date()); + harmfulData.setIsopen("0"); + harmfulDataMapper.insert(harmfulData); + } + + private void noiseDataCreator(String devcode) { + NoiseData noiseData = new NoiseData(); + DecimalFormat df = new DecimalFormat("0.0000"); + noiseData.setDbid(SnowBizPhyId.getBizPhyId()); + noiseData.setDevcode(devcode); + noiseData.setCell("95"); + noiseData.setDdata(df.format(random.nextDouble())); + noiseData.setFrequency(String.valueOf(random.nextInt(2000))); + noiseData.setLogtime(new Date()); + noiseData.setUptime(new Date()); + noiseDataMapper.insert(noiseData); + } + + private void liquidDataCreator(String devcode) { + LiquidData liquidData = new LiquidData(); + DecimalFormat df = new DecimalFormat("0.00"); + liquidData.setDbid(SnowBizPhyId.getBizPhyId()); + liquidData.setDevcode(devcode); + liquidData.setCell("92"); + liquidData.setLiquiddata(df.format(random.nextDouble()*5)); + liquidData.setLogtime(new Date()); + liquidData.setUptime(new Date()); + liquidDataMapper.insert(liquidData); + } + + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/src/main/java/com/casic/service/impl/DayDataProvider.java b/src/main/java/com/casic/service/impl/DayDataProvider.java new file mode 100644 index 0000000..cb77410 --- /dev/null +++ b/src/main/java/com/casic/service/impl/DayDataProvider.java @@ -0,0 +1,135 @@ +package com.casic.service.impl; + +import com.casic.config.DeviceTypeConfig; +import com.casic.dao.*; +import com.casic.entity.*; +import com.casic.service.DayDataService; +import com.casic.util.SnowBizPhyId; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; + +@Service +public class DayDataProvider implements DayDataService { + + @Resource + private DayDataDao dayDataDao; + @Resource + private HydrantDataMapper hydrantDataMapper; + @Resource + private WellInfoDao wellInfoDao; + @Resource + private LiquidDataMapper liquidDataMapper; + @Resource + private NoiseDataMapper noiseDataMapper; + @Resource + private HarmfulDataMapper harmfulDataMapper; + @Resource + private DeviceTypeConfig deviceTypeConfig; + + + @Override + public void nextDayData() { + String[] deviceTypeList = deviceTypeConfig.getDayTypes().split(","); + for (String deviceType : deviceTypeList) { + List> devcodeList = dayDataDao.getListDevcodeByType(deviceType); + devcodeList.stream().forEach( + devcodeMap -> { + String devcode = deviceType == "7" ? devcodeMap.get("DBID") : devcodeMap.get("DEVCODE"); + deviceManger(deviceType, devcode); + } + ); + } + } + + //噪声是1 液位是5 有害气体是 7 消防栓是 14 + private void deviceManger(String deviceType, String devcode) { + switch (deviceType) { + case "1": + noiseDataCreator(devcode); + break; + case "5": + liquidDataCreator(devcode); + break; + case "7": + harmfulDataCreator(devcode); + break; + case "13": + wellDataCreator(devcode); + break; + case "14": + hydrantDataCreator(devcode); + break; + } + } + + private Random random = new Random(); + + private void wellDataCreator(String devcode) { + WellInfo wellInfo = new WellInfo(); + wellInfo.setDbid(SnowBizPhyId.getBizPhyId()); + wellInfo.setDevcode(devcode); + wellInfo.setDescn("状态正常"); + wellInfo.setCell("96"); + wellInfo.setStatus("0"); + wellInfo.setLogtime(new Date()); + wellInfoDao.insert(wellInfo); + } + + private void hydrantDataCreator(String devcode) { + HydrantData hydrantData = new HydrantData(); + hydrantData.setDbid(SnowBizPhyId.getBizPhyId()); + hydrantData.setDevcode(devcode); + hydrantData.setDescn("状态正常"); + hydrantData.setCell("98"); + hydrantData.setStatus("0"); + hydrantData.setLogtime(new Date()); + hydrantDataMapper.insert(hydrantData); + } + + private void harmfulDataCreator(String devcode) { + HarmfulData harmfulData = new HarmfulData(); + harmfulData.setDbid(SnowBizPhyId.getBizPhyId()); + harmfulData.setCo("0"); + harmfulData.setDevid(devcode); + harmfulData.setFiregas("0.0"); + harmfulData.setH2s("0"); + harmfulData.setO2("21.0"); + harmfulData.setUptime(new Date()); + harmfulData.setIsopen("0"); + harmfulDataMapper.insert(harmfulData); + } + + private void noiseDataCreator(String devcode) { + NoiseData noiseData = new NoiseData(); + DecimalFormat df = new DecimalFormat("0.0000"); + noiseData.setDbid(SnowBizPhyId.getBizPhyId()); + noiseData.setDevcode(devcode); + noiseData.setCell("95"); + noiseData.setDdata(df.format(random.nextDouble())); + noiseData.setFrequency(String.valueOf(random.nextInt(2000))); + noiseData.setLogtime(new Date()); + noiseData.setUptime(new Date()); + noiseDataMapper.insert(noiseData); + } + + private void liquidDataCreator(String devcode) { + LiquidData liquidData = new LiquidData(); + DecimalFormat df = new DecimalFormat("0.00"); + liquidData.setDbid(SnowBizPhyId.getBizPhyId()); + liquidData.setDevcode(devcode); + liquidData.setCell("92"); + liquidData.setLiquiddata(df.format(random.nextDouble()*5)); + liquidData.setLogtime(new Date()); + liquidData.setUptime(new Date()); + liquidDataMapper.insert(liquidData); + } + + +} diff --git a/src/main/java/com/casic/service/impl/HourDataProvider.java b/src/main/java/com/casic/service/impl/HourDataProvider.java new file mode 100644 index 0000000..2e9e739 --- /dev/null +++ b/src/main/java/com/casic/service/impl/HourDataProvider.java @@ -0,0 +1,50 @@ +package com.casic.service.impl; + +import com.casic.dao.GasDataMapper; +import com.casic.dao.HourDataDao; +import com.casic.entity.GasData; +import com.casic.service.HourDataService; +import com.casic.util.SnowBizPhyId; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Random; + +@Service +public class HourDataProvider implements HourDataService { + //燃气是8 + @Resource + private GasDataMapper gasDataMapper; + @Resource + private HourDataDao hourDataDao; + + @Override + public void nextHourData() { + + List devcodeList = hourDataDao.getListDevcodeByType("8"); + devcodeList.stream() + .forEach( + devcode -> { + GasData gasData = GasDataBuilder(devcode); + gasDataMapper.insert(gasData); + }); + } + + private Random random = new Random(); + + private GasData GasDataBuilder(String devcode) { + DecimalFormat df = new DecimalFormat("0.00000000"); + GasData gasData = new GasData(); + gasData.setDbid(SnowBizPhyId.getBizPhyId()); + gasData.setAddress(devcode); + gasData.setCell("98"); + gasData.setStrength(df.format(random.nextDouble()/4)); + gasData.setLogtime(new Date()); + gasData.setUptime(new Date()); + return gasData; + } + +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/src/main/java/com/casic/service/impl/DayDataProvider.java b/src/main/java/com/casic/service/impl/DayDataProvider.java new file mode 100644 index 0000000..cb77410 --- /dev/null +++ b/src/main/java/com/casic/service/impl/DayDataProvider.java @@ -0,0 +1,135 @@ +package com.casic.service.impl; + +import com.casic.config.DeviceTypeConfig; +import com.casic.dao.*; +import com.casic.entity.*; +import com.casic.service.DayDataService; +import com.casic.util.SnowBizPhyId; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; + +@Service +public class DayDataProvider implements DayDataService { + + @Resource + private DayDataDao dayDataDao; + @Resource + private HydrantDataMapper hydrantDataMapper; + @Resource + private WellInfoDao wellInfoDao; + @Resource + private LiquidDataMapper liquidDataMapper; + @Resource + private NoiseDataMapper noiseDataMapper; + @Resource + private HarmfulDataMapper harmfulDataMapper; + @Resource + private DeviceTypeConfig deviceTypeConfig; + + + @Override + public void nextDayData() { + String[] deviceTypeList = deviceTypeConfig.getDayTypes().split(","); + for (String deviceType : deviceTypeList) { + List> devcodeList = dayDataDao.getListDevcodeByType(deviceType); + devcodeList.stream().forEach( + devcodeMap -> { + String devcode = deviceType == "7" ? devcodeMap.get("DBID") : devcodeMap.get("DEVCODE"); + deviceManger(deviceType, devcode); + } + ); + } + } + + //噪声是1 液位是5 有害气体是 7 消防栓是 14 + private void deviceManger(String deviceType, String devcode) { + switch (deviceType) { + case "1": + noiseDataCreator(devcode); + break; + case "5": + liquidDataCreator(devcode); + break; + case "7": + harmfulDataCreator(devcode); + break; + case "13": + wellDataCreator(devcode); + break; + case "14": + hydrantDataCreator(devcode); + break; + } + } + + private Random random = new Random(); + + private void wellDataCreator(String devcode) { + WellInfo wellInfo = new WellInfo(); + wellInfo.setDbid(SnowBizPhyId.getBizPhyId()); + wellInfo.setDevcode(devcode); + wellInfo.setDescn("状态正常"); + wellInfo.setCell("96"); + wellInfo.setStatus("0"); + wellInfo.setLogtime(new Date()); + wellInfoDao.insert(wellInfo); + } + + private void hydrantDataCreator(String devcode) { + HydrantData hydrantData = new HydrantData(); + hydrantData.setDbid(SnowBizPhyId.getBizPhyId()); + hydrantData.setDevcode(devcode); + hydrantData.setDescn("状态正常"); + hydrantData.setCell("98"); + hydrantData.setStatus("0"); + hydrantData.setLogtime(new Date()); + hydrantDataMapper.insert(hydrantData); + } + + private void harmfulDataCreator(String devcode) { + HarmfulData harmfulData = new HarmfulData(); + harmfulData.setDbid(SnowBizPhyId.getBizPhyId()); + harmfulData.setCo("0"); + harmfulData.setDevid(devcode); + harmfulData.setFiregas("0.0"); + harmfulData.setH2s("0"); + harmfulData.setO2("21.0"); + harmfulData.setUptime(new Date()); + harmfulData.setIsopen("0"); + harmfulDataMapper.insert(harmfulData); + } + + private void noiseDataCreator(String devcode) { + NoiseData noiseData = new NoiseData(); + DecimalFormat df = new DecimalFormat("0.0000"); + noiseData.setDbid(SnowBizPhyId.getBizPhyId()); + noiseData.setDevcode(devcode); + noiseData.setCell("95"); + noiseData.setDdata(df.format(random.nextDouble())); + noiseData.setFrequency(String.valueOf(random.nextInt(2000))); + noiseData.setLogtime(new Date()); + noiseData.setUptime(new Date()); + noiseDataMapper.insert(noiseData); + } + + private void liquidDataCreator(String devcode) { + LiquidData liquidData = new LiquidData(); + DecimalFormat df = new DecimalFormat("0.00"); + liquidData.setDbid(SnowBizPhyId.getBizPhyId()); + liquidData.setDevcode(devcode); + liquidData.setCell("92"); + liquidData.setLiquiddata(df.format(random.nextDouble()*5)); + liquidData.setLogtime(new Date()); + liquidData.setUptime(new Date()); + liquidDataMapper.insert(liquidData); + } + + +} diff --git a/src/main/java/com/casic/service/impl/HourDataProvider.java b/src/main/java/com/casic/service/impl/HourDataProvider.java new file mode 100644 index 0000000..2e9e739 --- /dev/null +++ b/src/main/java/com/casic/service/impl/HourDataProvider.java @@ -0,0 +1,50 @@ +package com.casic.service.impl; + +import com.casic.dao.GasDataMapper; +import com.casic.dao.HourDataDao; +import com.casic.entity.GasData; +import com.casic.service.HourDataService; +import com.casic.util.SnowBizPhyId; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Random; + +@Service +public class HourDataProvider implements HourDataService { + //燃气是8 + @Resource + private GasDataMapper gasDataMapper; + @Resource + private HourDataDao hourDataDao; + + @Override + public void nextHourData() { + + List devcodeList = hourDataDao.getListDevcodeByType("8"); + devcodeList.stream() + .forEach( + devcode -> { + GasData gasData = GasDataBuilder(devcode); + gasDataMapper.insert(gasData); + }); + } + + private Random random = new Random(); + + private GasData GasDataBuilder(String devcode) { + DecimalFormat df = new DecimalFormat("0.00000000"); + GasData gasData = new GasData(); + gasData.setDbid(SnowBizPhyId.getBizPhyId()); + gasData.setAddress(devcode); + gasData.setCell("98"); + gasData.setStrength(df.format(random.nextDouble()/4)); + gasData.setLogtime(new Date()); + gasData.setUptime(new Date()); + return gasData; + } + +} diff --git a/src/main/java/com/casic/util/SnowBizPhyId.java b/src/main/java/com/casic/util/SnowBizPhyId.java new file mode 100644 index 0000000..0e1cdb8 --- /dev/null +++ b/src/main/java/com/casic/util/SnowBizPhyId.java @@ -0,0 +1,15 @@ +package com.casic.util; + +import xyz.downgoon.snowflake.Snowflake; + +/** + * @author cz + * @date 2021-10-16 17:41 + */ +public class SnowBizPhyId { + private static Snowflake snowflake = new Snowflake(0, 2); + + public static Long getBizPhyId() { + return snowflake.nextId(); + } +} diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/src/main/java/com/casic/service/impl/DayDataProvider.java b/src/main/java/com/casic/service/impl/DayDataProvider.java new file mode 100644 index 0000000..cb77410 --- /dev/null +++ b/src/main/java/com/casic/service/impl/DayDataProvider.java @@ -0,0 +1,135 @@ +package com.casic.service.impl; + +import com.casic.config.DeviceTypeConfig; +import com.casic.dao.*; +import com.casic.entity.*; +import com.casic.service.DayDataService; +import com.casic.util.SnowBizPhyId; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; + +@Service +public class DayDataProvider implements DayDataService { + + @Resource + private DayDataDao dayDataDao; + @Resource + private HydrantDataMapper hydrantDataMapper; + @Resource + private WellInfoDao wellInfoDao; + @Resource + private LiquidDataMapper liquidDataMapper; + @Resource + private NoiseDataMapper noiseDataMapper; + @Resource + private HarmfulDataMapper harmfulDataMapper; + @Resource + private DeviceTypeConfig deviceTypeConfig; + + + @Override + public void nextDayData() { + String[] deviceTypeList = deviceTypeConfig.getDayTypes().split(","); + for (String deviceType : deviceTypeList) { + List> devcodeList = dayDataDao.getListDevcodeByType(deviceType); + devcodeList.stream().forEach( + devcodeMap -> { + String devcode = deviceType == "7" ? devcodeMap.get("DBID") : devcodeMap.get("DEVCODE"); + deviceManger(deviceType, devcode); + } + ); + } + } + + //噪声是1 液位是5 有害气体是 7 消防栓是 14 + private void deviceManger(String deviceType, String devcode) { + switch (deviceType) { + case "1": + noiseDataCreator(devcode); + break; + case "5": + liquidDataCreator(devcode); + break; + case "7": + harmfulDataCreator(devcode); + break; + case "13": + wellDataCreator(devcode); + break; + case "14": + hydrantDataCreator(devcode); + break; + } + } + + private Random random = new Random(); + + private void wellDataCreator(String devcode) { + WellInfo wellInfo = new WellInfo(); + wellInfo.setDbid(SnowBizPhyId.getBizPhyId()); + wellInfo.setDevcode(devcode); + wellInfo.setDescn("状态正常"); + wellInfo.setCell("96"); + wellInfo.setStatus("0"); + wellInfo.setLogtime(new Date()); + wellInfoDao.insert(wellInfo); + } + + private void hydrantDataCreator(String devcode) { + HydrantData hydrantData = new HydrantData(); + hydrantData.setDbid(SnowBizPhyId.getBizPhyId()); + hydrantData.setDevcode(devcode); + hydrantData.setDescn("状态正常"); + hydrantData.setCell("98"); + hydrantData.setStatus("0"); + hydrantData.setLogtime(new Date()); + hydrantDataMapper.insert(hydrantData); + } + + private void harmfulDataCreator(String devcode) { + HarmfulData harmfulData = new HarmfulData(); + harmfulData.setDbid(SnowBizPhyId.getBizPhyId()); + harmfulData.setCo("0"); + harmfulData.setDevid(devcode); + harmfulData.setFiregas("0.0"); + harmfulData.setH2s("0"); + harmfulData.setO2("21.0"); + harmfulData.setUptime(new Date()); + harmfulData.setIsopen("0"); + harmfulDataMapper.insert(harmfulData); + } + + private void noiseDataCreator(String devcode) { + NoiseData noiseData = new NoiseData(); + DecimalFormat df = new DecimalFormat("0.0000"); + noiseData.setDbid(SnowBizPhyId.getBizPhyId()); + noiseData.setDevcode(devcode); + noiseData.setCell("95"); + noiseData.setDdata(df.format(random.nextDouble())); + noiseData.setFrequency(String.valueOf(random.nextInt(2000))); + noiseData.setLogtime(new Date()); + noiseData.setUptime(new Date()); + noiseDataMapper.insert(noiseData); + } + + private void liquidDataCreator(String devcode) { + LiquidData liquidData = new LiquidData(); + DecimalFormat df = new DecimalFormat("0.00"); + liquidData.setDbid(SnowBizPhyId.getBizPhyId()); + liquidData.setDevcode(devcode); + liquidData.setCell("92"); + liquidData.setLiquiddata(df.format(random.nextDouble()*5)); + liquidData.setLogtime(new Date()); + liquidData.setUptime(new Date()); + liquidDataMapper.insert(liquidData); + } + + +} diff --git a/src/main/java/com/casic/service/impl/HourDataProvider.java b/src/main/java/com/casic/service/impl/HourDataProvider.java new file mode 100644 index 0000000..2e9e739 --- /dev/null +++ b/src/main/java/com/casic/service/impl/HourDataProvider.java @@ -0,0 +1,50 @@ +package com.casic.service.impl; + +import com.casic.dao.GasDataMapper; +import com.casic.dao.HourDataDao; +import com.casic.entity.GasData; +import com.casic.service.HourDataService; +import com.casic.util.SnowBizPhyId; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Random; + +@Service +public class HourDataProvider implements HourDataService { + //燃气是8 + @Resource + private GasDataMapper gasDataMapper; + @Resource + private HourDataDao hourDataDao; + + @Override + public void nextHourData() { + + List devcodeList = hourDataDao.getListDevcodeByType("8"); + devcodeList.stream() + .forEach( + devcode -> { + GasData gasData = GasDataBuilder(devcode); + gasDataMapper.insert(gasData); + }); + } + + private Random random = new Random(); + + private GasData GasDataBuilder(String devcode) { + DecimalFormat df = new DecimalFormat("0.00000000"); + GasData gasData = new GasData(); + gasData.setDbid(SnowBizPhyId.getBizPhyId()); + gasData.setAddress(devcode); + gasData.setCell("98"); + gasData.setStrength(df.format(random.nextDouble()/4)); + gasData.setLogtime(new Date()); + gasData.setUptime(new Date()); + return gasData; + } + +} diff --git a/src/main/java/com/casic/util/SnowBizPhyId.java b/src/main/java/com/casic/util/SnowBizPhyId.java new file mode 100644 index 0000000..0e1cdb8 --- /dev/null +++ b/src/main/java/com/casic/util/SnowBizPhyId.java @@ -0,0 +1,15 @@ +package com.casic.util; + +import xyz.downgoon.snowflake.Snowflake; + +/** + * @author cz + * @date 2021-10-16 17:41 + */ +public class SnowBizPhyId { + private static Snowflake snowflake = new Snowflake(0, 2); + + public static Long getBizPhyId() { + return snowflake.nextId(); + } +} diff --git a/src/main/resources/config/application-dev.yml b/src/main/resources/config/application-dev.yml new file mode 100644 index 0000000..b708f8b --- /dev/null +++ b/src/main/resources/config/application-dev.yml @@ -0,0 +1,40 @@ +server: + port: 11220 +################### spring配置 ################### +spring: + datasource: + driverClassName: oracle.jdbc.driver.OracleDriver + url: jdbc:oracle:thin:@112.64.136.61:1521:orcl + username: alarm + password: alarm + session: + store-type: redis + redis: + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer + # session: + # store-type: redis +#flowable数据源和多数据源配置 +casic: + kaptcha-open: false #是否开启登录时验证码 (true/false) + #kaptcha-open: false #是否开启登录时验证码 (true/false) + db: + init: + enable: false + spring-session-open: false #开启spring session +smartcity: + device: + redis: + invalid-time: 86400 + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + config-prefix: 'Casic:' +logging: + level.root: error + level.com.casic: debug + file: + path: logs/ + name: missiles.log \ No newline at end of file diff --git a/missiles.log b/missiles.log new file mode 100644 index 0000000..e7c81af --- /dev/null +++ b/missiles.log @@ -0,0 +1,25 @@ +2023-02-01 13:26:25.056 INFO 28176 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 28176 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:25.067 DEBUG 28176 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:25.067 INFO 28176 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:26.677 ERROR 28176 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +Field dayDataProvider in com.casic.config.task.TaskConfigurer required a bean of type 'com.casic.dao.WellInfoDao' that could not be found. + +The injection point has the following annotations: + - @org.springframework.beans.factory.annotation.Autowired(required=true) + + +Action: + +Consider defining a bean of type 'com.casic.dao.WellInfoDao' in your configuration. + +2023-02-01 13:26:49.502 INFO 38948 --- [main] com.casic.CasicApplication : Starting CasicApplication using Java 1.8.0_91 on yishengpingan with PID 38948 (D:\cz\203\管网\升级\mysql\zc-device-data\target\classes started by 77042 in D:\cz\203\管网\升级\mysql\zc-device-data) +2023-02-01 13:26:49.502 DEBUG 38948 --- [main] com.casic.CasicApplication : Running with Spring Boot v2.4.5, Spring v5.3.6 +2023-02-01 13:26:49.503 INFO 38948 --- [main] com.casic.CasicApplication : The following profiles are active: dev +2023-02-01 13:26:51.405 INFO 38948 --- [main] com.casic.CasicApplication : Started CasicApplication in 2.137 seconds (JVM running for 2.817) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..6d8a31d --- /dev/null +++ b/pom.xml @@ -0,0 +1,195 @@ + + + 4.0.0 + + com.casic + device-data-creator + 1.0-SNAPSHOT + + + + UTF-8 + UTF-8 + 1.8 + + + + + + org.springframework.boot + spring-boot-starter + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-tomcat + 2.4.5 + + + + org.springframework.boot + spring-boot-starter-web + 2.4.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.4.5 + + + + mysql + mysql-connector-java + 8.0.16 + compile + + + + com.baomidou + mybatis-plus-boot-starter + 3.4.3 + + + + org.apache.httpcomponents + httpclient + 4.5.9 + + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + + org.apache.commons + commons-lang3 + 3.1 + + + + org.quartz-scheduler + quartz + 2.3.0 + + + + org.postgresql + postgresql + 42.2.19 + + + + org.projectlombok + lombok + 1.18.20 + + + + + com.alibaba + druid + 1.2.6 + + + + com.alibaba + fastjson + 1.2.73 + + + + redis.clients + jedis + 3.1.0 + jar + + + + org.springframework.data + spring-data-redis + 2.4.8 + + + + + com.oracle.database.jdbc + ojdbc6 + 11.2.0.4 + + + + xyz.downgoon + snowflake + 1.0.0 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.4.5 + + true + + com.casic.CasicApplication + exec + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-war-plugin + + + false + + + + + + + src/main/resources + + + /config/*/* + /config/*-*.yml + + true + + + src/main/resources + + **/*.xml + + true + + + + + \ No newline at end of file diff --git a/src/main/java/com/casic/CasicApplication.java b/src/main/java/com/casic/CasicApplication.java new file mode 100644 index 0000000..22fa08d --- /dev/null +++ b/src/main/java/com/casic/CasicApplication.java @@ -0,0 +1,23 @@ +package com.casic; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + + +/** + * SpringBoot方式启动类 + * + * @author cz + * @Date 2022/09/08 14:28 + */ + +@Slf4j +//@ComponentScan(basePackages= "com.casic.**") +@SpringBootApplication +public class CasicApplication { + public static void main(String[] args) { + log.info("CasicApplication is success!"); + SpringApplication.run(CasicApplication.class, args); + } +} diff --git a/src/main/java/com/casic/config/DeviceTypeConfig.java b/src/main/java/com/casic/config/DeviceTypeConfig.java new file mode 100644 index 0000000..a2b7b07 --- /dev/null +++ b/src/main/java/com/casic/config/DeviceTypeConfig.java @@ -0,0 +1,16 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Data +public class DeviceTypeConfig { + + @Value("${casic.device.hour-types}") + private String hourTypes; + + @Value("${casic.device.day-types}") + private String dayTypes; +} diff --git a/src/main/java/com/casic/config/TimeConfig.java b/src/main/java/com/casic/config/TimeConfig.java new file mode 100644 index 0000000..9c47d9f --- /dev/null +++ b/src/main/java/com/casic/config/TimeConfig.java @@ -0,0 +1,17 @@ +package com.casic.config; + +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Data +@Configuration +public class TimeConfig { + + @Value("${casic.task.cron}") + private String dayCronTime; + + @Value("${casic.task.gas-cron}") + private String hourCronTime; + +} diff --git a/src/main/java/com/casic/config/task/TaskConfigurer.java b/src/main/java/com/casic/config/task/TaskConfigurer.java new file mode 100644 index 0000000..ecca2cb --- /dev/null +++ b/src/main/java/com/casic/config/task/TaskConfigurer.java @@ -0,0 +1,57 @@ +package com.casic.config.task; + +import com.casic.config.TimeConfig; +import com.casic.service.DayDataService; +import com.casic.service.HourDataService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.SchedulingConfigurer; +import org.springframework.scheduling.config.ScheduledTaskRegistrar; +import org.springframework.scheduling.config.TriggerTask; +import org.springframework.scheduling.support.CronTrigger; + +@Configuration +@EnableScheduling +public class TaskConfigurer implements SchedulingConfigurer { + + @Autowired + private HourDataService hourDataProvider; + @Autowired + private DayDataService dayDataProvider; + @Autowired + private TimeConfig timeConfig; + + @Override + public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { + TriggerTask triggrtTask = new TriggerTask(nextDayDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getDayCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + triggrtTask = new TriggerTask(nextHourDevice(), + triggerContext -> { + return new CronTrigger(timeConfig.getHourCronTime()).nextExecutionTime(triggerContext); + }); + taskRegistrar.addTriggerTask(triggrtTask); + } + + private Runnable nextDayDevice() { + return new Runnable() { + @Override + public void run() { + dayDataProvider.nextDayData(); + } + }; + } + + private Runnable nextHourDevice() { + return new Runnable() { + @Override + public void run() { + hourDataProvider.nextHourData(); + } + }; + } + +} \ No newline at end of file diff --git a/src/main/java/com/casic/dao/DayDataDao.java b/src/main/java/com/casic/dao/DayDataDao.java new file mode 100644 index 0000000..f7c3f12 --- /dev/null +++ b/src/main/java/com/casic/dao/DayDataDao.java @@ -0,0 +1,19 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface DayDataDao { + + @Select("SELECT devcode,dbid " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType} " + + "AND ACTIVE=1 ") + List> getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/GasDataMapper.java b/src/main/java/com/casic/dao/GasDataMapper.java new file mode 100644 index 0000000..3a693ca --- /dev/null +++ b/src/main/java/com/casic/dao/GasDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.GasData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface GasDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HarmfulDataMapper.java b/src/main/java/com/casic/dao/HarmfulDataMapper.java new file mode 100644 index 0000000..5fc9685 --- /dev/null +++ b/src/main/java/com/casic/dao/HarmfulDataMapper.java @@ -0,0 +1,10 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HarmfulData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HarmfulDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/casic/dao/HourDataDao.java b/src/main/java/com/casic/dao/HourDataDao.java new file mode 100644 index 0000000..1daeb48 --- /dev/null +++ b/src/main/java/com/casic/dao/HourDataDao.java @@ -0,0 +1,18 @@ +package com.casic.dao; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface HourDataDao { + + @Select("SELECT DEVCODE " + + "FROM ALARM_DEVICE " + + "WHERE DEVICETYPE_ID=#{deviceType}" + + "AND ACTIVE=1 ") + List getListDevcodeByType(@Param("deviceType")String deviceType); + +} diff --git a/src/main/java/com/casic/dao/HydrantDataMapper.java b/src/main/java/com/casic/dao/HydrantDataMapper.java new file mode 100644 index 0000000..ac6584c --- /dev/null +++ b/src/main/java/com/casic/dao/HydrantDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.HydrantData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface HydrantDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/LiquidDataMapper.java b/src/main/java/com/casic/dao/LiquidDataMapper.java new file mode 100644 index 0000000..a39f177 --- /dev/null +++ b/src/main/java/com/casic/dao/LiquidDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.LiquidData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface LiquidDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/NoiseDataMapper.java b/src/main/java/com/casic/dao/NoiseDataMapper.java new file mode 100644 index 0000000..5a14cb0 --- /dev/null +++ b/src/main/java/com/casic/dao/NoiseDataMapper.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.NoiseData; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface NoiseDataMapper extends BaseMapper { +} diff --git a/src/main/java/com/casic/dao/WellInfoDao.java b/src/main/java/com/casic/dao/WellInfoDao.java new file mode 100644 index 0000000..d4fae6b --- /dev/null +++ b/src/main/java/com/casic/dao/WellInfoDao.java @@ -0,0 +1,9 @@ +package com.casic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.entity.WellInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WellInfoDao extends BaseMapper { +} diff --git a/src/main/java/com/casic/entity/GasData.java b/src/main/java/com/casic/entity/GasData.java new file mode 100644 index 0000000..ee6c794 --- /dev/null +++ b/src/main/java/com/casic/entity/GasData.java @@ -0,0 +1,23 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("XT_RQ_PERIOD") +public class GasData { + private long dbid; + private String address; + private String cell; + private String flow; + private Date logtime; + private String inpress; + private String outpress; + private String strength; + private String temperature; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HarmfulData.java b/src/main/java/com/casic/entity/HarmfulData.java new file mode 100644 index 0000000..5345d94 --- /dev/null +++ b/src/main/java/com/casic/entity/HarmfulData.java @@ -0,0 +1,20 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("WS_PERIOD_DATA") +public class HarmfulData { + private Long dbid; + private String devid; + private String firegas; + private Date logtime; + private String isopen; + private String co; + private String h2s; + private String o2; + private Date uptime; +} diff --git a/src/main/java/com/casic/entity/HydrantData.java b/src/main/java/com/casic/entity/HydrantData.java new file mode 100644 index 0000000..dfdc8f1 --- /dev/null +++ b/src/main/java/com/casic/entity/HydrantData.java @@ -0,0 +1,29 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author cz + * @date 2022-7-16 + * 有害气体 + */ +@Data +@NoArgsConstructor +@TableName("ALARM_HYDRANT_INFO") +public class HydrantData { + private Long dbid; + private String devcode; + private String status; + private String descn; + private String cell; + private String pci; + private String rsrp; + private String snr; + private Date logtime; +} diff --git a/src/main/java/com/casic/entity/LiquidData.java b/src/main/java/com/casic/entity/LiquidData.java new file mode 100644 index 0000000..b026a44 --- /dev/null +++ b/src/main/java/com/casic/entity/LiquidData.java @@ -0,0 +1,22 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_LIQUID") +public class LiquidData { + private long dbid; + private String cell; + private String devcode; + private String liquiddata; + private Date logtime; + private String signal; + private String status; + private Date uptime; + +} diff --git a/src/main/java/com/casic/entity/NoiseData.java b/src/main/java/com/casic/entity/NoiseData.java new file mode 100644 index 0000000..12aeb5a --- /dev/null +++ b/src/main/java/com/casic/entity/NoiseData.java @@ -0,0 +1,32 @@ +package com.casic.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("AD_DJ_NOISE") +public class NoiseData { + private long dbid; + private String cell; + private String dbegin; + private String dcount; + private String ddata; + private String dinterval; + private String devcode; + private String lbegin; + private String lcount; + private String ldata; + private String linterval; + private Date logtime; + private String status; + private String signal; + private Date uptime; + private String frequency; + private String warelessclose; + private String warelessopen; +} diff --git a/src/main/java/com/casic/entity/WellInfo.java b/src/main/java/com/casic/entity/WellInfo.java new file mode 100644 index 0000000..8030be9 --- /dev/null +++ b/src/main/java/com/casic/entity/WellInfo.java @@ -0,0 +1,17 @@ +package com.casic.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("casic_well_info") +public class WellInfo { + private long dbid; + private String devcode; + private String cell; + private String descn; + private String status; + private Date logtime; +} diff --git a/src/main/java/com/casic/service/DayDataService.java b/src/main/java/com/casic/service/DayDataService.java new file mode 100644 index 0000000..2400b10 --- /dev/null +++ b/src/main/java/com/casic/service/DayDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface DayDataService { + void nextDayData(); +} diff --git a/src/main/java/com/casic/service/HourDataService.java b/src/main/java/com/casic/service/HourDataService.java new file mode 100644 index 0000000..67186bb --- /dev/null +++ b/src/main/java/com/casic/service/HourDataService.java @@ -0,0 +1,5 @@ +package com.casic.service; + +public interface HourDataService { + void nextHourData(); +} diff --git a/src/main/java/com/casic/service/impl/DayDataProvider.java b/src/main/java/com/casic/service/impl/DayDataProvider.java new file mode 100644 index 0000000..cb77410 --- /dev/null +++ b/src/main/java/com/casic/service/impl/DayDataProvider.java @@ -0,0 +1,135 @@ +package com.casic.service.impl; + +import com.casic.config.DeviceTypeConfig; +import com.casic.dao.*; +import com.casic.entity.*; +import com.casic.service.DayDataService; +import com.casic.util.SnowBizPhyId; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; + +@Service +public class DayDataProvider implements DayDataService { + + @Resource + private DayDataDao dayDataDao; + @Resource + private HydrantDataMapper hydrantDataMapper; + @Resource + private WellInfoDao wellInfoDao; + @Resource + private LiquidDataMapper liquidDataMapper; + @Resource + private NoiseDataMapper noiseDataMapper; + @Resource + private HarmfulDataMapper harmfulDataMapper; + @Resource + private DeviceTypeConfig deviceTypeConfig; + + + @Override + public void nextDayData() { + String[] deviceTypeList = deviceTypeConfig.getDayTypes().split(","); + for (String deviceType : deviceTypeList) { + List> devcodeList = dayDataDao.getListDevcodeByType(deviceType); + devcodeList.stream().forEach( + devcodeMap -> { + String devcode = deviceType == "7" ? devcodeMap.get("DBID") : devcodeMap.get("DEVCODE"); + deviceManger(deviceType, devcode); + } + ); + } + } + + //噪声是1 液位是5 有害气体是 7 消防栓是 14 + private void deviceManger(String deviceType, String devcode) { + switch (deviceType) { + case "1": + noiseDataCreator(devcode); + break; + case "5": + liquidDataCreator(devcode); + break; + case "7": + harmfulDataCreator(devcode); + break; + case "13": + wellDataCreator(devcode); + break; + case "14": + hydrantDataCreator(devcode); + break; + } + } + + private Random random = new Random(); + + private void wellDataCreator(String devcode) { + WellInfo wellInfo = new WellInfo(); + wellInfo.setDbid(SnowBizPhyId.getBizPhyId()); + wellInfo.setDevcode(devcode); + wellInfo.setDescn("状态正常"); + wellInfo.setCell("96"); + wellInfo.setStatus("0"); + wellInfo.setLogtime(new Date()); + wellInfoDao.insert(wellInfo); + } + + private void hydrantDataCreator(String devcode) { + HydrantData hydrantData = new HydrantData(); + hydrantData.setDbid(SnowBizPhyId.getBizPhyId()); + hydrantData.setDevcode(devcode); + hydrantData.setDescn("状态正常"); + hydrantData.setCell("98"); + hydrantData.setStatus("0"); + hydrantData.setLogtime(new Date()); + hydrantDataMapper.insert(hydrantData); + } + + private void harmfulDataCreator(String devcode) { + HarmfulData harmfulData = new HarmfulData(); + harmfulData.setDbid(SnowBizPhyId.getBizPhyId()); + harmfulData.setCo("0"); + harmfulData.setDevid(devcode); + harmfulData.setFiregas("0.0"); + harmfulData.setH2s("0"); + harmfulData.setO2("21.0"); + harmfulData.setUptime(new Date()); + harmfulData.setIsopen("0"); + harmfulDataMapper.insert(harmfulData); + } + + private void noiseDataCreator(String devcode) { + NoiseData noiseData = new NoiseData(); + DecimalFormat df = new DecimalFormat("0.0000"); + noiseData.setDbid(SnowBizPhyId.getBizPhyId()); + noiseData.setDevcode(devcode); + noiseData.setCell("95"); + noiseData.setDdata(df.format(random.nextDouble())); + noiseData.setFrequency(String.valueOf(random.nextInt(2000))); + noiseData.setLogtime(new Date()); + noiseData.setUptime(new Date()); + noiseDataMapper.insert(noiseData); + } + + private void liquidDataCreator(String devcode) { + LiquidData liquidData = new LiquidData(); + DecimalFormat df = new DecimalFormat("0.00"); + liquidData.setDbid(SnowBizPhyId.getBizPhyId()); + liquidData.setDevcode(devcode); + liquidData.setCell("92"); + liquidData.setLiquiddata(df.format(random.nextDouble()*5)); + liquidData.setLogtime(new Date()); + liquidData.setUptime(new Date()); + liquidDataMapper.insert(liquidData); + } + + +} diff --git a/src/main/java/com/casic/service/impl/HourDataProvider.java b/src/main/java/com/casic/service/impl/HourDataProvider.java new file mode 100644 index 0000000..2e9e739 --- /dev/null +++ b/src/main/java/com/casic/service/impl/HourDataProvider.java @@ -0,0 +1,50 @@ +package com.casic.service.impl; + +import com.casic.dao.GasDataMapper; +import com.casic.dao.HourDataDao; +import com.casic.entity.GasData; +import com.casic.service.HourDataService; +import com.casic.util.SnowBizPhyId; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.DecimalFormat; +import java.util.Date; +import java.util.List; +import java.util.Random; + +@Service +public class HourDataProvider implements HourDataService { + //燃气是8 + @Resource + private GasDataMapper gasDataMapper; + @Resource + private HourDataDao hourDataDao; + + @Override + public void nextHourData() { + + List devcodeList = hourDataDao.getListDevcodeByType("8"); + devcodeList.stream() + .forEach( + devcode -> { + GasData gasData = GasDataBuilder(devcode); + gasDataMapper.insert(gasData); + }); + } + + private Random random = new Random(); + + private GasData GasDataBuilder(String devcode) { + DecimalFormat df = new DecimalFormat("0.00000000"); + GasData gasData = new GasData(); + gasData.setDbid(SnowBizPhyId.getBizPhyId()); + gasData.setAddress(devcode); + gasData.setCell("98"); + gasData.setStrength(df.format(random.nextDouble()/4)); + gasData.setLogtime(new Date()); + gasData.setUptime(new Date()); + return gasData; + } + +} diff --git a/src/main/java/com/casic/util/SnowBizPhyId.java b/src/main/java/com/casic/util/SnowBizPhyId.java new file mode 100644 index 0000000..0e1cdb8 --- /dev/null +++ b/src/main/java/com/casic/util/SnowBizPhyId.java @@ -0,0 +1,15 @@ +package com.casic.util; + +import xyz.downgoon.snowflake.Snowflake; + +/** + * @author cz + * @date 2021-10-16 17:41 + */ +public class SnowBizPhyId { + private static Snowflake snowflake = new Snowflake(0, 2); + + public static Long getBizPhyId() { + return snowflake.nextId(); + } +} diff --git a/src/main/resources/config/application-dev.yml b/src/main/resources/config/application-dev.yml new file mode 100644 index 0000000..b708f8b --- /dev/null +++ b/src/main/resources/config/application-dev.yml @@ -0,0 +1,40 @@ +server: + port: 11220 +################### spring配置 ################### +spring: + datasource: + driverClassName: oracle.jdbc.driver.OracleDriver + url: jdbc:oracle:thin:@112.64.136.61:1521:orcl + username: alarm + password: alarm + session: + store-type: redis + redis: + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer + # session: + # store-type: redis +#flowable数据源和多数据源配置 +casic: + kaptcha-open: false #是否开启登录时验证码 (true/false) + #kaptcha-open: false #是否开启登录时验证码 (true/false) + db: + init: + enable: false + spring-session-open: false #开启spring session +smartcity: + device: + redis: + invalid-time: 86400 + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + config-prefix: 'Casic:' +logging: + level.root: error + level.com.casic: debug + file: + path: logs/ + name: missiles.log \ No newline at end of file diff --git a/src/main/resources/config/application.yml b/src/main/resources/config/application.yml new file mode 100644 index 0000000..89841a1 --- /dev/null +++ b/src/main/resources/config/application.yml @@ -0,0 +1,39 @@ +########################################################## +spring: + profiles: + active: dev + servlet: + multipart: + max-file-size: 50MB + max-request-size: 80MB + mvc: + pathmatch: + matching-strategy: ant_path_matcher +mybatis-plus: + global-config: + enable-sql-runner: true + configuration: + # 配置结果集属性为空时 是否映射返回结果 + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句,调试用 + mapper-locations: classpath:mapper/*.xml +mybatis: + mapper-locations: classpath:mapper/*.xml +#mybatis-plus: +# sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector +################### mybatis-plus配置 ################### +################### casic配置 ################### +flowable: + checkProcessDefinitions: false #不校验process文件 +casic: + device: + redis: + invalid-time: 86400 + host: 127.0.0.1 + port: 6379 + password: ew5T4K3#203lwh + config-prefix: 'Casic:' + hour-types: 8 + day-types: 1,5,7,13,14 + task: + cron: '0 0/1 * * * ? ' + gas-cron: '0 0 */1 * * ? ' \ No newline at end of file