JavaScript - Pintar Filas de Tabla dependiendo condición

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Pintar Filas de Tabla dependiendo condición

Publicado por Nazgul (2 intervenciones) el 13/12/2019 21:43:12
Benas tardes estoy hace rato sin poder resolver algo, tengo una tabla con varios datos de individuos, una de esas columnas tiene como dato la fecha y la hora de ingreso del dato en el siguiente formato"13/12/2019 17:01:05", lo que quiero lograr es tomar la hora actual, calcular la diferencia de tiempo con la hora de ingreso del dato, y que me pinte cada fila dependiendo de su demora con 3 colores por ej:

verde: menor a 5'
amarillo: entre 5 y 10'
rojo: mayor a 10'

no se como continuar, tengo la funcion, para obtener la fecha y hra actual, para extraer en un array la fecha y hr de la entrada en la tabla, calculo la dif en minutos, obtengo un arreglo con los resultados en minutos, no se como recorrer cada fila y pintarla de acuerdo a las 3 condiciones


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//Fecha y hora DataFlow
function fyrdetabla(){
 
function arrayFyHtabla(){
    //Guardar en un array Columna x
    var arrayColx = new Array();
    $('.resultsGrid tbody tr td:nth-child(7)').each(function(){
        arrayColx.push($(this).text());
    });
    for(i=0;i<arrayColx.length;i++){
        arrayS[i] = onlyHr(arrayColx[i]);
    }
    return arrayS;
    }
 
    /* FUNCIONES AUXILIARES */
 
    //Fecha y Hora actual
    function fechayhora(){
        var f = new Date();
        date = f.getDate() + "/" + (f.getMonth()+1) + "/" + f.getFullYear();
        time = f.getHours() + ":" + f.getMinutes() + ":" + f.getSeconds();
 
        return date+" "+time;
    }
 
    //Devuelve solo la hora del formato fecha y hora
    function onlyHr(soloHora){
        cc = soloHora.split(" ",2);
        return cc[1];
    }
 
    function demora(){
        arrayDemora = arrayFyHtabla()
        arrayDemoraS = []
        arrayDemoraM = []
        arrayDemoraH = []
        aseg = [];
        amin = [];
        ahr = [];
        horas = []
        minutos = [];
        segundos = [];
        arrayresultante = [];
 
        fin = onlyHr(fechayhora());
        finSegundos = parseInt(fin.substr(6,2));
        finMinutos = parseInt(fin.substr(3,2));
        finHoras = parseInt(fin.substr(0,2));
 
        for(j = 0; j < arrayDemora.length; j++){
            arrayDemoraS[j] = parseInt(arrayDemora[j].substr(6,2));
            arrayDemoraM[j] = parseInt(arrayDemora[j].substr(3,2));
            arrayDemoraH[j] = parseInt(arrayDemora[j].substr(0,2));
 
            aseg[j] = finSegundos-arrayDemoraS[j];
            amin[j] = finMinutos-arrayDemoraM[j];
            ahr[j] = finHoras-arrayDemoraH[j];
        }
 
        for(i=0;i<arrayDemora.length;i++){
        if(aseg[i] < 0){
            amin[i]--;
            aseg[i] = 60 + aseg[i];
        }
 
      if (amin[i] < 0) {
        ahr[i]--;
        amin[i] = 60 + amin[i];
      }
 
      horas[i] = ahr[i].toString();
      minutos[i] = amin[i].toString();
      segundos[i] = aseg[i].toString();
 
      if (horas[i].length < 2) {
        horas[i] = "0"+horas[i];
      }
 
      if (minutos[i].length < 2) {
        minutos[i] = "0"+minutos[i];
      }
 
      if(segundos[i].length < 2){
          segundos[i] = "0"+segundos[i];
      }
 
    }
 
    for(h = 0; h < arrayDemora.length; h++){
        arrayresultante[h] = horas[h]+":"+minutos[h]+":"+segundos[h];
    }
 
    return minutos;
    }

la tabla es la siguente
ID FECHA TIMESLOT BKT BKT2 USUARIO CUPO timestamp obs tecnologia NOMBRE
1130910 13/12/2019 00:00 AM sur MANOGONZ 2 12/12/2019 14:32 LOL JOSE PEREZ
1130911 13/12/2019 00:00 PM sur MANOGONZ 2 12/12/2019 14:30 LOL GONZALEZ JOSE
1130658 13/12/2019 00:00 AM sur NUNEZFR 2 12/12/2019 14:26 LOL SOTO ROQUE ALCIDES
1130747 13/12/2019 00:00 AM sur MANOGONZ 2 12/12/2019 14:26 LOL VACCARO CARLOS
1130749 13/12/2019 00:00 PM sur MANOGONZ 2 12/12/2019 14:22 LOL VACCARO CARLOS
1130913 13/12/2019 00:00 AM sur MANOGONZ 2 12/12/2019 14:05 LOL ORTIZ GUSTAVO
1130912 13/12/2019 00:00 PM sur MANOGONZ 2 12/12/2019 14:00 LOL ORTIZ GUSTAVO


Desde ya muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 7
Ha disminuido su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Pintar Filas de Tabla dependiendo condición

Publicado por Nazgul (2 intervenciones) el 14/12/2019 18:56:35
Por si le sirve a alguien ya lo logré:

agregue :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function designarcolores(){
    minutoss = [];
    minutoss = demora();
    arrayHoraDataflow = arrayFHora();
    arrayPuntero = [];
 
    for(i=0; i<minutoss.length; i++){
        if(minutoss[i] < 10){
            arrayColores[i] = "g";
            $("table td:nth-child(9):contains("+arrayHoraDataflow[i]+")")
             .parents("tr")
            .css("background-color", "green");
 
        }else if(minutoss[i] < 20){
            arrayColores[i] = "y";
            $("table td:nth-child(9):contains("+arrayHoraDataflow[i]+")")
             .parents("tr")
            .css("background-color", "yellow");
        }else if(20 <= minutoss[i]){
            arrayColores[i] = "r";
            $("table td:nth-child(9):contains("+arrayHoraDataflow[i]+")")
             .parents("tr")
            .css("background-color", "red");
        }
    }
            //devuelve colores que debe tener cada row
    return arrayColores;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de joel
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Pintar Filas de Tabla dependiendo condición

Publicado por joel (895 intervenciones) el 14/12/2019 22:30:17
Gracias por comentarlo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar