mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 19:51:00 +00:00
(improvement)(common)Support more date string formats.
This commit is contained in:
@@ -36,9 +36,9 @@ public class ChatModelParameters {
|
||||
new Parameter("timeOut", "60", "超时时间(秒)", "", "number", MODULE_NAME);
|
||||
|
||||
public static List<Parameter> getParameters() {
|
||||
return Lists.newArrayList(CHAT_MODEL_PROVIDER, CHAT_MODEL_BASE_URL,
|
||||
CHAT_MODEL_API_KEY, CHAT_MODEL_NAME, CHAT_MODEL_API_VERSION,
|
||||
CHAT_MODEL_TEMPERATURE, CHAT_MODEL_TIMEOUT);
|
||||
return Lists.newArrayList(CHAT_MODEL_PROVIDER, CHAT_MODEL_BASE_URL, CHAT_MODEL_API_KEY,
|
||||
CHAT_MODEL_NAME, CHAT_MODEL_API_VERSION, CHAT_MODEL_TEMPERATURE,
|
||||
CHAT_MODEL_TIMEOUT);
|
||||
}
|
||||
|
||||
private static List<String> getCandidateProviders() {
|
||||
|
||||
@@ -242,10 +242,8 @@ public class DateModeUtils {
|
||||
return String.format("%s >= '%s' and %s <= '%s'", dateField,
|
||||
dateInfo.getStartDate(), dateField, dateInfo.getEndDate());
|
||||
}
|
||||
LocalDate endData =
|
||||
LocalDate.parse(dateInfo.getEndDate(), DateTimeFormatter.ofPattern(DAY_FORMAT));
|
||||
LocalDate startData = LocalDate.parse(dateInfo.getStartDate(),
|
||||
DateTimeFormatter.ofPattern(DAY_FORMAT));
|
||||
LocalDate endData = DateUtils.parseDate(dateInfo.getEndDate());
|
||||
LocalDate startData = DateUtils.parseDate(dateInfo.getStartDate());
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(MONTH_FORMAT);
|
||||
return String.format("%s >= '%s' and %s <= '%s'", dateField,
|
||||
startData.format(formatter), dateField, endData.format(formatter));
|
||||
|
||||
@@ -75,7 +75,7 @@ public class DateUtils {
|
||||
}
|
||||
|
||||
public static String getBeforeDate(String currentDate, DatePeriodEnum datePeriodEnum) {
|
||||
LocalDate specifiedDate = LocalDate.parse(currentDate, DEFAULT_DATE_FORMATTER2);
|
||||
LocalDate specifiedDate = parseDate(currentDate);
|
||||
LocalDate startDate;
|
||||
switch (datePeriodEnum) {
|
||||
case MONTH:
|
||||
@@ -93,7 +93,7 @@ public class DateUtils {
|
||||
|
||||
public static String getBeforeDate(String currentDate, int intervalDay,
|
||||
DatePeriodEnum datePeriodEnum) {
|
||||
LocalDate specifiedDate = LocalDate.parse(currentDate, DEFAULT_DATE_FORMATTER2);
|
||||
LocalDate specifiedDate = parseDate(currentDate);
|
||||
LocalDate result = null;
|
||||
switch (datePeriodEnum) {
|
||||
case DAY:
|
||||
@@ -161,11 +161,25 @@ public class DateUtils {
|
||||
return !timeString.equals("00:00:00");
|
||||
}
|
||||
|
||||
public static LocalDate parseDate(String timeString) {
|
||||
DateTimeFormatter[] dateFormatters =
|
||||
{DateTimeFormatter.ofPattern("yyyyMMdd"), DateTimeFormatter.ofPattern("yyyy-MM-dd"),
|
||||
DateTimeFormatter.ofPattern("yyyy/MM/dd"),
|
||||
DateTimeFormatter.ofPattern("yyyy-MM")};
|
||||
for (DateTimeFormatter formatter : dateFormatters) {
|
||||
try {
|
||||
return LocalDate.parse(timeString, formatter);
|
||||
} catch (DateTimeParseException ignored) {
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static List<String> getDateList(String startDateStr, String endDateStr,
|
||||
DatePeriodEnum period) {
|
||||
try {
|
||||
LocalDate startDate = LocalDate.parse(startDateStr);
|
||||
LocalDate endDate = LocalDate.parse(endDateStr);
|
||||
LocalDate startDate = parseDate(startDateStr);
|
||||
LocalDate endDate = parseDate(endDateStr);
|
||||
List<String> datesInRange = new ArrayList<>();
|
||||
LocalDate currentDate = startDate;
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
|
||||
@@ -189,7 +203,7 @@ public class DateUtils {
|
||||
}
|
||||
|
||||
public static boolean isAnyDateString(String value) {
|
||||
List<String> formats = Arrays.asList("yyyy-MM-dd", "yyyy-MM", "yyyy/MM/dd");
|
||||
List<String> formats = Arrays.asList("yyyy-MM-dd", "yyyy-MM", "yyyy/MM/dd", "yyyyMMdd");
|
||||
return isAnyDateString(value, formats);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user