lkd9125
1 year ago
4 changed files with 29 additions and 13 deletions
@ -1,32 +1,45 @@
|
||||
package com.palnet.biz.config; |
||||
|
||||
import lombok.extern.slf4j.Slf4j; |
||||
import org.springframework.context.annotation.Configuration; |
||||
import org.springframework.core.convert.converter.Converter; |
||||
import org.springframework.stereotype.Component; |
||||
|
||||
import java.time.Instant; |
||||
import java.time.LocalDateTime; |
||||
import java.time.ZoneId; |
||||
import java.time.format.DateTimeFormatter; |
||||
|
||||
@Component |
||||
@Slf4j |
||||
public class StringToInstantBinding implements Converter<String, Instant> { |
||||
|
||||
|
||||
@Override |
||||
public Instant convert(String date) { |
||||
log.error("StringToInstantBinding - convert()"); |
||||
log.error("date -> {}", date); |
||||
|
||||
if(date.length() == 10){ |
||||
date += "T00:00:00Z"; |
||||
try { |
||||
return Instant.parse(date); |
||||
} catch (Exception e) { |
||||
e.printStackTrace(); |
||||
} |
||||
} else { |
||||
try { |
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
||||
LocalDateTime localDateTime = LocalDateTime.parse(date, formatter); |
||||
|
||||
return localDateTime.atZone(ZoneId.of("UTC")).toInstant(); |
||||
} catch (Exception e){ |
||||
e.printStackTrace(); |
||||
} |
||||
|
||||
|
||||
if(date.length() == 10) date += "T00:00:00Z"; |
||||
|
||||
log.warn("date -> {}", date); |
||||
|
||||
try { |
||||
|
||||
return Instant.parse(date); |
||||
} catch (Exception e) { |
||||
e.printStackTrace(); |
||||
} |
||||
|
||||
|
||||
return null; |
||||
} |
||||
|
||||
} |
||||
|
Loading…
Reference in new issue