Acceder

Ver la Versión Completa : [ CONSULTA ] Ayuda metodo


orbayo64
29/07/14, 20:11:53
Hola.
Soy muy nuevo en esto y creo que no controlo demasiadas cosas.
Quiero elaborar un metodo en java para que me devuelva los dias de trabajo. Es decir
desde el 1 de enero de 2014 por ejemplo hasta el 31 de diciembre de 2050 por ejemplo
La cadencia de trabajo seria en ciclos de ocho dias: trabajo, libre,trabajo,trabajo, libre, libre, libre, libre.
Por lo menos me gustaria que alguien me orientara como realizarlo. Estoy bloqueado.
Gracias.

mocelet
29/07/14, 21:56:18
Con la clase Calendar puedes contar los días que han pasado entre la fecha que quieras y la fecha donde empezó el primer ciclo. Llamemos a esa variable diasDesdeElPrincipio.

Con esto ya sabes el número de días entre por ejemplo hoy y el 1 de enero de 2014. ¿Qué día de los ocho del ciclo toca? Es fácil con la operación módulo (diaDelCiclo = diasDesdeElPrincipio % 8).

Previamente defines un array con los ocho días del ciclo (p.ej. un boolean[] donde true sea libre y false trabajo), eliges la posición diaDelCiclo (que será un número entre 0 y 7 ambos inclusive) y ya tienes si toca trabajar o no en cualquier fecha que quieras.

orbayo64
31/07/14, 14:32:19
Muchisimas gracias por responder tan rapido. Es una pena que mis conocimientos no esten a la altura de tu dedicacion a mis dudas. Intentare poner en practica tus indicaciones dame dias. Voy a tratar de explicarme mejor por si cambia algo. Tengo hecho un calendario engridview. Lo que pretendo es que al visualizar cualquier mes los dias de trabajo esten señalados (bien cambiando el color de la celda o del dia, esto incluso lo sabria hacer). Es ahi donde me pierdo a tener que trabajar con conceptos no muy claros por mi.
Repito muchisimas gracias por tu desinteresada dedicacion.

orbayo64
15/10/14, 12:25:43
Hola de nuevo. Desde la ultima notificacion no he podido dedicar nada de tiempo a trabajar en ello, he estado un poco pachucho. Pero ahora sigo con las mismas dudas. Tratare de concretar un poco mas. Empezamos:
Trato de hacer una aplicación para mi trabajo. Lo hago a turnos y con una cadencia de 8 dias:
TLTTLLLL donde T es trabajo y L libre.
He “confeccionado” un calendario (uno ya existente) y lo estoy modificando a mis necesidades.
Quiero empezar el 1 de enero de 2015.
Los días de trabajo quiero modificar el color del dia o de la celda(eso lo se realizar).
Se que tengo que crear un método donde mediante “ % 8 “ me devolverá un nº y si es el 1,3,4
corresponde a trabajo y el resto no. Pero como puedo operar con las fechas,
porque tiene que corresponder con las que aparezca en la vista del calendario.
Es decir si en el calendario me aparece el mes de febrero del 2015 aparezcan en distinto color los días de trabajo.
En el Adapter del calendario define un” private final List<String> list;” que es donde va a guardar los días. Y mediante esto:

if (i== getCurrentDayOfMonth()){
list.add(String.valueOf(i) + "-BLUE"+ "-"+ getMonthAsString(currentMonth)+ "-" +yy);

guarda el dia del mes.
Yo trato de aprovechar esto para con lo que me devualva el método almacenar los días de trabajo.
No se si esa variable i es la que tengo que pasar al método, como poder operar con ella y
entiendo que si retorna 1,3,4 sea true para que me lo guarde en “list”.
Y el método lo puedo colocar en una clase diferente o tiene que situarse en la clase del Adaper.
Luego quiero trabajar con el para colocar varios turnos mediante las preferencias.

No se si esta mas claro o si es mucho lo que pido, pero de antemano muchas gracias por leer este mensaje.
Gracias y un saludo.