public static bool guardarProductoPropiedad(ProductoPropiedad productoPropiedad) { bool ret = false; try { using (DbConnection db = new OracleContext().getConnection()) { int existe = db.ExecuteScalar <int>("SELECT COUNT(*) FROM producto_propiedad WHERE id=:id", new { id = productoPropiedad.id }); if (existe > 0) { int guardado = db.Execute("UPDATE producto_propiedad SET nombre=:nombre, descripcion=:descripcion, usuario_creo=:usuarioCreo, usuario_actualizo=:usuarioActualizo," + " fecha_creacion=:fechaCreacion, fecha_actualizacion=:fechaActualizacion, dato_tipoid=:datoTipoid, estado=:estado WHERE id=:id", productoPropiedad); ret = guardado > 0 ? true : false; } else { int sequenceId = db.ExecuteScalar <int>("SELECT seq_producto_propiedad.nextval FROM DUAL"); productoPropiedad.id = sequenceId; int guardado = db.Execute("INSERT INTO producto_propiedad VALUES (:id, :nombre, :descripcion, :usuarioCreo, :usuarioActualizo, :fechaCreacion, " + ":fechaActualizacion, :datoTipoid, :estado)", productoPropiedad); ret = guardado > 0 ? true : false; } } } catch (Exception e) { CLogger.write("2", "ProductoPropiedadDAO.class", e); } return(ret); }
public IActionResult ProductoPropiedad(int id) { try { ProductoPropiedad productoPropiedad = ProductoPropiedadDAO.getProductoPropiedad(id); productoPropiedad.usuarioActualizo = User.Identity.Name; bool eliminado = ProductoPropiedadDAO.eliminar(productoPropiedad); return(Ok(new { success = eliminado })); } catch (Exception e) { CLogger.write("4", "ProductoPropiedadController.class", e); return(BadRequest(500)); } }
public static bool eliminar(ProductoPropiedad productoPropiedad) { bool ret = false; try { productoPropiedad.estado = 0; productoPropiedad.fechaActualizacion = DateTime.Now; ret = guardarProductoPropiedad(productoPropiedad); } catch (Exception e) { CLogger.write("3", "ProductoPropiedadDAO.class", e); } return(ret); }
public static ProductoPropiedad getProductoPropiedad(int id) { ProductoPropiedad ret = null; try { using (DbConnection db = new OracleContext().getConnection()) { ret = db.QueryFirstOrDefault <ProductoPropiedad>("SELECT * FROM producto_propiedad WHERE id=:id AND estado=1", new { id = id }); } } catch (Exception e) { CLogger.write("1", "ProductoPropiedadDAO.class", e); } return(ret); }
public IActionResult ProductoPropiedad([FromBody] dynamic value) { try { ProductoPropiedadValidator validator = new ProductoPropiedadValidator(); ValidationResult results = validator.Validate(value); if (results.IsValid) { String nombre = value.nombre; String descripcion = value.descripcion; int tipo = value.datoTipoid != null ? (int)value.datoTipoid : default(int); ProductoPropiedad productoPropiedad = new ProductoPropiedad(); productoPropiedad.nombre = nombre; productoPropiedad.descripcion = descripcion; productoPropiedad.datoTipoid = tipo; productoPropiedad.usuarioCreo = User.Identity.Name; productoPropiedad.fechaCreacion = DateTime.Now; productoPropiedad.estado = 1; bool ret = ProductoPropiedadDAO.guardarProductoPropiedad(productoPropiedad); return(Ok(new { success = ret, id = productoPropiedad.id, usuarioCreo = productoPropiedad.usuarioCreo, usuarioActualizo = productoPropiedad.usuarioActualizo, fechaCreacion = productoPropiedad.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"), fechaActualizacion = productoPropiedad.fechaActualizacion != null ? productoPropiedad.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null, })); } else { return(Ok(new { success = false })); } } catch (Exception e) { CLogger.write("2", "ProductoPropiedadController.class", e); return(BadRequest(500)); } }
public IActionResult Producto(int id, [FromBody] dynamic value) { try { ProductoValidator validator = new ProductoValidator(); ValidationResult results = validator.Validate(value); if (results.IsValid) { bool ret = false; Producto producto = ProductoDAO.getProductoPorId(id); producto.nombre = value.nombre; producto.descripcion = value.descripcion; producto.componenteid = value.componenteid; producto.subcomponenteid = value.subcomponenteid; producto.productoTipoid = value.productoTipoid; producto.ueunidadEjecutora = value.ueunidadEjecutora; producto.entidad = value.entidad; producto.ejercicio = value.ejercicio; producto.snip = value.snip; producto.programa = value.programa; producto.subprograma = value.subprograma; producto.proyecto = value.proyecto; producto.obra = value.obra; producto.renglon = value.renglon; producto.ubicacionGeografica = value.ubicacionGeografica; producto.actividad = value.actividad; producto.latitud = value.latitud; producto.longitud = value.longitud; producto.peso = value.peso; producto.costo = value.costo; producto.acumulacionCostoid = value.acumulacionCostoid; producto.fechaInicio = value.fechaInicio; DateTime fechaFin; DateTime.TryParse((string)value.fechaFin, out fechaFin); producto.fechaFin = fechaFin; DateTime fechaInicioReal; DateTime.TryParse((string)value.fechaInicioReal, out fechaInicioReal); producto.fechaInicioReal = fechaInicioReal; DateTime fechaFinReal; DateTime.TryParse((string)value.fechaFinReal, out fechaFinReal); producto.fechaFinReal = fechaFinReal; producto.duracion = value.duracion; producto.duracionDimension = value.duracionDimension; producto.inversionNueva = value.inversionNueva; producto.acumulacionCostoid = value.acumulacionCostoid; producto.usuarioActualizo = User.Identity.Name; producto.fechaActualizacion = DateTime.Now; ret = ProductoDAO.guardarProducto(producto, true); if (ret) { String pagosPlanificados = value.pagosPlanificados; if (!producto.acumulacionCostoid.Equals(2) || pagosPlanificados != null && pagosPlanificados.Length > 0) { List <PagoPlanificado> pagosActuales = PagoPlanificadoDAO.getPagosPlanificadosPorObjeto(producto.id, 3); foreach (PagoPlanificado pagoTemp in pagosActuales) { PagoPlanificadoDAO.eliminarTotalPagoPlanificado(pagoTemp); } } if (producto.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 = producto.id; pagoPlanificado.objetoTipo = 3; pagoPlanificado.usuarioCreo = User.Identity.Name; pagoPlanificado.fechaCreacion = DateTime.Now; pagoPlanificado.estado = 1; ret = ret && PagoPlanificadoDAO.Guardar(pagoPlanificado); } } } if (ret) { List <ProductoPropiedad> productoPropiedades = ProductoPropiedadDAO.getProductoPropiedadesPorTipo(producto.productoTipoid); foreach (ProductoPropiedad productoPropiedad in productoPropiedades) { ProductoPropiedadValor productoPropVal = ProductoPropiedadValorDAO.getValorPorProdcutoYPropiedad(productoPropiedad.id, producto.id); if (productoPropVal != null) { ret = ret && ProductoPropiedadValorDAO.eliminarProductoPropiedadValor(productoPropVal.productoPropiedadid, productoPropVal.productoid); } } 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) { ProductoPropiedad productoPropiedad = ProductoPropiedadDAO.getProductoPropiedad(Convert.ToInt32(data["id"])); ProductoPropiedadValor valor = new ProductoPropiedadValor(); valor.productos = producto; valor.productoid = producto.id; valor.productoPropiedads = productoPropiedad; valor.productoPropiedadid = productoPropiedad.id; valor.usuarioCreo = User.Identity.Name; valor.fechaCreacion = DateTime.Now; switch (productoPropiedad.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; } ret = (ret && ProductoPropiedadValorDAO.guardarProductoPropiedadValor(valor)); } } } return(Ok(new { success = ret, id = producto.id, usuarioCreo = producto.usuarioCreo, usuarioActualizo = producto.usuarioActualizo, fechaCreacion = producto.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"), fechaActualizacion = producto.fechaActualizacion != null ? producto.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null })); } else { return(Ok(new { success = false })); } } catch (Exception e) { CLogger.write("3", "ProductoController.class", e); return(BadRequest(500)); } }