From 0a1af1f220a6b47db08bc6d2e2b9660d08fe59ed Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 16 八月 2024 13:38:47 +0800 Subject: [PATCH] leftjoin --- ycl-server/src/main/java/com/ycl/task/VideoTask.java | 84 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 83 insertions(+), 1 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 0746c25..38e698b 100644 --- a/ycl-server/src/main/java/com/ycl/task/VideoTask.java +++ b/ycl-server/src/main/java/com/ycl/task/VideoTask.java @@ -1,18 +1,100 @@ package com.ycl.task; +import com.ycl.calculate.CalculationStrategy; +import com.ycl.factory.IndexCalculationFactory; +import com.ycl.platform.domain.entity.CheckIndexVideo; +import com.ycl.platform.domain.param.UY.RecordMetaDSumParam; +import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult; +import com.ycl.platform.domain.result.UY.MonitorQualifyResult; +import com.ycl.platform.domain.result.UY.QueryVqdResult; +import com.ycl.platform.domain.result.UY.VideoOnlineResult; +import com.ycl.platform.domain.vo.PlatformOnlineVO; +import com.ycl.platform.domain.vo.TMonitorVO; +import com.ycl.platform.mapper.CheckIndexVideoMapper; +import com.ycl.platform.mapper.PlatformOnlineMapper; +import com.ycl.platform.mapper.TMonitorMapper; +import com.ycl.platform.service.PlatformOnlineService; +import com.ycl.system.mapper.SysDeptMapper; +import com.ycl.utils.DateUtils; +import constant.ApiConstants; +import constant.CalculationStrategyConstants; +import constant.CheckConstants; +import enumeration.general.AreaDeptEnum; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 瑙嗛璁$畻鑰冩牳鎸囨爣浠诲姟 * 鍑屾櫒鎵ц璁$畻鏄ㄥぉ鏁版嵁 - * */ + */ @Slf4j @Component("videoTask") public class VideoTask { @Autowired private MongoTemplate mongoTemplate; + @Autowired + private PlatformOnlineMapper platformOnlineMapper; + @Autowired + private TMonitorMapper monitorMapper; + + 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<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<RecordMetaDSumParam> results = mongoTemplate.find(query, RecordMetaDSumParam.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_Usability); + 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); + } + + } -- Gitblit v1.8.0