aplicacion.control.util.Fechas.java Source code

Java tutorial

Introduction

Here is the source code for aplicacion.control.util.Fechas.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package aplicacion.control.util;

import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Locale;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import org.joda.time.DateTime;

/**
 *
 * @author user 01
 */
public class Fechas {

    public static LocalDate getLocalFromTimestamp(Timestamp timestamp) {
        if (timestamp == null) {
            return null;
        } else {
            DateTime dateTime = new DateTime(timestamp.getTime());
            return LocalDate.of(dateTime.getYear(), dateTime.getMonthOfYear(), dateTime.getDayOfMonth());
        }
    }

    public static LocalTime getLocalFromTime(Time time) {
        if (time == null) {
            return null;
        } else {
            DateTime dateTime = new DateTime(time.getTime());
            return LocalTime.of(dateTime.getHourOfDay(), dateTime.getMinuteOfHour());
        }
    }

    public static String getMonthName(int month) {
        Calendar cal = Calendar.getInstance();
        // Calendar numbers months from 0
        cal.set(Calendar.MONTH, month - 1);
        return cal.getDisplayName(Calendar.MONTH, Calendar.LONG, Locale.getDefault());
    }

    public static String getFechaConMes(DateTime dateTime) {
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear()) + " "
                + dateTime.getYear();
        return fecha;
    }

    public static String getFechaConMesSinAno(DateTime dateTime) {
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear());
        return fecha;
    }

    public static String getFechaConMes(Date date) {
        DateTime dateTime = new DateTime(date.getTime());
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear()) + " "
                + dateTime.getYear();
        return fecha;
    }

    public static String getFechaConMes(Timestamp timestamp) {
        DateTime dateTime = new DateTime(timestamp.getTime());
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear()) + " "
                + dateTime.getYear();
        return fecha;
    }

    public static String getFechaConMes(Fecha fecha) {
        String fechaString = fecha.getDiaInt() + " de " + fecha.getMonthName() + " " + fecha.getAnoInt();
        return fechaString;
    }

    public static String getFechaConMes(String fechaFecha) {
        Fecha fecha = new Fecha(fechaFecha);
        String fechaString = fecha.getDiaInt() + " de " + fecha.getMonthName() + " " + fecha.getAnoInt();
        return fechaString;
    }

    public static String getFechaConMesYHora(DateTime dateTime) {
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear()) + " "
                + dateTime.getYear() + " a las " + dateTime.toString("HH:mm:ss");
        return fecha;
    }

    public static String getFechaConMesYHora(Timestamp timestamp) {
        DateTime dateTime = new DateTime(timestamp.getTime());
        String fecha = dateTime.getDayOfMonth() + " de " + getMonthName(dateTime.getMonthOfYear()) + " "
                + dateTime.getYear() + " a las " + dateTime.toString("HH:mm:ss");
        return fecha;
    }

    public static String getHora(Time time) {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("hh:mma");
        return formatter.format(getLocalFromTime(time));
    }

    public static String differenceBetweenHours(Time time1, Time time2) {
        DateTime dateTime1 = new DateTime(time1.getTime());
        dateTime1 = dateTime1.plus(1);
        DateTime dateTime2 = new DateTime(time2.getTime());
        dateTime2 = dateTime2.plus(1);
        long c = dateTime2.getMillis() - dateTime1.getMillis();
        DateTime dateTime = new DateTime(c);
        dateTime = dateTime.plusHours(4);
        Time diff = new Time(dateTime.getMillis());
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm");
        return formatter.format(getLocalFromTime(diff));
    }

    public static String getFechaCorta(Timestamp timestamp) {
        DateTime dateTime = new DateTime(timestamp.getTime());
        return dateTime.toString("dd/MM/yyyy");
    }

    public static String getFechaCorta(DateTime dateTime) {
        return dateTime.toString("dd/MM/yyyy");
    }

    public static Time getTimeFromLocalTime(LocalTime local) {
        Time time = new Time(local.getHour(), local.getMinute(), 0);
        return time;
    }

    public static Timestamp getToday() {

        DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

        java.util.Date today = new java.util.Date();

        java.util.Date todayWithZeroTime = null;
        try {
            todayWithZeroTime = formatter.parse(formatter.format(today));
        } catch (ParseException ex) {
            Logger.getLogger(Fechas.class.getName()).log(Level.SEVERE, null, ex);
        }

        return new Timestamp(todayWithZeroTime.getTime());
    }

    public static ObservableList<String> arraySpinnerDia() {
        String[] items = new String[30];
        items[0] = "01";
        items[1] = "02";
        items[2] = "03";
        items[3] = "04";
        items[4] = "05";
        items[5] = "06";
        items[6] = "07";
        items[7] = "08";
        items[8] = "09";
        items[9] = "10";
        items[10] = "11";
        items[11] = "12";
        items[12] = "13";
        items[13] = "14";
        items[14] = "15";
        items[15] = "16";
        items[16] = "17";
        items[17] = "18";
        items[18] = "19";
        items[19] = "20";
        items[20] = "21";
        items[21] = "22";
        items[22] = "23";
        items[23] = "24";
        items[24] = "25";
        items[25] = "26";
        items[26] = "27";
        items[27] = "28";
        items[28] = "29";
        items[29] = "30";
        return FXCollections.observableArrayList(items);
    }

    public static ObservableList<String> arraySpinnerMes() {
        String[] items = new String[12];
        items[0] = "01";
        items[1] = "02";
        items[2] = "03";
        items[3] = "04";
        items[4] = "05";
        items[5] = "06";
        items[6] = "07";
        items[7] = "08";
        items[8] = "09";
        items[9] = "10";
        items[10] = "11";
        items[11] = "12";
        return FXCollections.observableArrayList(items);
    }

    public static ObservableList<String> arraySpinnerAno() {
        String[] items = new String[60];
        Integer count = 0;

        Integer secuencia = (new DateTime().getYear()) - 30;
        for (String number : items) {
            items[count] = secuencia.toString();
            secuencia++;
            count++;
        }
        return FXCollections.observableArrayList(items);
    }

    public static Fecha getFechaActual() {

        String dia;
        String mes;
        String ano;
        ano = String.valueOf(new DateTime().getYear());
        mes = String.valueOf(new DateTime().getMonthOfYear());
        if (new DateTime().getDayOfMonth() > 30) {
            dia = "30";
        } else {
            dia = String.valueOf(new DateTime().getDayOfMonth());
        }

        if (mes.length() == 1) {
            mes = "0" + mes;
        }
        if (dia.length() == 1) {
            dia = "0" + dia;
        }

        return new Fecha(ano + mes + dia);
    }
}