Example usage for org.joda.time LocalDate getDayOfMonth

List of usage examples for org.joda.time LocalDate getDayOfMonth

Introduction

In this page you can find the example usage for org.joda.time LocalDate getDayOfMonth.

Prototype

public int getDayOfMonth() 

Source Link

Document

Get the day of month field value.

Usage

From source file:org.libreplan.web.users.dashboard.PersonalTimesheetDTO.java

License:Open Source License

/**
 * Returns a string representing the personal timehseet in a given
 * <code>date</code> depending on the <code>periodicity</code>.
 *///from   w w  w. ja  va2  s  .c o m
public static String toString(PersonalTimesheetsPeriodicityEnum periodicity, LocalDate date) {
    switch (periodicity) {

    case WEEKLY:
        LocalDate start = periodicity.getStart(date);
        LocalDate end = periodicity.getEnd(date);

        String string = date.toString("w");
        if (start.getMonthOfYear() == end.getMonthOfYear()) {
            string += " (" + date.toString(MMMM_Y_PATTERN) + ")";
        } else {
            if (start.getYear() == end.getYear()) {
                string += " (" + start.toString("MMMM") + " - " + end.toString(MMMM_Y_PATTERN) + ")";
            } else {
                string += " (" + start.toString(MMMM_Y_PATTERN) + " - " + end.toString(MMMM_Y_PATTERN) + ")";
            }
        }
        return _("Week {0}", string);

    case TWICE_MONTHLY:
        return (date.getDayOfMonth() <= 15) ? _("{0} 1st fortnight", date.toString(MMMM_Y_PATTERN))
                : _("{0} 2nd fortnight", date.toString(MMMM_Y_PATTERN));

    case MONTHLY:
    default:
        return date.toString(MMMM_Y_PATTERN);
    }
}

From source file:org.libreplan.ws.common.impl.DateConverter.java

License:Open Source License

/**
 * It converts a <code>Date</code> to a <code>XMLGregorianCalendar</code>
 * representing a <code>xsd:date</code> XML type.<br/>
 * <br/>/*from ww w  . j av  a 2  s .  c  o  m*/
 *
 * If the date passed as a parameter is <code>null</code>, it also returns
 * <code>null</code>.
 *
 * @throws DatatypeConfigurationException
 */
public final static XMLGregorianCalendar toXMLGregorianCalendar(LocalDate localDate) {
    if (localDate == null) {
        return null;
    } else {
        DatatypeFactory factory;
        try {
            factory = DatatypeFactory.newInstance();
        } catch (DatatypeConfigurationException e) {
            throw new RuntimeException(e);
        }
        return factory.newXMLGregorianCalendarDate(localDate.getYear(), localDate.getMonthOfYear(),
                localDate.getDayOfMonth(), DatatypeConstants.FIELD_UNDEFINED);
    }
}

From source file:org.mifos.accounts.savings.struts.actionforms.SavingsApplyAdjustmentActionForm.java

License:Open Source License

public void setTrxnDate(LocalDate trxnDate) {
    if (trxnDate == null) {
        trxnDateDD = null;/*from w  w  w.ja  va  2s .c  o  m*/
        trxnDateMM = null;
        trxnDateYY = null;
    } else {
        trxnDateDD = String.valueOf(trxnDate.getDayOfMonth());
        trxnDateMM = String.valueOf(trxnDate.getMonthOfYear());
        trxnDateYY = String.valueOf(trxnDate.getYear());
    }
}

From source file:org.mifos.application.meeting.business.MeetingBO.java

License:Open Source License

public LocalDate startDateForMeetingInterval(LocalDate date) {
    LocalDate startOfMeetingInterval = date;
    if (isWeekly()) {
        int weekDay = WeekDay.getJodaDayOfWeekThatMatchesMifosWeekDay(
                getFiscalCalendarRules().getStartOfWeekWeekDay().getValue());
        while (startOfMeetingInterval.getDayOfWeek() != weekDay) {
            startOfMeetingInterval = startOfMeetingInterval.minusDays(1);
        }/*from  w  w  w .  j  av a  2s. c  o  m*/
    } else if (isMonthly()) {
        int dayOfMonth = date.getDayOfMonth();
        startOfMeetingInterval = startOfMeetingInterval.minusDays(dayOfMonth - 1);
    } else {
        // for days we return the same day
        startOfMeetingInterval = date;
    }
    return startOfMeetingInterval;
}

From source file:org.mifos.clientportfolio.loan.ui.LoanAccountController.java

License:Open Source License

@SuppressWarnings("PMD")
public LoanCreationLoanDetailsDto retrieveLoanCreationDetails(int customerId, int productId, String eventId,
        String fileToDelete, LoanAccountFormBean formBean) {

    if ("newFileSelected".equals(eventId)) {
        if (formBean.getSelectedFile() != null) {
            CommonsMultipartFile file = formBean.getSelectedFile();
            formBean.getFiles().add(file);
            formBean.getFilesMetadata().add(new UploadedFileDto(file.getOriginalFilename(),
                    file.getContentType(), (int) file.getSize(), formBean.getSelectedFileDescription()));
        }//from  w w w  .  j  av  a  2s .  c  o m
        return dto;
    } else if ("fileDeleted".equals(eventId)) {
        if (fileToDelete != null) {
            int index = 0;
            for (CommonsMultipartFile formFile : formBean.getFiles()) {
                if (formFile.getOriginalFilename().equals(fileToDelete)) {
                    index = formBean.getFiles().indexOf(formFile);
                    break;
                }
            }
            if (index >= 0) {
                formBean.getFiles().remove(index);
                formBean.getFilesMetadata().remove(index);
            }
        }
        return dto;
    }
    MandatoryHiddenFieldsDto mandatoryHidden = this.adminServiceFacade.retrieveHiddenMandatoryFieldsToRead();
    dto = this.loanAccountServiceFacade.retrieveLoanDetailsForLoanAccountCreation(customerId,
            Integer.valueOf(productId).shortValue(), formBean.isRedoLoanAccount());

    formBean.setLocale(Locale.getDefault());

    formBean.setDigitsBeforeDecimalForInterest(dto.getAppConfig().getDigitsBeforeDecimalForInterest());
    formBean.setDigitsAfterDecimalForInterest(dto.getAppConfig().getDigitsAfterDecimalForInterest());
    formBean.setDigitsBeforeDecimalForMonetaryAmounts(
            dto.getAppConfig().getDigitsBeforeDecimalForMonetaryAmounts());
    formBean.setDigitsAfterDecimalForMonetaryAmounts(
            dto.getAppConfig().getDigitsAfterDecimalForMonetaryAmounts());

    formBean.setProductId(productId);
    formBean.setCustomerId(dto.getCustomerDetailDto().getCustomerId());
    formBean.setRepaymentScheduleIndependentOfCustomerMeeting(dto.isRepaymentIndependentOfMeetingEnabled());
    formBean.setGraceDuration(dto.getGracePeriodInInstallments());
    formBean.setMaxGraceDuration(dto.getGracePeriodInInstallments());

    if (dto.isRepaymentIndependentOfMeetingEnabled()) {

        // use loan product to default meeting details
        Integer recursEvery = dto.getLoanOfferingMeetingDetail().getMeetingDetailsDto().getEvery();
        Integer dayOfMonth = dto.getLoanOfferingMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                .getDayNumber();
        Integer weekOfMonth = dto.getLoanOfferingMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                .getWeekOfMonth();
        Integer dayOfWeek = dto.getLoanOfferingMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                .getDayOfWeek();
        Integer recurrenceType = dto.getLoanOfferingMeetingDetail().getMeetingDetailsDto()
                .getRecurrenceTypeId();

        Integer customerRecurrenceType = dto.getCustomerMeetingDetail().getMeetingDetailsDto()
                .getRecurrenceTypeId();
        if (recurrenceType.equals(customerRecurrenceType)) {
            // if customer and product meeting frequencies are the same e.g. weekly or monthly, then default to customer details except for recurrence details
            dayOfMonth = dto.getCustomerMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                    .getDayNumber();
            weekOfMonth = dto.getCustomerMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                    .getWeekOfMonth();
            dayOfWeek = dto.getCustomerMeetingDetail().getMeetingDetailsDto().getRecurrenceDetails()
                    .getDayOfWeek();
        }

        // sometimes it seems customer meeting information can be setup wrong (i.e. has a day of month even though its weekly)
        if (recurrenceType == 1) {
            if (dateInformationIsAvailable(dayOfWeek)) {
                formBean.setWeeklyDetails(dayOfWeek, recursEvery);
            }
        } else if (recurrenceType == 2) {
            if (dateInformationIsAvailable(weekOfMonth) && dateInformationIsAvailable(dayOfWeek)) {
                formBean.setWeekOfMonthDetails(weekOfMonth, dayOfWeek, recursEvery);
            } else if (dateInformationIsAvailable(dayOfMonth)) {
                formBean.setDayOfMonthDetails(dayOfMonth, recursEvery);
            }
        } else if (recurrenceType == 3) {
            formBean.setRepaymentRecursEvery(recursEvery);
        }
    }

    formBean.setVariableInstallmentsAllowed(dto.isVariableInstallmentsAllowed());
    if (dto.isVariableInstallmentsAllowed()) {
        formBean.setMinGapInDays(dto.getMinGapInDays());
        formBean.setMaxGapInDays(dto.getMaxGapInDays());
        formBean.setMinInstallmentAmount(dto.getMinInstallmentAmount());
    }
    formBean.setGlimApplicable(dto.isGlimApplicable());
    if (dto.isGroup()) {
        formBean.setGroupLoanWithMembersEnabled(dto.isGroupLoanWithMembersEnabled());
    }
    if (dto.isGlimApplicable() || (dto.isGroup() && dto.isGroupLoanWithMembersEnabled())) {
        List<LoanAccountDetailsDto> clientData = dto.getClientDetails();
        String[] clientGlobalIdArray = new String[clientData.size()];
        int index = 0;
        for (LoanAccountDetailsDto loanAccountDetailsDto : clientData) {
            clientGlobalIdArray[index] = loanAccountDetailsDto.getClientId();
            index++;
        }
        formBean.setClientGlobalId(clientGlobalIdArray);

        formBean.setClientSelectForGroup(new Boolean[clientData.size()]);
        formBean.setClientAmount(new Number[clientData.size()]);
        Integer[] loanPurpose = new Integer[clientData.size()];
        formBean.setClientLoanPurposeId(loanPurpose);

        Number[][] selectedFeeIndividualAmounts = new Number[3][clientData.size()];
        formBean.setSelectedFeeIndividualAmounts(selectedFeeIndividualAmounts);

        Number[][] defaultFeeIndividualAmounts = new Number[dto.getDefaultFees().size()][clientData.size()];
        formBean.setDefaultFeeIndividualAmounts(defaultFeeIndividualAmounts);
    } else {
        formBean.setAmount(Double.valueOf(dto.getDefaultLoanAmount().toPlainString()));
    }

    formBean.setMinAllowedAmount(dto.getMinLoanAmount());
    formBean.setMaxAllowedAmount(dto.getMaxLoanAmount());

    formBean.setInterestRate(dto.getDefaultInterestRate());
    formBean.setMinAllowedInterestRate(dto.getMinInterestRate());
    formBean.setMaxAllowedInterestRate(dto.getMaxInterestRate());

    formBean.setNumberOfInstallments(dto.getDefaultNumberOfInstallments());
    formBean.setMinNumberOfInstallments(dto.getMinNumberOfInstallments());
    formBean.setMaxNumberOfInstallments(dto.getMaxNumberOfInstallments());

    formBean.setSourceOfFundsMandatory(mandatoryHidden.isMandatoryLoanSourceOfFund());
    formBean.setPurposeOfLoanMandatory(mandatoryHidden.isMandatoryLoanAccountPurpose());
    formBean.setCollateralTypeAndNotesHidden(mandatoryHidden.isHideSystemCollateralTypeNotes());
    formBean.setExternalIdHidden(mandatoryHidden.isHideSystemExternalId());
    if (!mandatoryHidden.isHideSystemExternalId()) {
        formBean.setExternalIdMandatory(mandatoryHidden.isMandatorySystemExternalId());
    }

    LocalDate possibleDisbursementDate = dto.getNextPossibleDisbursementDate();
    if (possibleDisbursementDate != null) {
        formBean.setDisbursementDateDD(possibleDisbursementDate.getDayOfMonth());
        formBean.setDisbursementDateMM(possibleDisbursementDate.getMonthOfYear());
        formBean.setDisbursementDateYY(possibleDisbursementDate.getYearOfEra());
    }

    formBean.setCollateralNotes("");

    Number[] defaultFeeId = new Number[dto.getDefaultFees().size()];
    Number[] defaultFeeAmountOrRate = new Number[dto.getDefaultFees().size()];
    int index = 0;
    for (FeeDto defaultFee : dto.getDefaultFees()) {
        if (defaultFee.isRateBasedFee()) {
            defaultFeeAmountOrRate[index] = defaultFee.getRate();
        } else {
            defaultFeeAmountOrRate[index] = defaultFee.getAmountAsNumber();
        }
        defaultFeeId[index] = Long.valueOf(defaultFee.getId());
        index++;
    }
    formBean.setDefaultFeeAmountOrRate(defaultFeeAmountOrRate);
    formBean.setDefaultFeeId(defaultFeeId);
    formBean.setDefaultFeeSelected(new Boolean[dto.getDefaultFees().size()]);
    formBean.setDefaultFees(dto.getDefaultFees());

    Number[] defaultPenaltyId = new Number[dto.getDefaultPenalties().size()];
    Number[] defaultPenaltyAmountOrRate = new Number[dto.getDefaultPenalties().size()];
    int idx = 0;
    for (PenaltyDto defaultPenalty : dto.getDefaultPenalties()) {
        if (defaultPenalty.isRateBasedPenalty()) {
            defaultPenaltyAmountOrRate[idx] = defaultPenalty.getRate();
        } else {
            defaultPenaltyAmountOrRate[idx] = defaultPenalty.getAmountAsNumber();
        }
        defaultPenaltyId[idx] = Long.valueOf(defaultPenalty.getPenaltyId());
        idx++;
    }
    formBean.setDefaultPenaltyAmountOrRate(defaultPenaltyAmountOrRate);
    formBean.setDefaultPenaltyId(defaultPenaltyId);
    formBean.setDefaultPenaltySelected(new Boolean[dto.getDefaultPenalties().size()]);
    formBean.setDefaultPenalties(dto.getDefaultPenalties());

    Number[] selectedFeeId = new Number[3];
    formBean.setSelectedFeeId(selectedFeeId);

    Number[] selectedFeeAmount = new Number[3];
    formBean.setSelectedFeeAmount(selectedFeeAmount);
    formBean.setAdditionalFees(dto.getAdditionalFees());

    if (formBean.getFiles() == null) {
        formBean.setFiles(new ArrayList<CommonsMultipartFile>());
        formBean.setFilesMetadata(new ArrayList<UploadedFileDto>());
    }

    formBean.setLoanInformationOrder(informationOrderServiceFacade.getInformationOrder("CreateLoan"));

    return dto;
}

From source file:org.mifos.test.acceptance.framework.loan.AccountChangeStatusPage.java

License:Open Source License

private void populateFields(EditAccountStatusParameters editAccountStatusParameters) {
    selenium.check("name=newStatusId value=" + editAccountStatusParameters.getAccountStatus().getId());
    selenium.fireEvent("name=newStatusId value=" + editAccountStatusParameters.getAccountStatus().getId(),
            "click");

    if (editAccountStatusParameters.getTrxnDate() != null) {
        LocalDate trxnDate = editAccountStatusParameters.getTrxnDate();
        selenium.type("transactionDateDD", String.valueOf(trxnDate.getDayOfMonth()));
        selenium.fireEvent("transactionDateDD", "blur");
        selenium.type("transactionDateMM", String.valueOf(trxnDate.getMonthOfYear()));
        selenium.fireEvent("transactionDateMM", "blur");
        selenium.type("transactionDateYY", String.valueOf(trxnDate.getYear()));
        selenium.fireEvent("transactionDateYY", "blur");
    }/*w  w  w. j av  a  2  s  .  co  m*/
    selenium.type("change_status.input.note", editAccountStatusParameters.getNote());
}

From source file:org.mifos.ui.core.controller.FundTransferFormBean.java

License:Open Source License

public void setTrxnDate(LocalDate date) {
    if (date == null) {
        trxnDateDD = "";
        trxnDateMM = "";
        trxnDateYY = "";
    } else {//from  ww  w  .  j a va 2 s  .  c  o m
        trxnDateDD = String.valueOf(date.getDayOfMonth());
        trxnDateMM = String.valueOf(date.getMonthOfYear());
        trxnDateYY = String.valueOf(date.getYear());
    }
}

From source file:org.mifos.ui.core.controller.FundTransferFormBean.java

License:Open Source License

public void setReceiptDate(LocalDate date) {
    if (date == null) {
        receiptDateDD = "";
        receiptDateMM = "";
        receiptDateYY = "";
    } else {//from ww w. j av a 2  s  .c  o  m
        receiptDateDD = String.valueOf(date.getDayOfMonth());
        receiptDateMM = String.valueOf(date.getMonthOfYear());
        receiptDateYY = String.valueOf(date.getYear());
    }
}

From source file:org.mifos.ui.loan.controller.LoanRepaymentFormBean.java

License:Open Source License

public void setPaymentDate(LocalDate paymentDate) {
    paymentDateDD = paymentDate.getDayOfMonth();
    paymentDateMM = paymentDate.getMonthOfYear();
    paymentDateYY = paymentDate.getYear();
}

From source file:org.netxilia.api.utils.DateUtils.java

License:Open Source License

public static LocalDateTime toLocalDateTime(ReadablePartial partial, LocalDateTime fullDateTime) {
    if (partial instanceof LocalDateTime) {
        return (LocalDateTime) partial;
    }//  www .  j  a v a2 s  .co  m
    if (partial instanceof LocalDate) {
        LocalDate d = (LocalDate) partial;
        return new LocalDateTime(d.getYear(), d.getMonthOfYear(), d.getDayOfMonth(),
                fullDateTime.getHourOfDay(), fullDateTime.getMinuteOfHour(), fullDateTime.getSecondOfMinute(),
                fullDateTime.getMillisOfSecond());
    }

    if (partial instanceof LocalTime) {
        LocalTime t = (LocalTime) partial;
        return new LocalDateTime(fullDateTime.getYear(), fullDateTime.getMonthOfYear(),
                fullDateTime.getDayOfMonth(), t.getHourOfDay(), t.getMinuteOfHour(), t.getSecondOfMinute(),
                t.getMillisOfSecond());
    }

    throw new IllegalArgumentException("The partial parameter has an unsupported class:" + partial.getClass());
}