package com.yihu.hos.web.framework.constant;
import org.apache.commons.beanutils.Converter;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * Created by hzp on 2016/1/25.
 */
public class DateConvert implements Converter{

    public static String dateFormat ="yyyy-MM-dd HH:mm:ss";
    /**
     * 时间转化函数
     */
    public Object convert(Class arg0, Object arg1) {
        String str = (String)arg1;
        return toDate(str);
    }

    /*
        字符串转时间格式
     */
    public static Date toDate(String str)
    {
        if(str== null || str.trim().length()==0){
            return null;
        }
        try{
            String dateFormat ="yyyy-MM-dd HH:mm:ss";
            int l = str.length();
            if(l == 7)
            {
                dateFormat ="yyyy-MM";
            }
            else if(l == 10)
            {
                dateFormat ="yyyy-MM-dd";
            }
            else if(l == 13)
            {
                dateFormat ="yyyy-MM-dd HH";
            }
            else if(l == 16)
            {
                dateFormat ="yyyy-MM-dd HH:mm";
            }
            if(str.indexOf("/")>0)
            {
                str=str.replace("/","-");
            }
            SimpleDateFormat df = new SimpleDateFormat(dateFormat);
            return df.parse(str);
        }
        catch(Exception e){

            return null;
        }
    }

    /*
        时间格式转字符串
    */
    public static String toString(Date date)
    {
        return toString(date,"yyyy-MM-dd HH:mm:ss");
    }

    /*
        时间格式转字符串
    */
    public static String toString(Date date,String format)
    {
        if(date== null){
            return "";
        }
        try{
            SimpleDateFormat df = new SimpleDateFormat(format);
            return df.format(date);
        }
        catch (Exception ex)
        {
            return "";
        }
    }
}