List of usage examples for org.apache.commons.lang3.time DateUtils addDays
public static Date addDays(final Date date, final int amount)
From source file:org.foxbpm.calendar.mybatis.cmd.GetWorkCalendarEndTimeCmd.java
/** * ?/*from ww w . ja v a 2 s . c o m*/ * @param calendarRuleEntity * @return */ private Date CalculateEndTime(CalendarRuleEntity calendarRuleEntity) { //? if (getCalendarRuleByDate(begin) == null) { day += 1; begin = DateUtils.addDays(begin, 1); CalculateEndTime(calendarRuleEntity); } Date endDate = null; for (CalendarRuleEntity caRuleEntity : calendarTypeEntity.getCalendarRuleEntities()) { //?? if (caRuleEntity.getStatus() == FREESTATUS && caRuleEntity.getWorkdate() != null && caRuleEntity.getYear() == year && DateUtils.isSameDay(caRuleEntity.getWorkdate(), begin)) { // if (caRuleEntity.getCalendarPartEntities().size() == 0) { begin = DateUtils.addDays(begin, 1); Calendar calendar = Calendar.getInstance(); calendar.setTime(begin); calendar.set(Calendar.HOUR, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); begin = calendar.getTime(); year = calendar.get(Calendar.YEAR); month = calendar.get(Calendar.MONTH) + 1; day = calendar.get(Calendar.DATE); calendar.get(Calendar.HOUR); calendar.get(Calendar.MINUTE); calendar.get(Calendar.SECOND); } // ? ?? else { calendarRuleEntity = getCalendarRuleEntityWithHoliday(caRuleEntity); } } } //? if (calendarRuleEntity.getStatus() == FREESTATUS && calendarRuleEntity.getCalendarPartEntities().size() == 0) { day += 1; calendarRuleEntity = getCalendarRuleByDate(DateUtils.addDays(begin, 1)); Calendar calendar = Calendar.getInstance(); if (calendarRuleEntity.getCalendarPartEntities().size() > 0) { calendar.setTimeInMillis( getCalculateTime(calendarRuleEntity.getCalendarPartEntities().get(0).getStarttime(), calendarRuleEntity.getCalendarPartEntities().get(0).getAmorpm())); begin = calendar.getTime(); } endDate = CalculateEndTime(calendarRuleEntity); } for (int j = 0; j < calendarRuleEntity.getCalendarPartEntities().size(); j++) { CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(j); //??? ???? //TODO ? if (calendarPartEntity.getAmorpm() == DateCalUtils.dayForAMorPM(begin)) { Calendar formatCalendar = Calendar.getInstance(); // long startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); formatCalendar.setTimeInMillis(startTime); log.debug("" + formatCalendar.getTime()); //? long endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); formatCalendar.setTimeInMillis(endTime); log.debug("?" + formatCalendar.getTime()); //? long beginTime = begin.getTime(); formatCalendar.setTime(begin); log.debug("?" + formatCalendar.getTime()); //?? long beginEndTime = (long) (hours * HOURTIME + beginTime); formatCalendar.setTimeInMillis(beginEndTime); log.debug("?" + formatCalendar.getTime()); log.debug("" + hours + "?"); endDate = CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, j); if (endDate == null) { log.debug(""); break; } return endDate; } } return endDate; }
From source file:org.foxbpm.calendar.mybatis.cmd.GetWorkCalendarEndTimeCmd.java
/** * /*from w w w .j a v a 2 s . c om*/ * @param startTime * @param endTime * @param beginTime * @param beginEndTime * @param calendarRuleEntity * @param i * @return */ private Date CalculateTime(long startTime, long endTime, long beginTime, long beginEndTime, CalendarRuleEntity calendarRuleEntity, int i) { Calendar endCalendar = Calendar.getInstance(); //1?? if ((beginTime < startTime && beginEndTime < startTime)) { // CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(i); startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime = (long) (beginTime + hours * HOURTIME); //? return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i); } //?? else if ((beginTime > endTime && beginEndTime > endTime)) { // if (i + 1 < calendarRuleEntity.getCalendarPartEntities().size()) { CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(i + 1); startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime = (long) (beginTime + hours * HOURTIME); //? return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i + 1); } //?? if (isAddDay) { CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(0); startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime = (long) (beginTime + hours * HOURTIME); //? isAddDay = false; return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i); } // ?? else { CalendarRuleEntity calendarRuleEntity2 = getCalendarRuleByDate(DateUtils.addDays(begin, 1)); if (calendarRuleEntity2.getStatus() == FREESTATUS) { day += 1; } else { day += 1; isAddDay = true; startTime = getCalculateTime( calendarRuleEntity2.getCalendarPartEntities().get(0).getStarttime(), calendarRuleEntity2.getCalendarPartEntities().get(0).getAmorpm()); endTime = getCalculateTime(calendarRuleEntity2.getCalendarPartEntities().get(0).getEndtime(), calendarRuleEntity2.getCalendarPartEntities().get(0).getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime = (long) (beginTime + hours * HOURTIME); } return CalculateEndTime(calendarRuleEntity2); } } //2? ? else if (beginTime < startTime && beginEndTime > startTime && beginEndTime <= endTime) { // //? if ((endTime - startTime) - hours * HOURTIME > 0) { endCalendar.setTimeInMillis((long) (startTime + hours * HOURTIME)); return endCalendar.getTime(); } //??? else { if (i + 1 < calendarRuleEntity.getCalendarPartEntities().size()) { CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(i + 1); beginEndTime = (long) (hours * HOURTIME - (endTime - startTime)); hours = hours - ((double) (endTime - startTime) / (HOURTIME)); startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime += startTime; //? return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i + 1); } } } //3? else if (startTime <= beginTime && beginEndTime > startTime && beginEndTime <= endTime) { // endCalendar.setTimeInMillis(beginEndTime); } //4?? else if (startTime <= beginTime && beginEndTime > endTime) { CalendarPartEntity calendarPartEntity = null; if (i + 1 < calendarRuleEntity.getCalendarPartEntities().size()) { calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(i + 1); // ??? if (startTime == beginTime) { beginEndTime = (long) (hours * HOURTIME - (endTime - startTime)); hours = hours - ((double) (endTime - startTime) / (HOURTIME)); } //???? else { beginEndTime = (long) (hours * HOURTIME - (endTime - beginTime)); hours = hours - ((double) (endTime - beginTime) / (HOURTIME)); } startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime += startTime; //? return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i + 1); } //?? else { CalendarRuleEntity calendarRuleEntity2 = getCalendarRuleByDate(DateUtils.addDays(begin, 1)); if (calendarRuleEntity2.getStatus() == FREESTATUS || isHoliday(begin)) { day += 1; // ??? if (startTime == beginTime) { beginEndTime = (long) (hours * HOURTIME - (endTime - startTime)); hours = hours - ((double) (endTime - startTime) / (HOURTIME)); } //???? else { beginEndTime = (long) (hours * HOURTIME - (endTime - beginTime)); hours = hours - ((double) (endTime - beginTime) / (HOURTIME)); } } else { day += 1; // ??? if (startTime == beginTime) { beginEndTime = (long) (hours * HOURTIME - (endTime - startTime)); hours = hours - ((double) (endTime - startTime) / (HOURTIME)); } //???? else { beginEndTime = (long) (hours * HOURTIME - (endTime - beginTime)); hours = hours - ((double) (endTime - beginTime) / (HOURTIME)); } startTime = getCalculateTime( calendarRuleEntity2.getCalendarPartEntities().get(0).getStarttime(), calendarRuleEntity2.getCalendarPartEntities().get(0).getAmorpm()); endTime = getCalculateTime(calendarRuleEntity2.getCalendarPartEntities().get(0).getEndtime(), calendarRuleEntity2.getCalendarPartEntities().get(0).getAmorpm()); beginTime = startTime; Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); beginEndTime += startTime; } return CalculateEndTime(calendarRuleEntity2); } } //5? else if (beginTime < startTime && beginEndTime > endTime) { // CalendarPartEntity calendarPartEntity = calendarRuleEntity.getCalendarPartEntities().get(i); startTime = getCalculateTime(calendarPartEntity.getStarttime(), calendarPartEntity.getAmorpm()); endTime = getCalculateTime(calendarPartEntity.getEndtime(), calendarPartEntity.getAmorpm()); beginTime = startTime; beginEndTime = (long) (beginTime + (hours * HOURTIME)); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(beginTime); begin = calendar.getTime(); //? return CalculateTime(startTime, endTime, beginTime, beginEndTime, calendarRuleEntity, i); } return endCalendar.getTime(); }
From source file:org.foxbpm.calendar.mybatis.cmd.GetWorkCalendarEndTimeCmd.java
/** * ?/*from ww w .j a va2 s . c o m*/ * @param date * @return */ private CalendarRuleEntity getCalendarRuleByDate(Date date) { CalendarRuleEntity calendarRuleEntity = null; for (CalendarRuleEntity calendarRuleEntity2 : calendarTypeEntity.getCalendarRuleEntities()) { if (calendarRuleEntity2.getWeek() == DateCalUtils.dayForWeek(date)) { calendarRuleEntity = calendarRuleEntity2; } if (calendarRuleEntity2.getWorkdate() != null && DateUtils.isSameDay(calendarRuleEntity2.getWorkdate(), date) && calendarRuleEntity2.getCalendarPartEntities().size() != 0) { calendarRuleEntity = calendarRuleEntity2; } } //? if (calendarRuleEntity == null) { date = DateUtils.addDays(date, 1); return getCalendarRuleByDate(date); } return calendarRuleEntity; }
From source file:org.jasig.ssp.service.impl.SendAllEarlyAlertReminderNotificationsTestBase.java
protected void addEarlyAlertForStudent(final Person person, final Campus campus) throws Exception { final UUID id = UUID.randomUUID(); final EarlyAlert earlyAlert = mock(EarlyAlert.class); given(earlyAlert.getId()).willReturn(id); given(earlyAlert.getPerson()).willReturn(person); given(earlyAlert.getCreatedBy()).willReturn(this.earlyAlertCreatorAuditPerson); given(earlyAlert.getCreatedDate()).willReturn(DateUtils.addDays(new Date(), -3)); given(earlyAlert.getCampus()).willReturn(campus); this.earlyAlerts.add(earlyAlert); given(this.earlyAlertDao.get(id)).willReturn(earlyAlert); }
From source file:org.kuali.coeus.common.committee.impl.service.impl.CommitteeScheduleServiceImplBase.java
/** * Helper method to calculate advanced submission days. * @param startDate// w w w. j av a2 s.c o m * @param days * @return */ protected java.sql.Date calculateAdvancedSubmissionDays(Date startDate, Integer days) { Date deadlineDate = DateUtils.addDays(startDate, -days); return new java.sql.Date(deadlineDate.getTime()); }
From source file:org.kuali.coeus.common.committee.impl.web.struts.form.CommitteeHelperBase.java
/** * This method prepares a view to filter dates between start and end date, sorted by the scheduled date. * @param startDate// w w w . jav a2 s.com * @param endDate */ public void prepareFilterDatesView(java.util.Date startDate, java.util.Date endDate) { startDate = DateUtils.addDays(startDate, -1); endDate = DateUtils.addDays(endDate, 1); java.util.Date scheduleDate = null; for (CommitteeScheduleBase committeeSchedule : getSortedCommitteeScheduleList()) { scheduleDate = committeeSchedule.getScheduledDate(); if ((scheduleDate != null) && scheduleDate.after(startDate) && scheduleDate.before(endDate)) { committeeSchedule.setFilter(true); } else { committeeSchedule.setFilter(false); } } }
From source file:org.kuali.kra.award.timeandmoney.AwardDirectFandADistributionRuleImpl.java
/** * This method tests for break in date ranges of existing AwardDirectFandADistribution list on the Award. *///from w w w .j a v a 2s .com boolean existingDirectFandADistributionsDatesNoBreak( List<AwardDirectFandADistribution> thisAwardDirectFandADistributions) { boolean valid = true; int currentIndex = 0; for (AwardDirectFandADistribution thisAwardDirectFandADistribution : thisAwardDirectFandADistributions) { if (currentIndex < thisAwardDirectFandADistributions.size() - 1) { AwardDirectFandADistribution nextAwardDirectFandADistribution = thisAwardDirectFandADistributions .get(++currentIndex); if (DateUtils.addDays(thisAwardDirectFandADistribution.getEndDate(), 1) .before(nextAwardDirectFandADistribution.getStartDate())) { reportWarning(WARNING_BREAK_DATE_RANGE, KeyConstants.WARNING_AWARD_FANDA_DISTRIB_BREAKS); KNSGlobalVariables.getMessageList().add(KeyConstants.WARNING_AWARD_FANDA_DISTRIB_EXISTS, ""); valid = false; } } } return valid; }
From source file:org.kuali.kra.coi.CoiDisclosure.java
public void initRequiredFields() { // is pending equivalent to in progress? this.setDisclosureDispositionCode(CoiDispositionStatus.IN_PROGRESS); this.setDisclosureStatusCode(CoiDisclosureStatus.IN_PROGRESS); this.setReviewStatusCode(CoiReviewStatus.IN_PROGRESS); this.setPersonId(this.getDisclosureReporter().getPersonId()); initCoiDisclosureNumber();/* w w w. j a va 2 s .co m*/ this.setExpirationDate(new Date(DateUtils.addDays(new Date(System.currentTimeMillis()), 365).getTime())); }
From source file:org.kuali.kra.coi.disclosure.AddManualProjectRuleTest.java
@Test public void testAddProposalEventOK() { new TemplateRuleTest<AddManualProjectEvent, AddManualProjectRule>() { @Override//from www. j av a2s. c om protected void prerequisite() { CoiDisclProject coiDisclProject = new CoiDisclProject(); coiDisclProject.setDisclosureEventType(CoiDisclosureEventType.MANUAL_DEVELOPMENT_PROPOSAL); coiDisclProject.setCoiProjectId("test id"); coiDisclProject.setCoiProjectTitle("test title"); coiDisclProject.setModuleItemKey(coiDisclProject.getCoiProjectId()); coiDisclProject.setShortTextField1("test project role"); coiDisclProject.setLongTextField1("test sponsor"); coiDisclProject.setNumberField1(new ScaleTwoDecimal(1000.00)); coiDisclProject.setDateField1(new java.sql.Date(new Date().getTime())); CoiDisclosure coiDisclosure = new CoiDisclosure(); coiDisclosure.setCoiDisclProjects(new ArrayList<CoiDisclProject>()); coiDisclProject.setCoiDisclosure(coiDisclosure); Date dt = DateUtils.addDays(new Date(), 10); coiDisclProject.setDateField2(new java.sql.Date(dt.getTime())); coiDisclProject.setSelectBox1("1"); coiDisclProject.setDisclosureDispositionCode(CoiDispositionStatus.IN_PROGRESS); coiDisclProject.setDisclosureStatusCode(CoiDisclosureStatus.IN_PROGRESS); event = new AddManualProjectEvent(Constants.EMPTY_STRING, coiDisclProject); rule = new AddManualProjectRule(); expectedReturnValue = true; } }; }
From source file:org.kuali.kra.coi.disclosure.AddManualProjectRuleTest.java
@Test public void testAddTravelEventOK() { new TemplateRuleTest<AddManualProjectEvent, AddManualProjectRule>() { @Override//from ww w.ja v a 2 s .c o m protected void prerequisite() { CoiDisclProject coiDisclProject = new CoiDisclProject(); coiDisclProject.setDisclosureEventType(CoiDisclosureEventType.MANUAL_TRAVEL); coiDisclProject.setCoiProjectId("event id"); coiDisclProject.setCoiProjectTitle("event title"); coiDisclProject.setModuleItemKey(coiDisclProject.getCoiProjectId()); coiDisclProject.setDisclosureDispositionCode(CoiDispositionStatus.IN_PROGRESS); coiDisclProject.setDisclosureStatusCode(CoiDisclosureStatus.IN_PROGRESS); CoiDisclosure coiDisclosure = new CoiDisclosure(); coiDisclosure.setCoiDisclProjects(new ArrayList<CoiDisclProject>()); coiDisclProject.setCoiDisclosure(coiDisclosure); coiDisclProject.setShortTextField1("destination"); coiDisclProject.setLongTextField1("entity name"); coiDisclProject.setLongTextField2("sponsor"); coiDisclProject.setLongTextField3("purpose"); coiDisclProject.setNumberField1(new ScaleTwoDecimal(1000)); coiDisclProject.setDateField1(new java.sql.Date(new Date().getTime())); Date dt = DateUtils.addDays(new Date(), 10); coiDisclProject.setDateField2(new java.sql.Date(dt.getTime())); event = new AddManualProjectEvent(Constants.EMPTY_STRING, coiDisclProject); rule = new AddManualProjectRule(); expectedReturnValue = true; } }; }