Example usage for org.joda.time LocalDateTime minusHours

List of usage examples for org.joda.time LocalDateTime minusHours

Introduction

In this page you can find the example usage for org.joda.time LocalDateTime minusHours.

Prototype

public LocalDateTime minusHours(int hours) 

Source Link

Document

Returns a copy of this datetime minus the specified number of hours.

Usage

From source file:com.axelor.apps.crm.service.batch.BatchEventReminder.java

License:Open Source License

private boolean isExpired(EventReminder eventReminder) {

    LocalDateTime startDateTime = eventReminder.getEvent().getStartDateTime();
    int durationTypeSelect = eventReminder.getDurationTypeSelect();
    switch (durationTypeSelect) {
    case IEventReminder.DURATION_MINUTES:

        if ((startDateTime.minusMinutes(eventReminder.getDuration())).isBefore(today)) {
            return true;
        }/*from w  w  w . ja  v  a 2s . c  o m*/
        break;

    case IEventReminder.DURATION_HOURS:

        if ((startDateTime.minusHours(eventReminder.getDuration())).isBefore(today)) {
            return true;
        }
        break;

    case IEventReminder.DURATION_DAYS:

        if ((startDateTime.minusDays(eventReminder.getDuration())).isBefore(today)) {
            return true;
        }
        break;

    case IEventReminder.DURATION_WEEKS:

        if ((startDateTime.minusWeeks(eventReminder.getDuration())).isBefore(today)) {
            return true;
        }
        break;
    }

    return false;

}

From source file:com.axelor.apps.crm.service.EventReminderService.java

License:Open Source License

public LocalDateTime computeStartDateTime(int durationHours, int durationMinutes, LocalDateTime endDateTime) {

    return endDateTime.minusHours(durationHours).minusMinutes(durationMinutes);

}

From source file:com.axelor.apps.organisation.service.LeaveRequestService.java

License:Open Source License

public LocalDateTime computeStartDateTime(double duration, LocalDateTime endDateTime) {

    return endDateTime.minusHours((int) duration * 24);

}

From source file:com.axelor.csv.script.ImportDateTime.java

License:Open Source License

public LocalDateTime updateHour(LocalDateTime dateTime, String hour) {
    if (!Strings.isNullOrEmpty(hour)) {
        Matcher matcher = patternMonth.matcher(hour);
        if (matcher.find()) {
            Integer hours = Integer.parseInt(matcher.group());
            if (hour.startsWith("+"))
                dateTime = dateTime.plusHours(hours);
            else if (hour.startsWith("-"))
                dateTime = dateTime.minusHours(hours);
            else/*from w  w w .  j a va 2s.  c o m*/
                dateTime = dateTime.withHourOfDay(hours);
        }
    }
    return dateTime;
}

From source file:de.avanux.smartapplianceenabler.appliance.DayTimeframe.java

License:Open Source License

protected Interval buildMidnightAdjustedInterval(LocalDateTime now) {
    if (start != null && end != null) {
        LocalDateTime earliestStartDateTime = new LocalDate(now).toLocalDateTime(start.toLocalTime());
        LocalDateTime latestEndDateTime = new LocalDate(now).toLocalDateTime(end.toLocalTime());
        if (isOverMidnight(earliestStartDateTime, latestEndDateTime)) {
            if (now.toLocalTime().isAfter(start.toLocalTime())) {
                // before midnight
                latestEndDateTime = latestEndDateTime.plusHours(24);
            } else if (now.toLocalTime().isBefore(end.toLocalTime())) {
                // after midnight, before end
                earliestStartDateTime = earliestStartDateTime.minusHours(24);
            } else {
                // after midnight, after end
                latestEndDateTime = latestEndDateTime.plusHours(24);
            }/*from  ww  w  .j  a va 2 s . c  om*/
        }
        return new Interval(earliestStartDateTime.toDateTime(), latestEndDateTime.toDateTime())
                .withChronology(ISOChronology.getInstance());
    }
    return null;
}

From source file:de.avanux.smartapplianceenabler.semp.webservice.SempController.java

License:Open Source License

protected de.avanux.smartapplianceenabler.semp.webservice.Timeframe createSempTimeFrame(
        ApplianceLogger applianceLogger, String deviceId, Schedule schedule, Interval interval,
        long minRunningTime, long maxRunningTime, LocalDateTime now) {
    Long earliestStart = 0l;/*from w w  w  .jav a  2s. c o m*/
    DateTime start = interval.getStart();
    DateTime end = interval.getEnd();
    if (start.isAfter(now.toDateTime())) {
        earliestStart = Double.valueOf(new Interval(now.toDateTime(), start).toDurationMillis() / 1000)
                .longValue();
    }
    LocalDateTime nowBeforeEnd = new LocalDateTime(now);
    if (now.toDateTime().isAfter(end)) {
        nowBeforeEnd = now.minusHours(24);
    }
    Long latestEnd = Double.valueOf(new Interval(nowBeforeEnd.toDateTime(), end).toDurationMillis() / 1000)
            .longValue();
    return createSempTimeFrame(applianceLogger, deviceId, earliestStart, latestEnd, minRunningTime,
            maxRunningTime);
}

From source file:view.popups.shift.ShiftPanel.java

private void makeChange() {
    boolean inputError = false;

    LocalDateTime ldt = shift.getStartTime();

    //Nulstiller timer.
    ldt = ldt.minusHours(ldt.getHourOfDay());

    //Nulstiller minuttet.
    ldt = ldt.minusMinutes(ldt.getMinuteOfHour());

    shift.setStartTime(ldt);/*from   w w  w.  j a va 2s .c  o m*/

    //Dernst skal det som der er indtastet i configpopuppen tilfjes til 
    //den nulstillede dato.
    int modifiedStartHour = checkInput(configPanel.gettStartHour(), inputError, 23, 0);
    if (modifiedStartHour == -1) {
        inputError = true;
    }

    int modifiedStartMinute = checkInput(configPanel.gettStartMinute(), inputError, 59, 0);
    if (modifiedStartMinute == -1) {
        inputError = true;
    }

    int modifiedEndHour = checkInput(configPanel.gettEndHour(), inputError, 23, 0);
    if (modifiedEndHour == -1) {
        inputError = true;
    }

    int modifiedEndMinute = checkInput(configPanel.gettEndMinute(), inputError, 59, 0);
    if (modifiedEndMinute == -1) {
        inputError = true;
    }

    //Dernst udregnes vagttiden, alts hvor mange timer og minutter
    //vagten tager fra starttidspunktet.
    if (!inputError) {
        shift.setHours(Hours.hours(modifiedEndHour - modifiedStartHour));
        shift.setMinutes(Minutes.minutes(modifiedEndMinute - modifiedStartMinute));
    }
}