public List <SugerenciaEL> GetSugerencia(String cboDistrito, String cboLocal, String dtpInicio, String dtpFin) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("@idDistrito", DbType.Int32, ParameterDirection.Input), new DAABRequest.Parameter("@idLocal", DbType.Int32, ParameterDirection.Input), new DAABRequest.Parameter("@fechaInicio", DbType.String, 20,ParameterDirection.Input), new DAABRequest.Parameter("@fechaFin", DbType.String, 20,ParameterDirection.Input), new DAABRequest.Parameter("@coderr", DbType.Int32, ParameterDirection.Output), new DAABRequest.Parameter("@msgerr", DbType.String, 1000,ParameterDirection.Output) }; arrParam[0].Value = cboDistrito; arrParam[1].Value = cboLocal; arrParam[2].Value = dtpInicio; arrParam[3].Value = dtpFin; configPARDOSDB objPardosDb = new configPARDOSDB(); DAABRequest objRequest = objPardosDb.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = "USPS_SugerenciasXDistritoLocal"; objRequest.Parameters.AddRange(arrParam); List <SugerenciaEL> lstSugerencia = new List <SugerenciaEL>(); IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { SugerenciaEL oSugerencia = new SugerenciaEL(); oSugerencia = new SugerenciaEL(); oSugerencia.Id = Funciones.CheckInt(dr["IdSugerencia"]); oSugerencia.Comentario = Funciones.CheckStr(dr["Comentario"]); oSugerencia.FechaIngreso = Funciones.CheckDate(dr["FechaIngreso"]); oSugerencia.Prioridad = Funciones.CheckStr(dr["Prioridad"]); oSugerencia.Descripcion = Funciones.CheckStr(dr["Descripcion"]); LocalEL olocal = new LocalEL(); UsuarioEL oUsuario = new UsuarioEL(); olocal.Id = Funciones.CheckInt(dr["Id"]); oUsuario.Email = Funciones.CheckStr(dr["Email"]); olocal.Usuario = oUsuario; olocal.Nombre = Funciones.CheckStr(dr["NombreLocal"]); olocal.Responsable = Funciones.CheckStr(dr["Responsable"]); oSugerencia.Local = olocal; lstSugerencia.Add(oSugerencia); } } catch (Exception e) { lstSugerencia = null; throw e; } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(lstSugerencia); }
public List <SugerenciaEL> GetSugerenciaEvaluada(int evalProcDetId) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("@idEPD", DbType.Int32, ParameterDirection.Input), new DAABRequest.Parameter("@coderr", DbType.Int32, ParameterDirection.Output), new DAABRequest.Parameter("@msgerr", DbType.String, 1000, ParameterDirection.Output) }; arrParam[0].Value = evalProcDetId; configPARDOSDB objPardosDb = new configPARDOSDB(); DAABRequest objRequest = objPardosDb.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = "GFR.USPS_SugerenciaEvaluada"; objRequest.Parameters.AddRange(arrParam); List <SugerenciaEL> lstSugerencias = new List <SugerenciaEL>(); IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { SugerenciaEL item = new SugerenciaEL(); item.Id = Funciones.CheckInt(dr["Id"]); item.Descripcion = Funciones.CheckStr(dr["descripcion"]); item.Fecha = Convert.ToDateTime(dr["fecha"]); ProcedimientoEL oProcedimiento = new ProcedimientoEL() { Id = Funciones.CheckInt(dr["procedimientoId"]), Nombre = Funciones.CheckStr(dr["Procedimiento"]) }; item.Procedimiento = oProcedimiento; EmpleadoEL oEmpleado = new EmpleadoEL() { NombreCompleto = Funciones.CheckStr(dr["Empleado"]) }; item.Empleado = oEmpleado; lstSugerencias.Add(item); } } catch (Exception e) { lstSugerencias = null; throw e; } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(lstSugerencias); }
public ActionResult EvaluarSugerencia(String cboDistrito, String cboLocal, String dtpInicio, String dtpFin) { EvaluacionSugerenciaHelper evaluacion = new EvaluacionSugerenciaHelper(); DetalleEvaluacionsugerencia detalle = new DetalleEvaluacionsugerencia(); int año = 0; int mes = 0; int dia = 0; if (dtpInicio == null || dtpFin == null || dtpInicio == "" || dtpFin == "") { ModelState.AddModelError("validacion", "Se debe ingresar la fecha de busqueda."); return(View("~/views/Sugerencia/Index.cshtml")); } //yyyy-mm-dd año = int.Parse(dtpInicio.Substring(0, 4)); mes = int.Parse(dtpInicio.Substring(5, 2)); dia = int.Parse(dtpInicio.Substring(8, 2)); DateTime thisDate1 = new DateTime(año, mes, dia); año = int.Parse(dtpFin.Substring(0, 4)); mes = int.Parse(dtpFin.Substring(5, 2)); dia = int.Parse(dtpFin.Substring(8, 2)); DateTime thisDate2 = new DateTime(año, mes, dia); Console.WriteLine("Today is " + thisDate1.ToString("MMMM dd, yyyy") + "."); SugerenciaEL records = new SugerenciaEL(); ListaPaginada <SugerenciaEL> listaContentSugerencia = new ListaPaginada <SugerenciaEL>(); tb_distrito distrito = db.tb_distrito.Find(int.Parse(cboDistrito)); tb_local local = db.tb_local.Find(int.Parse(cboLocal)); List <SugerenciaEL> listaSugerencias = sugerenciaBL.GetSugerencias(cboDistrito, cboLocal, dtpInicio, dtpFin); if (listaSugerencias.Count == 0) { ModelState.AddModelError("validacion", "No hay sugerencias por evaluar."); return(View("~/views/Sugerencia/Index.cshtml")); } if (cboDistrito.Equals("0")) { evaluacion.nombre_distrito = "TODOS"; } else { evaluacion.nombre_distrito = distrito.Nombre; } if (cboLocal.Equals("0")) { evaluacion.nombre_local = "TODOS"; } else { evaluacion.nombre_local = local.nombre; } evaluacion.fecha_inicio = thisDate1.ToString("dd/MM/yyyy"); evaluacion.fecha_fin = thisDate2.ToString("dd/MM/yyyy"); evaluacion.descripcion_evaluacion = "Se ha evaluado las solicitudes ingresadas en las fechas: " + thisDate1.ToString("MMMM dd, yyyy") + " a " + thisDate2.ToString("MMMM dd, yyyy"); List <DetalleEvaluacionsugerencia> detalleEvaluacionLista = new List <DetalleEvaluacionsugerencia>(); List <tb_sugerencia_parametro> sugerencia_parametros = new List <tb_sugerencia_parametro>(); var parametrosParametros = from c in db.tb_sugerencia_parametro select c; tb_sugerencia_parametro parametros = new tb_sugerencia_parametro(); foreach (tb_sugerencia_parametro solicitudd in parametrosParametros) { sugerencia_parametros.Add(solicitudd); } int total_prioridad_alta = 0; int total_prioridad_baja = 0; int total_prioridad_media = 0; int total_sugerencias = 0; foreach (SugerenciaEL sugerencia in listaSugerencias) { DetalleEvaluacionsugerencia detalleSugerencia = new DetalleEvaluacionsugerencia(); /**/ detalleSugerencia.codigo_sugerencia = Convert.ToString(sugerencia.Id); detalleSugerencia.administrador_sugerencia = sugerencia.Local.Responsable; detalleSugerencia.fecha_sugerencia = sugerencia.FechaIngreso.ToString("dd/MM/yyyy"); detalleSugerencia.prioridad_sugerencia = sugerencia.Prioridad; detalleSugerencia.enviar_sugerencia = "N"; detalleSugerencia = evaluarPrioridad(sugerencia.Descripcion, sugerencia_parametros, detalleSugerencia, evaluacion); detalleSugerencia.detalle_sugerencia = detalleSugerencia.detalle_sugerencia; detalleSugerencia.prioridad_sugerencia = detalleSugerencia.prioridad_sugerencia; detalleSugerencia.descripcion_sugerencia = sugerencia.Descripcion; tb_local locals = db.tb_local.Find(sugerencia.Local.Id); detalleSugerencia.correo_electronico = locals.Usuario.Email; detalleSugerencia.descripcion_local = locals.tb_distrito.Nombre + " - " + locals.direccion; if (detalleSugerencia.prioridad_sugerencia.Equals("ALTA")) { total_prioridad_alta += 1; } else if (detalleSugerencia.prioridad_sugerencia.Equals("MEDIA")) { total_prioridad_media += 1; } else if (detalleSugerencia.prioridad_sugerencia.Equals("BAJA")) { total_prioridad_baja += 1; } detalleEvaluacionLista.Add(detalleSugerencia); /**/ } total_sugerencias = total_prioridad_alta + total_prioridad_media + total_prioridad_baja; evaluacion.descripcion_evaluacion = evaluacion.descripcion_evaluacion + ". " + "Se han evaluado " + total_sugerencias + " solicitudes. De las cuales " + total_prioridad_alta + " son de prioridad alta, " + total_prioridad_media + " son de prioridad media y " + total_prioridad_baja + " son de prioridad baja."; evaluacion.DetalleEvaluacionsugerencia = detalleEvaluacionLista; /*ACTUALIZAR ESTADO DE SUGERENCIA*/ /* foreach (DetalleEvaluacionsugerencia sugerencia in detalleEvaluacionLista) * { * tb_sugerencia sugerencias = db.tb_sugerencia.Find(sugerencia.Id); * if (sugerencia.prioridad_sugerencia.Equals("ALTA")) * { * sugerencias.prioridad = "1"; * } * else if (sugerencia.prioridad_sugerencia.Equals("MEDIA")) * { * sugerencias.prioridad = "2"; * } * else if (sugerencia.prioridad_sugerencia.Equals("BAJA")) * { * sugerencias.prioridad = "3"; * } * * sugerencias.estado = 2; // Estado dos es REVISADO * db.Entry(sugerencias).State = System.Data.EntityState.Modified; * db.SaveChanges(); * }*/ /*ACTUALIZAR ESTADO DE SUGERENCIA*/ return(View(evaluacion)); }