public IActionResult ObtenerProductoPorId(int id) { try { Producto producto = ProductoDAO.getProductoPorId(id, User.Identity.Name); int congelado = 0; int prestamoId = 0; producto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.ejercicio, producto.entidad ?? default(int), producto.ueunidadEjecutora); if (producto.unidadEjecutoras != null) { producto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.entidad ?? default(int), producto.ejercicio); } if (producto != null) { Proyecto proyecto = ProyectoDAO.getProyectobyTreePath(producto.treepath); congelado = proyecto.congelado ?? default(int); prestamoId = proyecto.prestamoid ?? default(int); } return(Ok(new { //success = producto != null ? true : false, id = producto.id, prestamoId = prestamoId, ejercicio = producto.ejercicio, entidad = producto.entidad, entidadNombre = producto.unidadEjecutoras != null ? producto.unidadEjecutoras.entidads.nombre : null, unidadEjecutora = producto.ueunidadEjecutora, unidadEjecutoraNombre = producto.unidadEjecutoras != null ? producto.unidadEjecutoras.nombre : null, //fechaInicio = producto.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss"), fechaInicio = producto.fechaInicio != null ? producto.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null, congelado = congelado, nombre = producto != null ? producto.nombre : "Indefinido", success = true })); } catch (Exception e) { CLogger.write("6", "ProductoController.class", e); return(BadRequest(500)); } }
public IActionResult ComponentePorId(int id) { try { Componente componente = ComponenteDAO.getComponentePorId(id, User.Identity.Name); int congelado = 0; int prestamoid = 0; if (componente != null) { Proyecto proyecto = ProyectoDAO.getProyectobyTreePath(componente.treepath); congelado = proyecto.congelado ?? default(int); prestamoid = proyecto.prestamoid ?? default(int); } componente.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(componente.ejercicio, componente.entidad ?? default(int), componente.ueunidadEjecutora); if (componente.unidadEjecutoras != null) { componente.unidadEjecutoras.entidads = EntidadDAO.getEntidad(componente.entidad ?? default(int), componente.ejercicio); } return(Ok(new { id = componente.id, ejercicio = componente.ejercicio, entidad = componente.entidad, entidadNombre = componente.unidadEjecutoras.entidads.nombre, unidadEjecutora = componente.ueunidadEjecutora, unidadEjecutoraNombre = componente.unidadEjecutoras.nombre, prestamoId = prestamoid, fechaInicio = componente.fechaInicio != null ? componente.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null, congelado = congelado, nombre = componente.nombre, success = true })); } catch (Exception e) { CLogger.write("4", "ComponenteController.class", e); return(BadRequest(500)); } }
public IActionResult ValidacionAsignado([FromBody] dynamic value) { try { DateTime cal = new DateTime(); int ejercicio = cal.Year; Componente objComponente = ComponenteDAO.getComponente((int)value.id); Proyecto objProyecto = ProyectoDAO.getProyectobyTreePath(objComponente.treepath); int entidad = objProyecto.entidad ?? default(int); int programa = value.programa != null ? (int)value.programa : default(int); int subprograma = value.subprograma != null ? (int)value.subprograma : default(int); int proyecto = value.proyecto != null ? (int)value.proyecto : default(int); int actividad = value.actividad != null ? (int)value.actividad : default(int); int obra = value.obra != null ? (int)value.obra : default(int); int renglon = value.renglon != null ? (int)value.renglon : default(int); int geografico = value.geografico != null ? (int)value.geografico : default(int); decimal asignado = ObjetoDAO.getAsignadoPorLineaPresupuestaria(ejercicio, entidad, programa, subprograma, proyecto, actividad, obra, renglon, geografico); decimal planificado = decimal.Zero; switch (objComponente.acumulacionCostoid) { case 1: cal = objComponente.fechaInicio ?? default(DateTime); int ejercicioInicial = cal.Year; if (ejercicio.Equals(ejercicioInicial)) { planificado = objComponente.costo ?? default(decimal); } break; case 2: List <PagoPlanificado> lstPagos = PagoPlanificadoDAO.getPagosPlanificadosPorObjeto(objComponente.id, 1); foreach (PagoPlanificado pago in lstPagos) { cal = pago.fechaPago; int ejercicioPago = cal.Year; if (ejercicio.Equals(ejercicioPago)) { planificado += pago.pago; } } break; case 3: cal = objComponente.fechaFin ?? default(DateTime); int ejercicioFinal = cal.Year; if (ejercicio.Equals(ejercicioFinal)) { planificado += objComponente.costo ?? default(decimal); } break; } bool sobrepaso = false; if ((asignado = (asignado - planificado)).CompareTo(decimal.Zero) == -1) { sobrepaso = true; } return(Ok(new { success = true, asignado = asignado, sobrepaso = sobrepaso })); } catch (Exception e) { CLogger.write("9", "ComponenteController.class", e); return(BadRequest(500)); } }
public IActionResult ProductoPagina([FromBody] dynamic value) { try { int componenteid = value.componenteid != null ? (int)value.componenteid : 0; int subcomponenteid = value.subcomponenteid != null ? (int)value.subcomponenteid : 0; int pagina = value.pagina != null ? (int)value.pagina : 1; int registros = value.registros != null ? value.registros : 20; String filtro_busqueda = (string)value.filtro_busqueda; String columna_ordenada = (string)value.columna_ordenada; String orden_direccion = (string)value.orden_direccion; List <Producto> productos = ProductoDAO.getProductosPagina(pagina, registros, componenteid, subcomponenteid, filtro_busqueda, columna_ordenada, orden_direccion, User.Identity.Name); List <Stproducto> listaProducto = new List <Stproducto>(); String fechaElegibilidad = null; String fechaCierre = null; if (productos != null && productos.Count > 0) { Proyecto proyecto = ProyectoDAO.getProyectobyTreePath(productos[0].treepath); if (proyecto != null) { fechaElegibilidad = proyecto.fechaElegibilidad != null?proyecto.fechaElegibilidad.Value.ToString("dd/MM/yyyy H:mm:ss") : null; fechaCierre = proyecto.fechaCierre != null?proyecto.fechaCierre.Value.ToString("dd/MM/yyyy H:mm:ss") : null; } } foreach (Producto producto in productos) { Stproducto temp = new Stproducto(); temp.id = producto.id; temp.nombre = producto.nombre; temp.descripcion = producto.descripcion; temp.programa = producto.programa; temp.subprograma = producto.subprograma; temp.proyecto = producto.proyecto; temp.obra = producto.obra; temp.actividad = producto.actividad; temp.renglon = producto.renglon; temp.ubicacionGeografica = producto.ubicacionGeografica; temp.duracion = producto.duracion; temp.duracionDimension = producto.duracionDimension; temp.fechaInicio = producto.fechaInicio != null?producto.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaFin = producto.fechaFin != null?producto.fechaFin.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.snip = producto.snip; temp.estado = producto.estado ?? default(int); temp.usuarioCreo = producto.usuarioCreo; temp.usuarioActualizo = producto.usuarioActualizo; temp.fechaCreacion = producto.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"); temp.fechaActualizacion = producto.fechaActualizacion != null?producto.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.latitud = producto.latitud; temp.longitud = producto.longitud; temp.peso = producto.peso ?? default(int); temp.costo = producto.costo ?? default(decimal); producto.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById(Convert.ToInt32(producto.acumulacionCostoid)); temp.acumulacionCostoid = Convert.ToInt32(producto.acumulacionCostoid); temp.acumulacionCostoNombre = producto.acumulacionCostos != null ? producto.acumulacionCostos.nombre : null; producto.productoTipos = ProductoTipoDAO.getProductoTipo(producto.productoTipoid); temp.productoTipoid = producto.productoTipoid; temp.productoTipoNombre = producto.productoTipos.nombre; if (producto.componenteid != null) { producto.componentes = ComponenteDAO.getComponentePorId(producto.componenteid ?? default(int), null); temp.componenteid = producto.componenteid ?? default(int); temp.componenteNombre = producto.componentes.nombre; producto.componentes.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.componentes.ejercicio, producto.componentes.entidad ?? default(int), producto.componentes.ueunidadEjecutora); if (producto.componentes.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.componentes.ueunidadEjecutora; temp.entidad = producto.componentes.entidad ?? default(int); temp.ejercicio = producto.componentes.ejercicio; temp.nombreUnidadEjecutora = producto.componentes.unidadEjecutoras.nombre; producto.componentes.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.componentes.entidad ?? default(int), producto.componentes.ejercicio); temp.entidadnombre = producto.componentes.unidadEjecutoras.entidads != null ? producto.componentes.unidadEjecutoras.entidads.nombre : "SIN ENTIDAD"; } } if (producto.subcomponenteid != null) { producto.subcomponentes = SubComponenteDAO.getSubComponentePorId(producto.subcomponenteid ?? default(int), null); temp.subcomponenteid = producto.subcomponenteid ?? default(int); temp.subcomponenteNombre = producto.subcomponentes != null ? producto.subcomponentes.nombre : null; producto.subcomponentes.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.subcomponentes.ejercicio ?? default(int), producto.subcomponentes.entidad ?? default(int), producto.subcomponentes.ueunidadEjecutora ?? default(int)); if (producto.subcomponentes.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.subcomponentes.ueunidadEjecutora ?? default(int); temp.entidad = producto.subcomponentes.entidad ?? default(int); temp.ejercicio = producto.subcomponentes.ejercicio ?? default(int); temp.nombreUnidadEjecutora = producto.subcomponentes.unidadEjecutoras.nombre; producto.subcomponentes.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.subcomponentes.entidad ?? default(int), producto.subcomponentes.ejercicio ?? default(int)); temp.entidadnombre = producto.subcomponentes.unidadEjecutoras.entidads != null ? producto.subcomponentes.unidadEjecutoras.entidads.nombre : "SIN ENTIDAD"; } } producto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.ejercicio, producto.entidad ?? default(int), producto.ueunidadEjecutora); if (producto.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.ueunidadEjecutora; temp.entidad = producto.entidad ?? default(int); temp.ejercicio = producto.ejercicio; temp.nombreUnidadEjecutora = producto.unidadEjecutoras.nombre; producto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.entidad ?? default(int), producto.ejercicio); temp.entidadnombre = producto.unidadEjecutoras.entidads != null ? producto.unidadEjecutoras.entidads.nombre : "SIN ENTIDAD"; } temp.tieneHijos = ObjetoDAO.tieneHijos(temp.id, 3); temp.fechaInicioReal = producto.fechaInicioReal != null?producto.fechaInicioReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaFinReal = producto.fechaFinReal != null?producto.fechaFinReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaElegibilidad = fechaElegibilidad; temp.fechaCierre = fechaCierre; temp.inversionNueva = producto.inversionNueva ?? default(int); listaProducto.Add(temp); } return(Ok(new { success = true, productos = listaProducto })); } catch (Exception e) { CLogger.write("1", "ProductoController.class", e); return(BadRequest(500)); } }
public IActionResult ProductoPorId(int id) { try { Producto producto = ProductoDAO.getProductoPorId(id, User.Identity.Name); Stproducto temp = new Stproducto(); temp.id = producto.id; temp.nombre = producto.nombre; temp.descripcion = producto.descripcion; temp.programa = producto.programa; temp.subprograma = producto.subprograma; temp.proyecto = producto.proyecto; temp.obra = producto.obra; temp.actividad = producto.actividad; temp.renglon = producto.renglon; temp.ubicacionGeografica = producto.ubicacionGeografica; temp.duracion = producto.duracion; temp.duracionDimension = producto.duracionDimension; temp.fechaInicio = producto.fechaInicio != null?producto.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaFin = producto.fechaFin != null?producto.fechaFin.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.snip = producto.snip; temp.estado = producto.estado ?? default(int); temp.usuarioCreo = producto.usuarioCreo; temp.usuarioActualizo = producto.usuarioActualizo; temp.fechaCreacion = producto.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss"); temp.fechaActualizacion = producto.fechaActualizacion != null?producto.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.latitud = producto.latitud; temp.longitud = producto.longitud; temp.peso = producto.peso ?? default(int); temp.costo = producto.costo ?? default(decimal); producto.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById(Convert.ToInt32(producto.acumulacionCostoid)); temp.acumulacionCostoid = Convert.ToInt32(producto.acumulacionCostoid); temp.acumulacionCostoNombre = producto.acumulacionCostos != null ? producto.acumulacionCostos.nombre : null; producto.productoTipos = ProductoTipoDAO.getProductoTipo(producto.productoTipoid); temp.productoTipoid = producto.productoTipoid; temp.productoTipoNombre = producto.productoTipos.nombre; if (producto.componenteid != null) { producto.componentes = ComponenteDAO.getComponentePorId(producto.componenteid ?? default(int), null); temp.componenteid = producto.componenteid ?? default(int); temp.componenteNombre = producto.componentes.nombre; producto.componentes.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.componentes.ejercicio, producto.componentes.entidad ?? default(int), producto.componentes.ueunidadEjecutora); if (producto.componentes.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.componentes.ueunidadEjecutora; temp.entidad = producto.componentes.entidad ?? default(int); temp.ejercicio = producto.componentes.ejercicio; temp.nombreUnidadEjecutora = producto.componentes.unidadEjecutoras.nombre; producto.componentes.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.componentes.entidad ?? default(int), producto.componentes.ejercicio); temp.entidadnombre = producto.componentes.unidadEjecutoras.entidads.nombre; } } if (producto.subcomponenteid != null) { producto.subcomponentes = SubComponenteDAO.getSubComponentePorId(producto.subcomponenteid ?? default(int), null); temp.subcomponenteid = producto.subcomponenteid ?? default(int); temp.subcomponenteNombre = producto.subcomponentes != null ? producto.subcomponentes.nombre : null; producto.subcomponentes.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.subcomponentes.ejercicio ?? default(int), producto.subcomponentes.entidad ?? default(int), producto.subcomponentes.ueunidadEjecutora ?? default(int)); if (producto.subcomponentes.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.subcomponentes.ueunidadEjecutora ?? default(int); temp.entidad = producto.subcomponentes.entidad ?? default(int); temp.ejercicio = producto.subcomponentes.ejercicio ?? default(int); temp.nombreUnidadEjecutora = producto.subcomponentes.unidadEjecutoras.nombre; producto.subcomponentes.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.subcomponentes.entidad ?? default(int), producto.subcomponentes.ejercicio ?? default(int)); temp.entidadnombre = producto.subcomponentes.unidadEjecutoras.entidads.nombre; } } producto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.ejercicio, producto.entidad ?? default(int), producto.ueunidadEjecutora); if (producto.unidadEjecutoras != null) { temp.ueunidadEjecutora = producto.ueunidadEjecutora; temp.entidad = producto.entidad ?? default(int); temp.ejercicio = producto.ejercicio; temp.nombreUnidadEjecutora = producto.unidadEjecutoras.nombre; producto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.entidad ?? default(int), producto.ejercicio); temp.entidadnombre = producto.unidadEjecutoras.entidads.nombre; } temp.tieneHijos = ObjetoDAO.tieneHijos(temp.id, 3); temp.fechaInicioReal = producto.fechaInicioReal != null?producto.fechaInicioReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaFinReal = producto.fechaFinReal != null?producto.fechaFinReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null; Proyecto proyecto = ProyectoDAO.getProyectobyTreePath(producto.treepath); temp.fechaElegibilidad = proyecto.fechaElegibilidad != null?proyecto.fechaElegibilidad.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.fechaCierre = proyecto.fechaCierre != null?proyecto.fechaCierre.Value.ToString("dd/MM/yyyy H:mm:ss") : null; temp.inversionNueva = producto.inversionNueva ?? default(int); return(Ok(new { success = true, producto = temp })); } catch (Exception e) { CLogger.write("7", "ProductoController.class", e); return(BadRequest(500)); } }
public IActionResult SubproductoPorId(int id) { try { Subproducto subproducto = SubproductoDAO.getSubproductoPorId(id); if (subproducto != null) { Stsubproducto temp = new Stsubproducto(); temp.id = subproducto.id; temp.nombre = subproducto.nombre; temp.descripcion = subproducto.descripcion; temp.usuarioCreo = subproducto.usuarioCreo; temp.usuarioActualizo = subproducto.usuarioActualizo; temp.fechaCreacion = Utils.ConvierteAFormatoFecha(subproducto.fechaCreacion); temp.fechaActualizacion = Utils.ConvierteAFormatoFecha(subproducto.fechaActualizacion); temp.estado = subproducto.estado; temp.snip = subproducto.snip; temp.programa = subproducto.programa; temp.subprograma = subproducto.subprograma; temp.proyecto = subproducto.proyecto; temp.actividad = subproducto.actividad; temp.obra = subproducto.obra; temp.renglon = subproducto.renglon; temp.ubicacionGeografica = subproducto.ubicacionGeografica; temp.latitud = subproducto.latitud; temp.longitud = subproducto.longitud; temp.fechaInicio = Utils.ConvierteAFormatoFecha(subproducto.fechaInicio); temp.fechaFin = Utils.ConvierteAFormatoFecha(subproducto.fechaFin); temp.duracion = subproducto.duracion; temp.duracionDimension = subproducto.duracionDimension; temp.costo = subproducto.costo ?? default(decimal); subproducto.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById(subproducto.acumulacionCostoid); temp.acumulacionCostoid = subproducto.acumulacionCostoid; temp.acumulacionCostoNombre = subproducto.acumulacionCostos.nombre; temp.productoid = subproducto.productoid; //subproducto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(subproducto.ejercicio, subproducto.entidad ?? default(int), subproducto.ueunidadEjecutora); subproducto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(subproducto.ejercicio ?? default(int), subproducto.entidad ?? default(int), subproducto.ueunidadEjecutora ?? default(int)); if (subproducto.unidadEjecutoras != null) { //subproducto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(subproducto.entidad ?? default(int), subproducto.ejercicio); subproducto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(subproducto.entidad ?? default(int), subproducto.ejercicio ?? default(int)); temp.entidadnombre = subproducto.unidadEjecutoras.entidads.nombre; temp.nombreUnidadEjecutora = subproducto.unidadEjecutoras.nombre; temp.entidadentidad = subproducto.unidadEjecutoras.entidadentidad; } //temp.ejercicio = subproducto.ejercicio; temp.ejercicio = subproducto.ejercicio ?? default(int); subproducto.subproductoTipos = SubproductoTipoDAO.getSubproductoTipo(subproducto.subproductoTipoid); if (subproducto.subproductoTipos != null) { temp.subproductoTipoid = subproducto.subproductoTipoid; temp.subProductoTipo = subproducto.subproductoTipos.nombre; } temp.tieneHijos = ObjetoDAO.tieneHijos(temp.id, 4); temp.fechaInicioReal = Utils.ConvierteAFormatoFecha(subproducto.fechaInicioReal); temp.fechaFinReal = Utils.ConvierteAFormatoFecha(subproducto.fechaFinReal); subproducto.productos = ProductoDAO.getProductoPorId(subproducto.productoid); Proyecto proyecto = ProyectoDAO.getProyectobyTreePath(subproducto.productos.treepath); temp.congelado = proyecto.congelado != null ? proyecto.congelado : 0; temp.fechaElegibilidad = Utils.ConvierteAFormatoFecha(proyecto.fechaElegibilidad); temp.fechaCierre = Utils.ConvierteAFormatoFecha(proyecto.fechaCierre); temp.inversionNueva = subproducto.inversionNueva; return(Ok(new { success = true, subproducto = temp })); } else { return(Ok(new { success = false })); } } catch (Exception e) { CLogger.write("7", "SubproductoController.class", e); return(BadRequest(500)); } }