Colores en <p:schedule>
Last updated
Was this helpful?
Last updated
Was this helpful?
Agregar el en .xhtml
Definimos los colores que deseamos usar.
<style type="text/css">
.schedule-orange, .schedule-orange .fc-event-skin, .schedule-orange a{
background-color: orange;
color: black;
border-color: darkorange;
}
.schedule-yellow, .schedule-yellow .fc-event-skin, .schedule-yellow a{
background-color: goldenrod;
color: black;
border-color: darkgoldenrod;
}
.schedule-blue, .schedule-bluee .fc-event-skin, .schedule-blue a{
background-color: blue;
color: black;
border-color: darkblue;
}
.schedule-gray, .schedule-gray .fc-event-skin, .schedule-gray a{
background-color: #d4d0c8;
color: black;
border-color: darkgray;
}
.schedule-magenta, .schedule-magenta .fc-event-skin, .schedule-magenta a{
background-color: magenta;
color: black;
border-color: darkmagenta;
}
.schedule-green, .schedule-green .fc-event-skin, .schedule-green a{
background-color: green;
color: black;
border-color: darkgreen;
}
.schedule-red, .schedule-red .fc-event-skin, .schedule-red a{
background-color: red;
color: black;
border-color: darkred;
}
</style>
<script type="text/javascript">
PrimeFaces.locales['es'] = {
closeText: 'Cerrar',
prevText: 'Anterior',
nextText: 'Siguiente',
monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
monthNamesShort: ['Ene', 'Feb', 'Marz', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'],
dayNames: ['Domingo', 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado'],
dayNamesShort: ['Dom', 'Lun', 'Mart', 'Mie', 'Jue', 'Vie', 'Sab'],
dayNamesMin: ['S', 'M', 'D', 'M ', 'D', 'F ', 'S'],
weekHeader: 'Semana',
FirstDay: 1,
isRTL: false,
showMonthAfterYear: false,
yearSuffix: '',
timeOnlyTitle: 'Solo el tiempo',
timeText: 'Tiempo',
hourText: 'Hora',
minuteText: 'Minuto',
secondText: 'Segundo',
currentText: 'Hoy',
ampm: false,
month: 'Mes',
week: 'Semana',
day: 'Dia',
agenda:'Agenda',
allDayText: 'Dia entero'
};
</script>
El componente <p:schedule>, en el ejemplo colocamos para mostrar un dialogo.
<p:schedule id="schedule"
rightHeaderTemplate="month,agendaWeek,agendaDay,basicDay"
value="#{calendarioSolicitudViajesController.eventModel}" widgetVar="myschedule" timeZone="GMT-5"
locale="es">
<p:ajax event="eventSelect" listener="#{calendarioSolicitudViajesController.onEventSelect}"
update="eventDetails" oncomplete="PF('eventDialog').show();" />
</p:schedule>
Debemos agregar el tema que esta en el DefaultScheduleEvent(titulo, fechahorainicio, fechahorafin, tema)
eventModel.addEvent(
new DefaultScheduleEvent("# " + a.getIdsolicitud() + " Mision:" + a.getMision() + " Responsable: " + a.getUsuario().get(1).getNombre() + " " + a.getEstatus().getIdestatus()
+ car,
a.getFechahorapartida(), a.getFechahoraregreso(),tema)
private ScheduleModel eventModel;
public void cargarSchedule(Boolean start) {
try {
Document doc;
Document docViajes = new Document("activo", "si");
if (start) {
doc = new Document("tipovehiculo.idtipovehiculo", tipovehiculo.getIdtipovehiculo()).append("estatus.idestatus", estatus.getIdestatus()).append("activo", "si");
} else {
doc = new Document("activo", "si");
}
List<Viajes> list = viajesRepository.findBy(docViajes, new Document("fecha", 1));
solicitudList = solicitudRepository.findBy(doc, new Document("fecha", 1));
eventModel = new DefaultScheduleModel();
if (!solicitudList.isEmpty()) {
solicitudList.forEach((a) -> {
private ScheduleModel eventModel; String car = "{ ";
for (Tipovehiculo t : a.getTipovehiculo()) {
car += t.getIdtipovehiculo() + " ";
}
car += " }";
String tema="schedule-blue";
switch(a.getEstatus().getIdestatus()){
case "SOLICITADO":
tema="schedule-blue";
break;
case "APROBADO":
tema="schedule-green";
break;
case "RECHAZADO":
tema="schedule-red";
break;
case "CANCELADO":
tema="schedule-red";
break;
}
eventModel.addEvent(
new DefaultScheduleEvent("# " + a.getIdsolicitud() + " Mision:" + a.getMision() + " Responsable: " + a.getUsuario().get(1).getNombre() + " " + a.getEstatus().getIdestatus()
+ car,
a.getFechahorapartida(), a.getFechahoraregreso(),tema)
);
});
}
//Viajes
if(!list.isEmpty()){
list.forEach((v)->{
String car = "";
car = v.getVehiculo().stream().map((t) -> t.getMarca()+ " "+t.getModelo()+ " "+t.getPlaca()).reduce(car, String::concat);
String chofer="{";
chofer = v.getConductor().stream().map((c) -> c.getNombre() + "").reduce(chofer, String::concat);
chofer += " }";
eventModel.addEvent(
new DefaultScheduleEvent("#"+v.getIdviaje() + " "+car + " "+chofer,
v.getFechahorainicioreserva(),v.getFechahorafinreserva(),"schedule-orange")
);
}
);
}
} catch (Exception e) {
errorServices.errorMessage(nameOfClass(), nameOfMethod(), e.getLocalizedMessage());
}
}