public IActionResult ActividadPropiedadPorTipo(int idActividad, int idActividadTipo) { try { List <ActividadPropiedad> actividadpropiedades = ActividadPropiedadDAO.getActividadPropiedadesPorTipoActividad(idActividadTipo); List <Dictionary <String, Object> > campos = new List <Dictionary <String, Object> >(); foreach (ActividadPropiedad actividadpropiedad in actividadpropiedades) { Dictionary <String, Object> campo = new Dictionary <String, Object>(); campo.Add("id", actividadpropiedad.id); campo.Add("nombre", actividadpropiedad.nombre); campo.Add("tipo", actividadpropiedad.datoTipoid); ActividadPropiedadValor actividadPropiedadValor = ActividadPropiedadValorDAO.getValorPorActividadYPropiedad(actividadpropiedad.id, idActividad); if (actividadPropiedadValor != null) { switch (actividadpropiedad.datoTipoid) { case 1: campo.Add("valor", actividadPropiedadValor.valorString); break; case 2: campo.Add("valor", actividadPropiedadValor.valorEntero); break; case 3: campo.Add("valor", actividadPropiedadValor.valorDecimal); break; case 4: campo.Add("valor", actividadPropiedadValor.valorEntero == 1 ? true : false); break; case 5: campo.Add("valor", actividadPropiedadValor.valorTiempo != null ? actividadPropiedadValor.valorTiempo.Value.ToString("dd/MM/yyyy H:mm:ss") : null); break; } } else { campo.Add("valor", ""); } campos.Add(campo); } List <object> estructuraCamposDinamicos = CFormaDinamica.convertirEstructura(campos); return(Ok(new { success = true, actividadpropiedades = estructuraCamposDinamicos })); } catch (Exception e) { CLogger.write("9", "ActividadPropiedadController.class", e); return(BadRequest(500)); } }
/// <summary> /// Obtiene el Valor de la Propiedad /// </summary> /// <param name="idPropiedad"></param> /// <param name="idActividad"></param> /// <returns></returns> public static ActividadPropiedadValor getValorPorActividadYPropiedad(int idPropiedad, int idActividad) { ActividadPropiedadValor ret = null; try { using (DbConnection db = new OracleContext().getConnection()) { ret = db.QueryFirstOrDefault <ActividadPropiedadValor>("SELECT * FROM actividad_propiedad_valor WHERE actividadid=:actividadId AND " + "actividad_propiedadid=:propiedadid", new { actividadId = idActividad, propiedadid = idPropiedad }); } } catch (Exception e) { CLogger.write("4", "ActividadPropiedadValorDAO.class", e); } return(ret); }
/// <summary> /// Elimina de la base de datos todas las actividades que pertenecen a la actividad y propiedad indicada /// </summary> /// <param name="actividadPropiedadValor">Objeto que contiene la información de la actividad y propiedad a borrar</param> /// <returns>TRUE si ejecutó correctamente el comando, FALSE en caso de error</returns> public static bool EliminarTotalActividadPropiedadValor(ActividadPropiedadValor actividadPropiedadValor) { bool resultado = false; try { using (DbConnection db = new OracleContext().getConnection()) { int eliminado = db.Execute("DELETE FROM actividad_propiedad_valor WHERE actividadid = :actividadId AND actividad_propiedadid = :actividadPropiedadId", new { actividadId = actividadPropiedadValor.actividadid, actividadPropiedadId = actividadPropiedadValor.actividadPropiedadid }); resultado = eliminado > 0 ? true : false; } } catch (Exception ex) { CLogger.write("3", "ActividadPropiedadValorDAO.class", ex); } return(resultado); }
/// <summary> /// Registra el objeto Actividad Propiedad Valor en base de datos /// </summary> /// <param name="actividadPropiedadValor">Objeto a registrar</param> /// <returns>TRUE si pudo guardar, FALSE en caso de error</returns> public static bool GuardarActividadPropiedadValor(ActividadPropiedadValor actividadPropiedadValor) { bool resultado = false; try { using (DbConnection db = new OracleContext().getConnection()) { int existe = db.ExecuteScalar <int>( "SELECT COUNT (*) FROM actividad_propiedad_valor WHERE actividadid = :actividadid AND actividad_propiedadid = :actividadPropiedadId", new { actividadid = actividadPropiedadValor.actividadid, actividadPropiedadId = actividadPropiedadValor.actividadPropiedadid } ); if (existe > 0) { int guardado = db.Execute("UPDATE actividad_propiedad_valor SET valor_entero = :valorEntero, valor_string = :valorString, valor_decimal = :valorDecimal, " + "valor_tiempo = :valorTiempo, usuario_creo = :usuarioCreo, usuario_actualizo = :usuarioActualizo, fecha_creacion = :fechaCreacion, fecha_actualizacion = :fechaActualizacion, " + "estado = :estado WHERE actividadid = :actividadid AND actividad_propiedadid = :actividadPropiedadId", actividadPropiedadValor); resultado = (guardado > 0) ? true : false; } else { int guardado = db.Execute( "INSERT INTO actividad_propiedad_valor VALUES (:actividadid, :actividadPropiedadid, :valorEntero, :valorString, :valorDecimal, :valorTiempo, :usuarioCreo, :usuarioActualizo, :fechaCreacion, :fechaActualizacion, :estado)", actividadPropiedadValor); resultado = (guardado > 0) ? true : false; } } } catch (Exception ex) { CLogger.write("2", "ActividadPropiedadValorDAO.class", ex); } return(resultado); }