From 32b6f9f03fdb9056aed623e86385a94f58b045cf Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 29 八月 2024 16:41:21 +0800 Subject: [PATCH] OSD定时任务 --- ycl-server/src/main/java/com/ycl/task/VideoTask.java | 67 ++++++++++++++++++++++++++++++--- 1 files changed, 60 insertions(+), 7 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/task/VideoTask.java b/ycl-server/src/main/java/com/ycl/task/VideoTask.java index f910de4..3aa39a4 100644 --- a/ycl-server/src/main/java/com/ycl/task/VideoTask.java +++ b/ycl-server/src/main/java/com/ycl/task/VideoTask.java @@ -3,10 +3,12 @@ import com.ycl.calculate.CalculationStrategy; import com.ycl.factory.IndexCalculationFactory; -import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult; -import com.ycl.platform.domain.result.UY.QueryVqdResult; +import com.ycl.platform.domain.result.UY.*; +import com.ycl.platform.domain.vo.PlatformOnlineVO; +import com.ycl.platform.domain.vo.TMonitorVO; +import com.ycl.platform.mapper.PlatformOnlineMapper; +import com.ycl.platform.mapper.TMonitorMapper; import com.ycl.utils.DateUtils; -import constant.ApiConstants; import constant.CalculationStrategyConstants; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -21,22 +23,73 @@ /** * 瑙嗛璁$畻鑰冩牳鎸囨爣浠诲姟 * 鍑屾櫒鎵ц璁$畻鏄ㄥぉ鏁版嵁 - * */ + */ @Slf4j @Component("videoTask") public class VideoTask { @Autowired private MongoTemplate mongoTemplate; + @Autowired + private PlatformOnlineMapper platformOnlineMapper; + @Autowired + private TMonitorMapper monitorMapper; - public void siteOnlineTask(){ + public void siteOnlineTask() { Date yesterday = DateUtils.addDays(new Date(), -1); - //璁$畻鐐逛綅鍦ㄧ嚎鐜囧拰閲嶇偣鐐逛綅鍦ㄧ嚎鐜� + //璁$畻鐐逛綅鍦ㄧ嚎鐜囧拰閲嶇偣鐐逛綅鍦ㄧ嚎鐜囧拰鎸囨尌鍥惧儚鍦ㄧ嚎鐜� Query query = new Query(); query.addCriteria(Criteria .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))); - List<QueryVqdResult> results = mongoTemplate.find(query, QueryVqdResult.class); + List<VideoOnlineResult> results = mongoTemplate.find(query, VideoOnlineResult.class); CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_SiteOnline); calculator.calculate(results); } + + public void videoUsabilityTask() { + Date yesterday = DateUtils.addDays(new Date(), -1); + //璁$畻褰曞儚鍙敤鐜囧拰閲嶇偣褰曞儚鍙敤鐜� + Query query = new Query(); + query.addCriteria(Criteria + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))); + + List<RecordMetaDSumResult> results = mongoTemplate.find(query, RecordMetaDSumResult.class); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_Usability); + calculator.calculate(results); + } + + public void oneMonitorFileTask() { + //璁$畻涓�鏈轰竴妗f敞鍐岀巼銆佹。妗堣�冩牳姣� + List<TMonitorVO> tMonitorVOS = monitorMapper.selectMonitorVOList(); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_MonitorRegis_ArchiveRate); + calculator.calculate(tMonitorVOS); + } + public void oneMonitorQualifyTask(){ + //璁$畻涓�鏈轰竴妗e悎鏍肩巼 + Date yesterday = DateUtils.addDays(new Date(), -1); + + Query query = new Query(); + query.addCriteria(Criteria + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))); + List<MonitorQualifyResult> results = mongoTemplate.find(query, MonitorQualifyResult.class); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_MonitorQualify); + calculator.calculate(results); + } + public void platformOnlineTask() { + //璁$畻骞冲彴鍦ㄧ嚎鐜� + List<PlatformOnlineVO> list = platformOnlineMapper.yesterdayData(DateUtils.getMouthStart(new Date()), DateUtils.getMouthEnd(new Date())); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_PlatformOnline); + calculator.calculate(list); + } + public void osdTask() { + //璁$畻Osd鏍囨敞銆佹椂闂村噯纭巼 + Date yesterday = DateUtils.addDays(new Date(), -1); + Query query = new Query(); + query.addCriteria(Criteria + .where("mongoCreateTime").gte(DateUtils.getDayStart(yesterday)).lt(DateUtils.getDayEnd(yesterday))); + List<OsdCheckResult> results = mongoTemplate.find(query, OsdCheckResult.class); + CalculationStrategy calculator = IndexCalculationFactory.getCalculator(CalculationStrategyConstants.Video_OsdTime); + calculator.calculate(results); + } + } -- Gitblit v1.8.0