Liferay 7日历问题

时间:2016-11-28 11:03:37

标签: calendar liferay liferay-7

我想知道Liferay 7中新的Calendar机制是如何工作的,知道Liferay 6中的所有CalEvent内容都变成了CalendarCalendarBookingCalendarResource在Liferay 7中。

在Liferay 6中,我们可以使用一些标签和常量(CalEventConstants)来组合一些自定义事件(这个文档在L6 https://dev.liferay.com/discover/portal/-/knowledge_base/6-2/managing-events-and-calendar-resources-with-liferays-c上对我来说非常好用)。 不幸的是,Liferay 7还没有这样的文档。

请帮助我至少弄清楚如何获得给定日历日的日历活动(例如今天)。我没有找到任何提示方法来过滤数据库中的日历条目,没有任何自定义逻辑。

任何%LocalServiceUtil方法提示都会很棒(或Github Liferay 7 Calendar 相关代码)

1 个答案:

答案 0 :(得分:2)

没有方法可以自行返回给定日期的事件,但您可以使用CBLS.getCalendarBookings(long calendarId, long startTime, long endTime)。像这样:

Calendar now = Calendar.getInstance();

Calendar start = now.clone()

start.set(Calendar.HOUR_OF_DAY, 0);
start.set(Calendar.MINUTE, 0);

Calendar end = now.clone()

end.set(Calendar.HOUR_OF_DAY, 23);
end.set(Calendar.MINUTE, 59);

List<CalendarBookings> calendarBookings =
    CalendarBookingLocalServiceUtil.getCalendarBookings(
        calendarId, start.getTimeInMillis(), end.getTimeInMillis());

(注意,我还没有测试过这段代码!它甚至可能没有编译。但是,我想它给出了一个合理的想法。至少可以说,API也不是很优雅,但好消息是这个问题可以解决。)