parent
370ced1502
commit
79f65c0f6f
@ -0,0 +1,15 @@
|
||||
package com.docus.server;
|
||||
|
||||
import com.docus.infrastructure.WebConfig;
|
||||
import com.docus.infrastructure.web.json.JsonSerializerModule;
|
||||
import com.docus.server.common.serializer.DefJsonSerializerModule;
|
||||
|
||||
public class DefaultWebConfig extends WebConfig {
|
||||
|
||||
@Override
|
||||
public JsonSerializerModule jsonSerializerModu1e() {
|
||||
super.jsonSerializerModu1e();
|
||||
return new DefJsonSerializerModule();
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package com.docus.server.common.serializer;
|
||||
|
||||
import com.docus.core.util.Convert;
|
||||
import com.docus.infrastructure.web.json.JsonSerializerModule;
|
||||
import com.fasterxml.jackson.core.JsonGenerator;
|
||||
import com.fasterxml.jackson.databind.JsonSerializer;
|
||||
import com.fasterxml.jackson.databind.SerializerProvider;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.time.ZoneId;
|
||||
import java.util.Date;
|
||||
import java.util.TimeZone;
|
||||
|
||||
public class DefJsonSerializerModule extends JsonSerializerModule {
|
||||
public DefJsonSerializerModule() {
|
||||
|
||||
addSerializer(Date.class, new JsonSerializer<Date>() {
|
||||
@Override
|
||||
public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
|
||||
jsonGenerator.writeString(date == null ? null : Convert.toString(date, Convert.DATA_FORMAT_DATETIME_SLASH, TimeZone.getTimeZone(ZoneId.systemDefault())));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
package com.docus.server.common.serializer;
|
||||
|
||||
import org.springframework.core.convert.converter.Converter;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 全局handler前日期统一处理
|
||||
*
|
||||
* @author zhanghang
|
||||
* @date 2018/1/11
|
||||
*/
|
||||
@Component
|
||||
public class StringToDateConverter implements Converter<String, Date> {
|
||||
|
||||
private static final List<String> DATE_FORMARTS = new ArrayList<>(4);
|
||||
|
||||
static {
|
||||
DATE_FORMARTS.add("yyyy-MM");
|
||||
DATE_FORMARTS.add("yyyy-MM-dd");
|
||||
DATE_FORMARTS.add("yyyy-MM-dd hh:mm");
|
||||
DATE_FORMARTS.add("yyyy-MM-dd hh:mm:ss");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Date convert(String source) {
|
||||
String value = source.trim();
|
||||
if ("".equals(value)) {
|
||||
return null;
|
||||
}
|
||||
if (source.matches("^\\d{4}-\\d{1,2}$")) {
|
||||
return parseDate(source, DATE_FORMARTS.get(0));
|
||||
} else if (source.matches("^\\d{4}-\\d{1,2}-\\d{1,2}$")) {
|
||||
return parseDate(source, DATE_FORMARTS.get(1));
|
||||
} else if (source.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$")) {
|
||||
return parseDate(source, DATE_FORMARTS.get(2));
|
||||
} else if (source.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}:\\d{1,2}$")) {
|
||||
return parseDate(source, DATE_FORMARTS.get(3));
|
||||
} else {
|
||||
throw new IllegalArgumentException("Invalid boolean value '" + source + "'");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化日期
|
||||
*
|
||||
* @param dateStr String 字符型日期
|
||||
* @param format String 格式
|
||||
* @return Date 日期
|
||||
*/
|
||||
public Date parseDate(String dateStr, String format) {
|
||||
Date date = null;
|
||||
try {
|
||||
DateFormat dateFormat = new SimpleDateFormat(format);
|
||||
date = dateFormat.parse(dateStr);
|
||||
} catch (Exception e) {
|
||||
System.out.println(String.format("日期%s转换%s错误", dateStr, format));
|
||||
}
|
||||
return date;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.docus.server.enums;
|
||||
|
||||
import com.docus.infrastructure.core.db.enums.IIntegerEnum;
|
||||
|
||||
public enum RetryTaskEnum implements IIntegerEnum {
|
||||
|
||||
NO_RETRY_TASK(0, "不是重试任务"),
|
||||
|
||||
RETRY_TASK(1, "是重试任务");
|
||||
|
||||
private Integer value;
|
||||
private String display;
|
||||
|
||||
RetryTaskEnum(Integer value, String display) {
|
||||
this.value = value;
|
||||
this.display = display;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDisplay() {
|
||||
|
||||
return display;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue