public static bool Guardar(PagoPlanificado pagoPlanificado) { bool ret = false; try { using (DbConnection db = new OracleContext().getConnection()) { int existe = db.ExecuteScalar <int>("SELECT * FROM pago_planificado WHERE id=:id", new { id = pagoPlanificado.id }); if (existe > 0) { int guardado = db.Execute("UPDATE pago_planificado SET fecha_pago=:fechaPago, pago=:pago, objeto_id=:objetoId, objeto_tipo=:objetoTipo, usuario_creo=:usuarioCreo, " + "usuario_actualizo=:usuarioActualizo, fecha_creacion=:fechaCreacion, fecha_actualizacion=:fechaActualizacion, estado=:estado WHERE id=:id", pagoPlanificado); ret = guardado > 0 ? true : false; } else { int sequenceId = db.ExecuteScalar <int>("SELECT seq_pago_planificado.nextval FROM DUAL"); pagoPlanificado.id = sequenceId; int guardado = db.Execute("INSERT INTO pago_planificado VALUES (:id, :fechaPago, :pago, :objetoId, :objetoTipo, :usuarioCreo, :usuarioActualizo, :fechaCreacion, " + ":fechaActualizacion, :estado)", pagoPlanificado); ret = guardado > 0 ? true : false; } } } catch (Exception e) { CLogger.write("3", "PagoPlanificadoDAO.class", e); } return(ret); }
public static bool eliminarPagoPlanificado(PagoPlanificado pagoPlanificado) { bool ret = false; try { pagoPlanificado.estado = 0; pagoPlanificado.fechaActualizacion = DateTime.Now; ret = Guardar(pagoPlanificado); } catch (Exception e) { CLogger.write("4", "PagoPlanificadoDAO.class", e); } return(ret); }
public static PagoPlanificado getPagosPlanificadosPorId(int id) { PagoPlanificado ret = null; try { using (DbConnection db = new OracleContext().getConnection()) { ret = db.QueryFirstOrDefault <PagoPlanificado>("SELECT * FROM pago_planificado p WHERE p.id=:id", new { id = id }); } } catch (Exception e) { CLogger.write("2", "PagoPlanificado.class", e); } return(ret); }
public static bool eliminarTotalPagoPlanificado(PagoPlanificado pagoPlanificado) { bool ret = false; try { using (DbConnection db = new OracleContext().getConnection()) { int eliminado = db.Execute("DELETE FROM pago_planificado WHERE id=:id", new { id = pagoPlanificado.id }); ret = eliminado > 0 ? true : false; } } catch (Exception e) { CLogger.write("5", "PagoPlanificadoDAO.class", e); } return(ret); }
public IActionResult Componente(int id, [FromBody] dynamic value) { try { bool result = false; ComponenteValidator validator = new ComponenteValidator(); ValidationResult results = validator.Validate(value); if (results.IsValid) { Componente componente = ComponenteDAO.getComponentePorId(id, User.Identity.Name); componente.nombre = value.nombre; componente.descripcion = value.descripcion; componente.componenteTipoid = value.componenteTipoid; componente.proyectoid = value.proyectoid; componente.ueunidadEjecutora = value.ueunidadEjecutora; componente.ejercicio = value.ejercicio; componente.entidad = value.entidad; componente.snip = value.snip; componente.programa = value.programa; componente.subprograma = value.subprograma; componente.proyecto = value.proyecto; componente.actividad = value.actividad; componente.obra = value.obra; componente.renglon = value.renglon; componente.ubicacionGeografica = value.ubicacionGeografica; componente.latitud = value.latitud; componente.longitud = value.longitud; componente.costo = value.costo; componente.acumulacionCostoid = value.acumulacionCostoid; componente.fechaInicio = value.fechaInicio; componente.fechaFin = value.fechaFin; componente.duracion = value.duracion; componente.duracionDimension = value.duracionDimension; componente.esDeSigade = value.esDeSigade; componente.inversionNueva = value.inversionNueva; componente.fechaActualizacion = DateTime.Now; componente.usuarioActualizo = User.Identity.Name; componente.fuentePrestamo = value.fuentePrestamo; componente.fuenteDonacion = value.fuenteDonacion; componente.fuenteNacional = value.fuenteNacional; DateTime fechaInicioReal; DateTime.TryParse((string)value.fechaInicioReal, out fechaInicioReal); componente.fechaInicioReal = fechaInicioReal; DateTime fechaFinReal; DateTime.TryParse((string)value.fechaFinReal, out fechaFinReal); componente.fechaFinReal = fechaFinReal; result = ComponenteDAO.guardarComponente(componente, true); if (result) { String pagosPlanificados = value.pagosPlanificados; if (!componente.acumulacionCostoid.Equals(2) || pagosPlanificados != null && pagosPlanificados.Length > 0) { List <PagoPlanificado> pagosActuales = PagoPlanificadoDAO.getPagosPlanificadosPorObjeto(componente.id, 1); foreach (PagoPlanificado pagoTemp in pagosActuales) { PagoPlanificadoDAO.eliminarTotalPagoPlanificado(pagoTemp); } } if (componente.acumulacionCostoid.Equals(2) && pagosPlanificados != null && pagosPlanificados.Length > 0) { JArray pagosArreglo = JArray.Parse((string)value.pagosPlanificados); for (int i = 0; i < pagosArreglo.Count; i++) { JObject objeto = (JObject)pagosArreglo[i]; DateTime fechaPago = objeto["fechaPago"] != null?Convert.ToDateTime(objeto["fechaPago"].ToString()) : default(DateTime); decimal monto = objeto["pago"] != null?Convert.ToDecimal(objeto["pago"].ToString()) : default(decimal); PagoPlanificado pagoPlanificado = new PagoPlanificado(); pagoPlanificado.fechaPago = fechaPago; pagoPlanificado.pago = monto; pagoPlanificado.objetoId = componente.id; pagoPlanificado.objetoTipo = 1; pagoPlanificado.usuarioCreo = User.Identity.Name; pagoPlanificado.fechaCreacion = DateTime.Now; pagoPlanificado.estado = 1; result = result && PagoPlanificadoDAO.Guardar(pagoPlanificado); } } } if (result) { List <ComponentePropiedad> componentePropiedades = ComponentePropiedadDAO.getComponentePropiedadesPorTipoComponente(componente.componenteTipoid); foreach (ComponentePropiedad componentePropiedad in componentePropiedades) { ComponentePropiedadValor compPropVal = ComponentePropiedadValorDAO.getValorPorComponenteYPropiedad(componentePropiedad.id, componente.id); result &= ComponentePropiedadValorDAO.eliminarTotalComponentePropiedadValor(compPropVal); } JArray datosDinamicos = JArray.Parse((string)value.camposDinamicos); for (int i = 0; i < datosDinamicos.Count; i++) { JObject data = (JObject)datosDinamicos[i]; if (data["valor"] != null && data["valor"].ToString().Length > 0 && data["valor"].ToString().CompareTo("null") != 0) { ComponentePropiedad componentePropiedad = ComponentePropiedadDAO.getComponentePropiedadPorId(Convert.ToInt32(data["id"])); ComponentePropiedadValor valor = new ComponentePropiedadValor(); valor.componentes = componente; valor.componenteid = componente.id; valor.componentePropiedads = componentePropiedad; valor.componentePropiedadid = componentePropiedad.id; valor.usuarioCreo = User.Identity.Name; valor.fechaCreacion = DateTime.Now; switch (componentePropiedad.datoTipoid) { case 1: valor.valorString = data["valor"].ToString(); break; case 2: valor.valorEntero = Convert.ToInt32(data["valor"].ToString()); break; case 3: valor.valorDecimal = Convert.ToDecimal(data["valor"].ToString()); break; case 4: valor.valorEntero = data["valor"].ToString() == "true" ? 1 : 0; break; case 5: valor.valorTiempo = Convert.ToDateTime(data["valor_f"].ToString()); break; } result &= ComponentePropiedadValorDAO.guardarComponentePropiedadValor(valor); } } } return(Ok(new { success = true, id = componente.id, usuarioCreo = componente.usuarioCreo, usuarioActualizo = componente.usuarioActualizo, fechaCreacion = componente.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"), fechaActualizacion = componente.fechaActualizacion != null ? componente.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null })); } else { return(Ok(new { success = false })); } } catch (Exception e) { CLogger.write("11", "ComponenteController.class", e); return(BadRequest(500)); } }
public IActionResult Subproducto(int id, [FromBody] dynamic value) { try { bool resultado = false; SubproductoValidator validator = new SubproductoValidator(); ValidationResult results = validator.Validate(value); if (results.IsValid) { Subproducto subproducto = SubproductoDAO.getSubproductoPorId(id); subproducto.nombre = value.nombre; subproducto.descripcion = value.descripcion; subproducto.productoid = (int)value.producto; /// subproducto.subproductoPadreId = (int)value.subproductoPadre; // no hay nada de subproductopadreid subproducto.subproductoTipoid = (int)value.tiposubproductoid; subproducto.ueunidadEjecutora = value.unidadEjecutora != null ? (int)value.unidadEjecutora : default(int); subproducto.entidad = value.entidad != null ? (int)value.entidad : default(int); subproducto.ejercicio = value.ejercicio != null ? (int)value.ejercicio : default(int); subproducto.snip = value.snip; subproducto.programa = value.programa; subproducto.subprograma = value.subprograma; subproducto.proyecto = value.proyecto; subproducto.obra = value.obra; subproducto.renglon = value.renglon; subproducto.ubicacionGeografica = value.ubicacionGeografica; subproducto.actividad = value.actividad; subproducto.latitud = value.latitud; subproducto.longitud = value.longitud; subproducto.costo = value.costo; subproducto.acumulacionCostoid = value.acumulacionCostoId; subproducto.fechaInicio = value.fechaInicio; subproducto.fechaFin = Convert.ToDateTime(value.fechaFin); subproducto.duracion = value.duaracion; subproducto.duracionDimension = value.duracionDimension; subproducto.inversionNueva = value.inversionNueva; Producto producto = ProductoDAO.getProductoPorId(subproducto.productoid); Subproducto subproductoPadre = new Subproducto(); /// subproductoPadre.setId(subproductoPadreId); // todo esta data no venia SubproductoTipo subproductoTipo = new SubproductoTipo(); subproductoTipo.id = subproducto.subproductoTipoid; if ((value.ejercicio != null) && (value.entidad != null) && (value.unidadEjecutora != null)) { UnidadEjecutoraDAO.getUnidadEjecutora(value.ejercicio, value.entidad, value.ueunidadEjecutora); } /*UnidadEjecutora unidadEjecutora = (subproducto.ejercicio != null && subproducto.entidad != null && subproducto.ueunidadEjecutora != null) ? UnidadEjecutoraDAO.getUnidadEjecutora(subproducto.ejercicio, subproducto.entidad, subproducto.ueunidadEjecutora) : null; */ resultado = SubproductoDAO.guardarSubproducto(subproducto, false); if (resultado) { String pagosPlanificados = value.pagosPlanificados; if (!subproducto.acumulacionCostoid.Equals(2) || pagosPlanificados != null && pagosPlanificados.Replace("[", "").Replace("]", "").Length > 0) { List <PagoPlanificado> pagosActuales = PagoPlanificadoDAO.getPagosPlanificadosPorObjeto(subproducto.id, 4); foreach (PagoPlanificado pagoTemp in pagosActuales) { PagoPlanificadoDAO.eliminarTotalPagoPlanificado(pagoTemp); } } if (subproducto.acumulacionCostoid.Equals(2) && pagosPlanificados != null && pagosPlanificados.Replace("[", "").Replace("]", "").Length > 0) { JArray pagosArreglo = JArray.Parse((string)value.pagosPlanificados); for (int i = 0; i < pagosArreglo.Count; i++) { JObject objeto = (JObject)pagosArreglo[i]; DateTime fechaPago = objeto["fechaPago"] != null?Convert.ToDateTime(objeto["fechaPago"].ToString()) : default(DateTime); decimal monto = objeto["pago"] != null?Convert.ToDecimal(objeto["pago"]) : default(decimal); PagoPlanificado pagoPlanificado = new PagoPlanificado(); pagoPlanificado.fechaPago = fechaPago; pagoPlanificado.pago = monto; pagoPlanificado.objetoId = subproducto.id; pagoPlanificado.objetoTipo = 4; pagoPlanificado.usuarioCreo = User.Identity.Name; pagoPlanificado.estado = 1; resultado = resultado && PagoPlanificadoDAO.Guardar(pagoPlanificado); } } if (resultado) { JArray datos = JArray.Parse((string)value.datadinamica); for (int i = 0; i < datos.Count; i++) { JObject data = (JObject)datos[i]; if (data["valor"] != null && data["valor"].ToString().Length > 0 && data["valor"].ToString().CompareTo("null") != 0) { SubproductoPropiedad producotPropiedad = SubproductoPropiedadDAO.getSubproductoPropiedadPorId(Convert.ToInt32(data["id"])); SubproductoPropiedadValor valor = new SubproductoPropiedadValor(); valor.subproductoid = subproducto.id; valor.subproductos = subproducto; valor.subproductoPropiedads = producotPropiedad; valor.usuarioCreo = User.Identity.Name; valor.fechaCreacion = DateTime.Now; valor.estado = 1; switch (producotPropiedad.datoTipoid) { case 1: valor.valorString = data["valor"].ToString(); break; case 2: valor.valorEntero = Convert.ToInt32(data["valor"].ToString()); break; case 3: valor.valorDecimal = Convert.ToDecimal(data["valor"].ToString()); break; case 4: break; case 5: valor.valorTiempo = Convert.ToDateTime(data["valor_f"].ToString()); break; } resultado = (resultado && SubproductoPropiedadValorDAO.guardarSubproductoPropiedadValor(valor)); } } } return(Ok(new { success = resultado, subproducto.id, subproducto.usuarioCreo, subproducto.fechaCreacion, subproducto.usuarioActualizo, subproducto.fechaActualizacion })); } else { return(Ok(new { success = false })); } } else { return(Ok(new { success = false })); } } catch (Exception e) { CLogger.write("3", "SubproductoController.class", e); return(BadRequest(500)); } }
public IActionResult Subproducto([FromBody] dynamic value) { try { bool resultado = false; SubproductoValidator validator = new SubproductoValidator(); ValidationResult results = validator.Validate(value); if (results.IsValid) { Subproducto subproducto = new Subproducto(); subproducto.nombre = value.nombre; subproducto.descripcion = value.descripcion; subproducto.productoid = (int)value.producto; ///subproducto.su.subproductoPadreId = (int)value.subproductoPadre; no tiene subproductopadre subproducto.subproductoTipoid = (int)value.tiposubproductoid; subproducto.ueunidadEjecutora = value.unidadEjecutora != null ? (int)value.unidadEjecutora : default(int); subproducto.entidad = value.entidad != null ? (int)value.entidad : default(int); subproducto.ejercicio = value.ejercicio != null ? (int)value.ejercicio : default(int); subproducto.snip = value.snip; subproducto.programa = value.programa; subproducto.subprograma = value.subprograma; subproducto.proyecto = value.proyecto; subproducto.obra = value.obra; subproducto.renglon = value.renglon; subproducto.ubicacionGeografica = value.ubicacionGeografica; subproducto.actividad = value.actividad; subproducto.latitud = value.latitud; subproducto.longitud = value.longitud; subproducto.costo = value.costo; subproducto.acumulacionCostoid = value.acumulacionCostoId; subproducto.fechaInicio = value.fechaInicio; subproducto.fechaFin = Convert.ToDateTime(value.fechaFin); subproducto.duracion = value.duaracion; subproducto.duracionDimension = value.duracionDimension; subproducto.inversionNueva = value.inversionNueva; //Se agregan estas lineas subproducto.fechaCreacion = DateTime.Now; subproducto.usuarioCreo = User.Identity.Name; subproducto.estado = 1; // Se agregan estas lineas DateTime fechaInicioReal; DateTime.TryParse((string)value.fechaInicioReal, out fechaInicioReal); subproducto.fechaInicioReal = fechaInicioReal; DateTime fechaFinReal; DateTime.TryParse((string)value.fechaFinReal, out fechaFinReal); subproducto.fechaFinReal = fechaFinReal; // Se comenta Producto producto = ProductoDAO.getProductoPorId(subproducto.productoid); // Se comenta Subproducto subproductoPadre = new Subproducto(); ///subproductoPadre.setId(subproductoPadreId); // esta data no viene // Se comenta SubproductoTipo subproductoTipo = new SubproductoTipo(); // Se comenta subproductoTipo.id = subproducto.subproductoTipoid; // Se comenta if ((value.ejercicio != null) && (value.entidad != null) && (value.unidadEjecutora != null)) // Se comenta { // Se comenta UnidadEjecutoraDAO.getUnidadEjecutora(value.ejercicio, value.entidad, value.ueunidadEjecutora); // Se comenta } /*UnidadEjecutora unidadEjecutora = (subproducto.ejercicio != null && subproducto.entidad != null && subproducto.ueunidadEjecutora != null) ? UnidadEjecutoraDAO.getUnidadEjecutora(subproducto.ejercicio, subproducto.entidad, subproducto.ueunidadEjecutora) : null; */ //resultado = SubproductoDAO.guardarSubproducto(subproducto, false); resultado = SubproductoDAO.guardarSubproducto(subproducto, true); if (resultado) { String pagosPlanificados = value.pagosPlanificados; if (!subproducto.acumulacionCostoid.Equals(4) || pagosPlanificados != null && pagosPlanificados.Replace("[", "").Replace("]", "").Length > 0) { List <PagoPlanificado> pagosActuales = PagoPlanificadoDAO.getPagosPlanificadosPorObjeto(subproducto.id, 4); foreach (PagoPlanificado pagoTemp in pagosActuales) { PagoPlanificadoDAO.eliminarTotalPagoPlanificado(pagoTemp); } } if (subproducto.acumulacionCostoid.Equals(4) && pagosPlanificados != null && pagosPlanificados.Replace("[", "").Replace("]", "").Length > 0) { JArray pagosArreglo = JArray.Parse((string)value.pagosPlanificados); for (int i = 0; i < pagosArreglo.Count; i++) { JObject objeto = (JObject)pagosArreglo[i]; DateTime fechaPago = objeto["fechaPago"] != null?Convert.ToDateTime(objeto["fechaPago"].ToString()) : default(DateTime); decimal monto = objeto["pago"] != null?Convert.ToDecimal(objeto["pago"]) : default(decimal); PagoPlanificado pagoPlanificado = new PagoPlanificado(); pagoPlanificado.fechaPago = fechaPago; pagoPlanificado.pago = monto; pagoPlanificado.objetoId = subproducto.id; pagoPlanificado.objetoTipo = 4; pagoPlanificado.usuarioCreo = User.Identity.Name; // se agrega linea pagoPlanificado.fechaCreacion = DateTime.Now; pagoPlanificado.estado = 1; resultado = resultado && PagoPlanificadoDAO.Guardar(pagoPlanificado); } } } if (resultado) { // Se agrega este bloque probarlo List <SubproductoPropiedad> subproductoPropiedades = SubproductoPropiedadDAO.getSubproductoPropiedadesPorTipo(subproducto.subproductoTipoid); foreach (SubproductoPropiedad subProductoPropiedad in subproductoPropiedades) { SubcomponentePropiedadValor subProdPropVal = SubcomponentePropiedadValorDAO.getValorPorSubComponenteYPropiedad(subProductoPropiedad.id, subproducto.id); if (subProdPropVal != null) { resultado = resultado && SubcomponentePropiedadValorDAO.eliminarTotalSubComponentePropiedadValor(subProdPropVal); } } // Hasta aqui JArray datos = JArray.Parse((string)value.datadinamica); for (int i = 0; i < datos.Count; i++) { JObject data = (JObject)datos[i]; if (data["valor"] != null && data["valor"].ToString().Length > 0 && data["valor"].ToString().CompareTo("null") != 0) { SubproductoPropiedad subProductoPropiedad = SubproductoPropiedadDAO.getSubproductoPropiedadPorId(Convert.ToInt32(data["id"])); SubproductoPropiedadValor valor = new SubproductoPropiedadValor(); valor.subproductoid = subproducto.id; valor.subproductos = subproducto; valor.subproductoPropiedads = subProductoPropiedad; // valor.subproductoPropiedadid = subProductoPropiedad.id; valor.usuarioCreo = User.Identity.Name; valor.fechaCreacion = DateTime.Now; valor.estado = 1; switch (subProductoPropiedad.datoTipoid) { case 1: valor.valorString = data["valor"].ToString(); break; case 2: valor.valorEntero = Convert.ToInt32(data["valor"].ToString()); break; case 3: valor.valorDecimal = Convert.ToDecimal(data["valor"].ToString()); break; case 4: valor.valorEntero = data["valor"].ToString() == "true" ? 1 : 0; break; case 5: valor.valorTiempo = Convert.ToDateTime(data["valor_f"].ToString()); break; } resultado = (resultado && SubproductoPropiedadValorDAO.guardarSubproductoPropiedadValor(valor)); } } } return(Ok(new { /*success = resultado, * subproducto.id, * subproducto.usuarioCreo, * subproducto.fechaCreacion, * subproducto.usuarioActualizo, * subproducto.fechaActualizacion*/ success = resultado, id = subproducto.id, usuarioCreo = subproducto.usuarioCreo, usuarioActualizo = subproducto.usuarioActualizo, fechaCreacion = subproducto.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"), fechaActualizacion = subproducto.fechaActualizacion != null ? subproducto.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null })); } else { return(Ok(new { success = false })); } //borrar } // borrar else // borrar { // borrar return Ok(new { success = false }); // borrar} } catch (Exception e) { CLogger.write("2", "SubproductoController.class", e); return(BadRequest(500)); } }