in lambda/src/main/java/cn/amazon/aws/rp/spapi/dynamodb/impl/SpApiTaskDao.java [89:122]
public void addNewTask(SpApiTask spApiTask, String dateType, long space) {
SpApiTask apiTask = new SpApiTask();
apiTask.setSellerKey(spApiTask.getSellerId() + "_" + spApiTask.getTaskName());
apiTask.setSellerId(spApiTask.getSellerId());
if(Objects.nonNull(spApiTask.getEndTime())) {
apiTask.setStartTime(spApiTask.getEndTime());
LocalDateTime localDateTime = DateUtil.getLocalDateTime(spApiTask.getEndTime());
if (DateType.NANOS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusNanos(space)));
} else if (DateType.SECONDS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusSeconds(space)));
} else if (DateType.MINUTES.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusMinutes(space)));
} else if (DateType.HOURS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusHours(space)));
} else if (DateType.DAYS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusDays(space)));
} else if (DateType.WEEKS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusWeeks(space)));
} else if (DateType.MONTHS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusMonths(space)));
} else if (DateType.YEARS.name().equalsIgnoreCase(dateType)) {
apiTask.setEndTime(DateUtil.getDateFormat(localDateTime.plusYears(space)));
}
// 判断endTime是否大于当前时间
if(LocalDateTime.now().isBefore(DateUtil.getLocalDateTime(apiTask.getEndTime()))){
apiTask.setEndTime(DateUtil.getDateFormat(LocalDateTime.now().plusMinutes(-2L)));
}
}
apiTask.setTaskId(idWorker.nextId());
apiTask.setTaskName(spApiTask.getTaskName());
apiTask.setExecuteStatus(StatusEnum.INIT.getStatus());
this.addTask(apiTask);
}