package cn.jeesoft.mvc.fn;
import java.util.Date;
import java.util.List;
import cn.jeesoft.core.freemarker.fn.TemplateMethod;
import cn.jeesoft.core.utils.DateUtils;
/**
* 日期格式化
* @author king
*/
public class DateFormatMethod implements TemplateMethod {
@Override
public Object exec(List<Object> args) throws Exception {
if (args == null || args.isEmpty()) {
return "";
}
Object dateObj = args.get(0);
if (dateObj != null) {
Date date = null;
if (dateObj instanceof java.util.Date) {
date = (Date) dateObj;
} else if (dateObj instanceof java.sql.Date) {
date = new Date(((java.sql.Date) dateObj).getTime());
} else if (dateObj instanceof freemarker.template.SimpleDate) {
date = ((freemarker.template.SimpleDate) dateObj).getAsDate();
}
String format = DateUtils.FORMAT_FULL;
if (args.size() > 1) {
format = String.valueOf(args.get(1));
}
return DateUtils.format(date, format);
}
return "";
}
}