All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cn.net.vidyo.yd.common.utils.convert.BothDateTimeConverter Maven / Gradle / Ivy

package cn.net.vidyo.yd.common.utils.convert;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Map;

public class BothDateTimeConverter implements MapConverter {
    String beginTimeField;
    String endTimeField;
    String addNameField;

    public BothDateTimeConverter(String beginTimeField, String endTimeField, String addNameField) {
        this.beginTimeField = beginTimeField;
        this.endTimeField = endTimeField;
        this.addNameField = addNameField;
    }

    @Override
    public Map convert(Map data) {
        if(data.containsKey(beginTimeField) && data.containsKey(endTimeField) && !data.containsKey(addNameField)){
            Long begintime=Long.parseLong(data.get(beginTimeField).toString());
            Long endtime=Long.parseLong(data.get(endTimeField).toString());

            Calendar beginCalendar = Calendar.getInstance();
            beginCalendar.setTimeInMillis(begintime);
            Calendar endCalendar = Calendar.getInstance();
            endCalendar.setTimeInMillis(endtime);
            SimpleDateFormat datef = new SimpleDateFormat("yyyy.MM.dd");
            SimpleDateFormat timef = new SimpleDateFormat("HH:mm:ss");
            StringBuilder buffer = new StringBuilder();
            if(beginCalendar.get(Calendar.YEAR)==endCalendar.get(Calendar.YEAR) &&
                    beginCalendar.get(Calendar.MONTH)==endCalendar.get(Calendar.MONTH) &&
                    beginCalendar.get(Calendar.DAY_OF_MONTH)==endCalendar.get(Calendar.DAY_OF_MONTH)){
                buffer.append(datef.format(beginCalendar.getTime()));
                buffer.append(" ");
                buffer.append(timef.format(beginCalendar.getTime()));
                buffer.append(" - ");
                buffer.append(timef.format(endCalendar.getTime()));
            }else{
                buffer.append(datef.format(beginCalendar.getTime()));
                buffer.append(" ");
                buffer.append(timef.format(beginCalendar.getTime()));
                buffer.append(" - ");
                buffer.append(datef.format(endCalendar.getTime()));
                buffer.append(" ");
                buffer.append(timef.format(endCalendar.getTime()));
            }
            data.put(addNameField,buffer.toString());
        }
        return data;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy