All pastes #1879617 Raw Edit

colorear incidencias retrasadas

public text v1 · immutable
#1879617 ·published 2010-06-09 09:03 UTC
rendered paste body
		private void destacarIncidenciasRetrasadas()
		{
			foreach (DataGridItem fila in IncidenciasNotificadas.Items)
			{					
				int idUsuarioCau = int.Parse(fila.Cells[2].Text);
				String prioridad = fila.Cells[9].Text;
				
				if (idUsuarioCau == this.UPortal || idUsuarioCau==-1)
					fila.CssClass = "asignada";	

                
				String estado = fila.Cells[8].Text;
				
				//creamos el formato de fecha 
				DateTimeFormatInfo myDTFI = new CultureInfo( "es-ES", false ).DateTimeFormat;
				//obtenemos la fecha actual del sistema
				DateTime fechaActual = System.DateTime.Now;

				

				//obtenemos el string fecha de notificacion y lo convertimos a fecha para realizar la comparacion
				DateTime fechaNotificacion= DateTime.ParseExact(fila.Cells[5].Text, "dd/MM/yyyy", myDTFI);

				//controlamos que el estado sea en proceso para que exista la fecha de revision
				DateTime fechaRevision = new DateTime();
				if (String.Equals(estado, "En proceso"))
				{
					fechaRevision= DateTime.ParseExact(fila.Cells[6].Text, "dd/MM/yyyy", myDTFI);
				}
				
				System.TimeSpan diff1 = fechaActual.Subtract(fechaNotificacion);
				double diasDiff = diff1.TotalDays;
				System.TimeSpan diff2 = fechaActual.Subtract(fechaRevision);
				double diasDiff2 = diff2.TotalDays;
        
				if (String.Equals(estado, "Sin examinar"))
				{
					if( (String.Equals(prioridad, "Baja")&& diasDiff>7)||
						(String.Equals(prioridad, "Normal")&& diasDiff>4)||
						(String.Equals(prioridad, "Alta")&& diasDiff>2))
					{
						fila.CssClass += " retrasada";
					}
				}
				else if (String.Equals(estado, "En proceso"))
				{
					if( (String.Equals(prioridad, "Baja")&& diasDiff2>32)||
						(String.Equals(prioridad, "Normal")&& diasDiff2>16)||
						(String.Equals(prioridad, "Alta")&& diasDiff2>8))
					{
						fila.CssClass += " retrasada";
					}
				}		
			}			
		}