package cn.seecoder.data.server.schedule; import cn.seecoder.data.server.repository.EvaluateRepository; import cn.seecoder.data.server.utils.aspects.dataExtraction.DataExtractor; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import cn.seecoder.data.server.domain.GeneralRecordDao; import cn.seecoder.data.server.domain.EvaluateDao; import cn.seecoder.data.server.repository.GeneralRecordRepository; import org.springframework.web.client.RestTemplate; import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Calendar; import java.util.Date; @Component public class EvaluateSchedule { @Autowired private GeneralRecordRepository generalRecordRepository; @Autowired private EvaluateRepository evaluateRepository; public EvaluateSchedule(GeneralRecordRepository generalRecordRepository, EvaluateRepository evaluateRepository) { this.generalRecordRepository = generalRecordRepository; this.evaluateRepository = evaluateRepository; } @DataExtractor("evaluate") // @Scheduled(cron = "0 0 2 * * ?") public void evaluateDataExtration(){ Date date = new Date(); Calendar calendar = Calendar.getInstance(); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String startTime = format.format(calendar.getTime()); calendar.setTime(date); calendar.add(Calendar.DAY_OF_MONTH, -1); String endTime = format.format(calendar.getTime()); RestTemplate restTemplate = new RestTemplate(); try { String temp = restTemplate.getForObject( "http://47.111.95.164:8080/api/exam/list/range?startTime={1}&endTime={2}", String.class, "2010-01-01 00:00:00", "2021-04-27 00:00:00" ); JSONObject ans = JSON.parseObject(temp); JSONArray results = ans.getJSONArray("result"); DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); for(int i=0;i