Selaa lähdekoodia

凌晨3点将前一天已抄表数据同步

zhoujiangyuan 4 vuotta sitten
vanhempi
commit
eecdfc6aab

+ 1 - 0
gydatasync/src/main/java/com/huaxu/gydatasync/GydatasyncApplication.java

@@ -20,5 +20,6 @@ public class GydatasyncApplication {
 * 桂阳数据同步需求说明
 * 1、将物联网系统中每天抄表数据插入到中间MISEMP数据库中的WaterData表中
 * 2、需完善物联网系统中的营销户号,营销户号从客户提供的excel表格中导出,根据客户地址关联得到营销户号,营销户号保存到物联网系统数据库中的sc_device表中的water_meter_file_no字段中
+*
 */
 

+ 2 - 2
gydatasync/src/main/java/com/huaxu/gydatasync/service/ReadMeter.java

@@ -24,8 +24,8 @@ public class ReadMeter {
     @Autowired
     private SaveMeterDataDao saveMeterDataDao;
 
-    //间隔24小时 程序启动多次会插入多次,存在重复插入数据的可能,需判断数据已存在
-    @Scheduled(fixedRate = 1000*60*60*24)
+    //定时任务 每天凌晨3点将前一天抄到数据的表同步
+    @Scheduled(cron = "0 0 3 * * ?")
     public void configureTasks(){
         try {
 

+ 0 - 2
gydatasync/src/main/resources/application-dev.properties

@@ -5,8 +5,6 @@ spring.datasource.first.password=100Zone@123
 spring.datasource.first.driverClassName=com.mysql.cj.jdbc.Driver
 spring.datasource.first.type=com.alibaba.druid.pool.DruidDataSource
 
-spring.datasource.hikari.minimum-idle=1
-spring.datasource.hikari.maximum-pool-size=2
 
 #数据源mssql Second
 spring.datasource.second.url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=MISEMP

+ 2 - 2
gydatasync/src/main/resources/mappers/mysql/ReadMeterMapper.xml

@@ -14,7 +14,7 @@
         sc_meter_read_record a
         left JOIN sc_device sd on a.device_id = sd.id
     WHERE
-        a.read_date = DATE_FORMAT( DATE_SUB( now(), INTERVAL 1 DAY ), '%Y%m%d' )
-        AND a.device_id IN ( SELECT id FROM sc_device WHERE building_id IN ( 6675, 6676, 6677, 6678, 6679, 6680 ) AND STATUS = 1 )
+        a.read_date = DATE_FORMAT( DATE_SUB( now(), INTERVAL 1 DAY ), '%Y%m%d' ) AND a.read_data is not null
+        AND a.device_id IN ( SELECT id FROM sc_device WHERE customer_id = (SELECT id FROM sc_customer WHERE customer_name='桂阳自来水有限公司') AND STATUS = 1 )
     </select>
 </mapper>