package com.qianwen.mdc.collect.controller; import java.time.Instant; import java.time.LocalDate; import java.time.ZoneOffset; import java.util.Arrays; import java.util.Date; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import com.baomidou.dynamic.datasource.annotation.DS; import com.google.common.collect.Sets; import com.qianwen.mdc.collect.cache.TimeSliceCache; import com.qianwen.mdc.collect.config.IotDBSessionConfig; import com.qianwen.mdc.collect.dto.CacheBuildDTO; import com.qianwen.mdc.collect.dto.CalendarShiftInfoDTO; import com.qianwen.mdc.collect.dto.CalendarShiftTimeSlicesDTO; import com.qianwen.mdc.collect.entity.iotdb.Output; import com.qianwen.mdc.collect.entity.iotdb.ProcessParam; import com.qianwen.mdc.collect.mapper.iotdb.OutputMapper; import com.qianwen.mdc.collect.mapper.iotdb.ProcessParamMapper; import com.qianwen.mdc.collect.mapper.mgr.CalendarMapper; import com.qianwen.mdc.collect.mqtt.MqttMessageSender; import com.qianwen.mdc.collect.service.DeviceStateFixPointService; import com.qianwen.mdc.collect.service.IOTMqttReceiveService; import com.qianwen.mdc.collect.service.IotDBCommonService; import com.qianwen.mdc.collect.service.OutputAggregateService; import com.qianwen.mdc.collect.utils.redis.RedisUtil; import cn.hutool.core.date.DateField; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; @RestController("timecache") public class CalController { @Autowired private TimeSliceCache timeSliceCache; String calCode= "1"; @GetMapping("/gett") public Object gett() { Date date = new Date(); System.out.println("getdate="+date); CalendarShiftTimeSlicesDTO dto = timeSliceCache.getTimeSliceShift(calCode, date); return dto; } @GetMapping("/sett") public Object sett() { Date date = new Date(); LocalDate targetDate = Instant.ofEpochMilli(date.getTime()).atZone(ZoneOffset.systemDefault()).toLocalDate(); CacheBuildDTO cacheBuildDTO = CacheBuildDTO.builder().tenantIds(Sets.newHashSet(new String[]{"000000"})).calendarCode(calCode).targetDate(targetDate).build(); timeSliceCache.build(cacheBuildDTO); return "settOK,targetDate="+targetDate; } }