WeekHolder.javaprojectforge-business/src/main/java/org/projectforge/framework/calendar/WeekHolder.java que contiene código Java para la capa de Calendario.Paquete: org.projectforge.framework.calendar
Clases: WeekHolder
Implementa: Serializable
Métodos (6): getWeekOfYear, getFirstDayDate, getLastDayDate, addObject, getObject, toString
Campos (2): serialVersionUID, weekOfYear
Importaciones: 6 paquetes
package org.projectforge.framework.calendar;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.projectforge.framework.time.PFDay;
import java.io.Serializable;
import java.time.Month;
import java.util.HashMap;
import java.util.Map;
/**
* @author Kai Reinhard (k.reinhard@micromata.de)
*/
public class WeekHolder implements Serializable {
private static final long serialVersionUID = -3895513078248004222L;
private PFDay[] days;
private int weekOfYear;
private Map<String, Object> objects;
public WeekHolder(PFDay date) {
final Month month = date.getMonth();
weekOfYear = date.getWeekOfYear();
days = new PFDay[7];
PFDay day = date.getBeginOfWeek();
// Procesar semana
for (int i = 0; i < 7; i++) {
if (day.getMonth() != month) {
// TODO: Marcar este día como día del mes anterior o siguiente:
//day.setMarker(true);
}
days[i] = day;
day = day.plusDays(1);
}
}
public int getWeekOfYear() {
return weekOfYear;
}
public PFDay[] getDays() {
return days;
}
public PFDay getFirstDayDate() {
return days[0];
}
public PFDay getLastDayDate() {
return days[days.length - 1];
}
/**
* Para almacenar objetos adicionales en una semana. Utilizado por el selector de fecha para mostrar el tiempo total de trabajo del usuario.
*/
public void addObject(String key, Object value) {
if (this.objects == null) {
this.objects = new HashMap<>();
}
this.objects.put(key, value);
}
/**
* Se utiliza para obtener, por ejemplo, el tiempo total de trabajo del usuario en esta semana.
*
* @return los objetos almacenados para este día o null si no existen.
*/
public Object getObject(String key) {
if (this.objects == null) {
return null;
}
return this.objects.get(key);
}
public Map<String, Object> getObjects() {
return this.objects;
}
public String toString() {
ToStringBuilder tos = new ToStringBuilder(this);
tos.append("days", getDays());
return tos.toString();
}
}
868d6abb7 2025 -> 2026 63081666f Encabezados de archivos fuente: 2024-> 2025. b6092df09 Derechos de autor 2023 -> 2024 ab45d51fa Derechos de autor 2001-2022 -> 2001-2023. 5f7ef41b8 Derechos de autor 2021 -> 2022