package com.ycl.smoke.task; import com.alibaba.fastjson.JSON; import com.ycl.service.redis.RedisService; import com.ycl.smoke.entity.*; import com.ycl.smoke.dto.*; import com.ycl.smoke.remote.service.ISmokeDetectionService; import com.ycl.smoke.service.*; import com.ycl.utils.redis.RedisKey; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.List; @Component public class ScheduledTask { ISmokeDetectionService smokeDetectionService; IOdsAlarmMsgService alarmMsgService; IOdsTenMinDataService tenMinDataService; IOdsInTimeService inTimeService; IOdsLocaleService localeService; IOdsCustomerService customerService; IOdsAlarmRecordService alarmRecordService; IOdsCurAlarmService curAlarmService; @Resource private RedisService redisService; @Autowired public void setSmokeDetectionService(ISmokeDetectionService smokeDetectionService) { this.smokeDetectionService = smokeDetectionService; } @Autowired public void setAlarmMsgService(IOdsAlarmMsgService alarmMsgService) { this.alarmMsgService = alarmMsgService; } @Autowired public void setTenMinDataService(IOdsTenMinDataService tenMinDataService) { this.tenMinDataService = tenMinDataService; } @Autowired public void setInTimeService(IOdsInTimeService inTimeService) { this.inTimeService = inTimeService; } @Autowired public void setLocaleService(IOdsLocaleService localeService) { this.localeService = localeService; } @Autowired public void setCustomerService(IOdsCustomerService customerService) { this.customerService = customerService; } @Autowired public void setAlarmRecordService(IOdsAlarmRecordService alarmRecordService) { this.alarmRecordService = alarmRecordService; } @Autowired public void setCurAlarmService(IOdsCurAlarmService curAlarmService) { this.curAlarmService = curAlarmService; } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void alarmMsgTask() { try { AlarmMsgParamDto paramDto = AlarmMsgParamDto.builder().StartAt(0).Size(100).build(); SmokeResultResponseDto responseDto = smokeDetectionService.getListAlarmMsg(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { AlarmMsgResponseDto dto = responseDto.getData(); List list = dto.getContent(); System.out.println(list.size()); list.forEach(o -> { try { alarmMsgService.save(o); } catch (Exception ex) { } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); alarmMsgTask(); } } catch (Exception ex) { } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void queryDataDetectorDaily2Task() { try { AlarmMsgParamDto paramDto = AlarmMsgParamDto.builder().StartAt(0).Size(100).build(); SmokeResultResponseDto responseDto = smokeDetectionService.getListAlarmMsg(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { AlarmMsgResponseDto dto = responseDto.getData(); List list = dto.getContent(); System.out.println(list.size()); list.forEach(o -> { try { alarmMsgService.save(o); } catch (Exception ex) { } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void queryTenMinData() { try { TenMinParamDto paramDto = TenMinParamDto.builder().build(); SmokeResultResponseDto> responseDto = smokeDetectionService.queryTenMinData(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { List list = responseDto.getData(); list.forEach(o -> { try { tenMinDataService.save(o); } catch (Exception ex) { } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void listDataIntime() { try { DataIntimeParamDto paramDto = DataIntimeParamDto.builder().build(); SmokeResultResponseDto responseDto = smokeDetectionService.listDataIntime(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { DataIntimeResponseDto dataIntimeResponseDto = responseDto.getData(); List list = dataIntimeResponseDto.getContent(); list.forEach(o -> { try { inTimeService.save(o); } catch (Exception ex) { System.out.printf(ex.getMessage()); } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { System.out.printf(ex.getMessage()); } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void listLocale() { try { LocaleParamDto paramDto = LocaleParamDto.builder().build(); SmokeResultResponseDto responseDto = smokeDetectionService.listLocale(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { LocaleResponseDto responseDataDto = responseDto.getData(); List list = responseDataDto.getContent(); list.forEach(o -> { try { o.setCustomerString(JSON.toJSONString(o.getCustomer())); localeService.save(o); } catch (Exception ex) { System.out.printf(ex.getMessage()); } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { System.out.printf(ex.getMessage()); } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void queryCustomer() { try { CustomerParamDto paramDto = CustomerParamDto.builder().build(); SmokeResultResponseDto responseDto = smokeDetectionService.queryCustomer(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { CustomerResponseDto responseDataDto = responseDto.getData(); List list = responseDataDto.getContent(); list.forEach(o -> { try { o.setAreasString(o.getAreas() == null ? "" : JSON.toJSONString(o.getAreas())); o.setAreaIdsString(o.getAreaIds() == null ? "" : JSON.toJSONString(o.getAreaIds())); o.setAreaIdCascadsString(o.getAreaIdCascads() == null ? "" : JSON.toJSONString(o.getAreaIdCascads())); customerService.save(o); } catch (Exception ex) { System.out.printf(ex.getMessage()); } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { System.out.printf(ex.getMessage()); } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void listAlarmRecord() { try { AlarmMsgParamDto paramDto = AlarmMsgParamDto.builder().build(); SmokeResultResponseDto responseDto = smokeDetectionService.getListAlarmRecord(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { AlarmRecordResponseDto responseDataDto = responseDto.getData(); List list = responseDataDto.getContent(); list.forEach(o -> { try { o.setAlarmRecordPicsString(JSON.toJSONString(o.getAlarmRecordPics())); alarmRecordService.save(o); } catch (Exception ex) { System.out.printf(ex.getMessage()); } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { System.out.printf(ex.getMessage()); } } @Scheduled(cron = "0 0 1 * * ?") // 每天零点执行 // @Scheduled(cron = "0/1 * * * * ?") // 每秒执行 public void listCurAlarm() { try { CurAlarmParamDto paramDto = CurAlarmParamDto.builder().Typ(2).build(); SmokeResultResponseDto responseDto = smokeDetectionService.getListCurAlarm(paramDto, redisService.get(RedisKey.SMOKE_TOKEN).toString()); if (responseDto.getStatus() == 200) { CurAlarmResponseDto responseDataDto = responseDto.getData(); List list = responseDataDto.getContent(); list.forEach(o -> { try { curAlarmService.save(o); } catch (Exception ex) { System.out.printf(ex.getMessage()); } }); // alarmMsgService.saveBatch(list); } else if (responseDto.getStatus() == 114) { login(); queryDataDetectorDaily2Task(); } } catch (Exception ex) { System.out.printf(ex.getMessage()); } } void login() { LoginParamDto loginParamDto = LoginParamDto.builder().username("connect_test2").password("test@234").noCode(true).build(); SmokeResultResponseDto responseDto = smokeDetectionService.loginAction(loginParamDto); if (responseDto.getStatus() == 200) { System.out.println(responseDto.getData().getToken()); redisService.set(RedisKey.SMOKE_TOKEN, responseDto.getData().getToken()); } } }