package cn.exrick.xboot.your.schedulings; import cn.exrick.xboot.core.common.redis.RedisTemplateHelper; import cn.exrick.xboot.core.entity.User; import cn.exrick.xboot.core.service.MessageService; import cn.exrick.xboot.core.service.UserService; import cn.exrick.xboot.your.entity.*; import cn.exrick.xboot.your.service.*; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.io.IOException; import java.util.Date; import java.util.List; //大屏首页统计 @Component public class StatisticPcScheduleImpl { @Autowired private IUserStatisticService iUserStatisticService; @Autowired private UserService userService; @Autowired private IDrivingRecordService iDrivingRecordService; @Autowired private IOrderTaskService iOrderTaskService; @Autowired private IAreaService iAreaService; @Autowired private ICustomerService iCustomerService; @Autowired private RedisTemplateHelper redisTemplate; @Autowired private ICarService iCarService; @Autowired private MessageService messageService; @Autowired private IRemoteCallService iRemoteCallService; @Autowired private IEquipmentService iEquipmentService; public static final String HEAD = "statistic1::"; @Scheduled(cron="0 15 * * * ?")//每小时15分钟时执行 public void execute(){ redisTemplate.set(HEAD+"car",iCarService.count()+"");//车辆 redisTemplate.set(HEAD+"user",userService.countByType(0)+"");//司机 redisTemplate.set(HEAD+"user2",userService.countByType(1)+"");//配送员 redisTemplate.set(HEAD+"dept","3");//转运站数 redisTemplate.set(HEAD+"area",iAreaService.count()+"");//片区数 redisTemplate.set(HEAD+"customer",iCustomerService.count()+"");//商户数 redisTemplate.set(HEAD+"out",iDrivingRecordService.count()+"");//出车次数 redisTemplate.set(HEAD+"driving",iUserStatisticService.sumDriving()+"");//行驶里程 redisTemplate.set(HEAD+"num",iOrderTaskService.sumNum()+"");//送货包数 redisTemplate.set(HEAD+"status",iOrderTaskService.sumStatus(1)+"");//电子签收次数 redisTemplate.set(HEAD+"notice",messageService.getTotalCount()+"");//通知公告条数 redisTemplate.set(HEAD+"video","0");//视频监控次数 redisTemplate.set(HEAD+"call",iRemoteCallService.count()+"");//远程呼叫次数 redisTemplate.set(HEAD+"paiCha","0");//事故隐患排查 //redisTemplate.set(HEAD+"wx",iCustomerService.sumLogin()+"");//小程序登陆次数 redisTemplate.set(HEAD+"wxRate",iCustomerService.countOpenId()+"");//小程序使用率 int i = iOrderTaskService.countLike(); redisTemplate.set(HEAD+"like",i+"");//互动次数 int count = iOrderTaskService.count(); if(count==0){ redisTemplate.set(HEAD+"likeRate","0");//互动率 }else{ redisTemplate.set(HEAD+"likeRate",(i*100)/count+"");//互动率 } redisTemplate.set(HEAD+"outCar",iEquipmentService.countByTypeAndStatus(0)+"");//出发车辆 redisTemplate.set(HEAD+"outCar","0");//危险开启 QueryWrapper wrapper = new QueryWrapper<>(); String format = DateUtil.format(new Date(), "yyyy-MM-dd"); wrapper.between("create_time",format+" 00:00:00",format+" 23:59:59"); redisTemplate.set(HEAD+"outCar",iCustomerService.count(wrapper)+"");//今日新增商户 } }