| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- package com.shkpr.service.alambizplugin.bizservice;
- import com.global.base.log.LogLevelFlag;
- import com.global.base.log.LogPrintMgr;
- import com.shkpr.service.alambizplugin.commtools.InfluxDbUtil;
- import com.shkpr.service.alambizplugin.constants.InfluxdbMetadata;
- import com.shkpr.service.alambizplugin.constants.LogFlagBusiType;
- import com.shkpr.service.alambizplugin.dbdao.services.intef.PipeBurstDataPressCurService;
- import com.shkpr.service.alambizplugin.dto.PipeBurstDataPressCur;
- import org.springframework.scheduling.annotation.Scheduled;
- import org.springframework.stereotype.Component;
- import java.util.List;
- /**
- * 爆管数据service
- *
- * @author 欧阳劲驰
- * @since 1.0.0
- */
- @Component
- public class PipeBurstDataBizService {
- /**
- * log
- */
- private final String mStrClassName;
- private final String mBizType;
- private final PipeBurstDataPressCurService dataPressCurService;
- private final InfluxDbUtil influxDbUtil;
- public PipeBurstDataBizService(PipeBurstDataPressCurService dataPressCurService, InfluxDbUtil influxDbUtil) {
- mStrClassName = "PipeBurstDataPressCurServiceImpl";
- mBizType = LogFlagBusiType.BUSI_PIPE_BURST.toStrValue();
- this.dataPressCurService = dataPressCurService;
- this.influxDbUtil = influxDbUtil;
- migratePressCur();
- }
- /**
- * 迁移压力计
- * <p>每小时的05分</p>
- */
- @Scheduled(cron = "0 5 * * * *")
- public void migratePressCur() {
- LogPrintMgr.getInstance().printLogMsg(LogLevelFlag.LOG_INFO, mBizType, mStrClassName
- , "开始执行压力计数据迁移任务");
- long begin = System.currentTimeMillis();
- //读取数据
- List<PipeBurstDataPressCur> dates = influxDbUtil.query(InfluxdbMetadata.SQL.READ_PRESS_CUR_SQL, PipeBurstDataPressCur.class);
- LogPrintMgr.getInstance().printLogMsg(LogLevelFlag.LOG_INFO, mBizType, mStrClassName
- , String.format(
- "读取InfluxDb成功,数据量:%s"
- , dates.size()
- )
- );
- //批量合并
- Boolean upserted = dataPressCurService.upsertAll(dates);
- long end = System.currentTimeMillis();
- LogPrintMgr.getInstance().printLogMsg(LogLevelFlag.LOG_INFO, mBizType, mStrClassName
- , String.format(
- "结束执行压力计数据迁移任务,迁移状态:%s,用时(毫秒):%d"
- , upserted
- , (end - begin)
- )
- );
- }
- }
|