|
|
@ -10,6 +10,10 @@ import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
import java.text.DateFormat; |
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* 每个星期一的凌晨5点执行,查询网格活跃度统计导出excel,上传oss, 发送钉钉@小雷哥 |
|
|
@ -30,10 +34,33 @@ public class ExportGridLiveResTask implements ITask { |
|
|
|
if (StringUtils.isNotBlank(params)) { |
|
|
|
formDTO = JSON.parseObject(params, GridLivelyFormDTO.class); |
|
|
|
} |
|
|
|
//默认获取当前日期的上一个自然周
|
|
|
|
if (StringUtils.isBlank(formDTO.getStartTime()) || StringUtils.isBlank(formDTO.getEndTime())) { |
|
|
|
Calendar calendar = Calendar.getInstance(); |
|
|
|
calendar.add(Calendar.DATE, -1); |
|
|
|
//上周日的日期
|
|
|
|
Date yesterday = calendar.getTime(); |
|
|
|
DateFormat format = new SimpleDateFormat("yyyyMMdd"); |
|
|
|
Calendar c = new GregorianCalendar(); |
|
|
|
//这里设置一周开始时间是星期一
|
|
|
|
c.setFirstDayOfWeek(Calendar.MONDAY); |
|
|
|
c.setTime(yesterday); |
|
|
|
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()); |
|
|
|
//获取当前自然周的起始时间
|
|
|
|
String beginTime = format.format(c.getTime()); |
|
|
|
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek() + 6); |
|
|
|
//当前自然周的截止时间
|
|
|
|
String endTime = format.format(c.getTime()); |
|
|
|
formDTO.setStartTime(beginTime); |
|
|
|
formDTO.setEndTime(endTime); |
|
|
|
} |
|
|
|
ValidatorUtils.validateEntity(formDTO,GridLivelyFormDTO.Grid.class); |
|
|
|
Result result = dataAggregatorFeignClient.exportGridLiveRes(formDTO); |
|
|
|
if(!result.success()){ |
|
|
|
log.error(String.format("exportGridLiveResTask网格活跃度统计导出失败,入参:%s",params)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |