Пример #1
0
        public IActionResult UnidadEjecutora([FromBody] dynamic value)
        {
            try
            {
                UnidadEjecutoraValidator validator = new UnidadEjecutoraValidator();
                ValidationResult         results   = validator.Validate(value);

                if (results.IsValid)
                {
                    int    ejercicio = value.ejercicio;
                    int    entidad   = value.entidad;
                    int    id        = value.unidadEjecutora;
                    string nombre    = value.nombre;

                    bool guardado = UnidadEjecutoraDAO.guardar(entidad, ejercicio, id, nombre);
                    return(Ok(new { success = guardado }));
                }
                else
                {
                    return(Ok(new { success = false }));
                }
            }
            catch (Exception e)
            {
                CLogger.write("2", "UnidadEjecutoraController.class", e);
                return(BadRequest(500));
            }
        }
Пример #2
0
        public IActionResult ColaboradorPorId(int id)
        {
            try
            {
                AsignacionRaci asignacion = AsignacionRaciDAO.getAsignacionPorRolTarea(id, 5, "r", null);
                asignacion.colaboradors = ColaboradorDAO.getColaborador(asignacion.colaboradorid);

                if (asignacion != null && asignacion.colaboradors != null)
                {
                    stcolaborador temp = new stcolaborador();
                    temp.id        = asignacion.colaboradors.id;
                    temp.pnombre   = asignacion.colaboradors.pnombre;
                    temp.snombre   = asignacion.colaboradors.snombre;
                    temp.papellido = asignacion.colaboradors.papellido;
                    temp.sapellido = asignacion.colaboradors.sapellido;
                    temp.cui       = asignacion.colaboradors.cui;
                    temp.usuario   = asignacion.colaboradors.usuariousuario;

                    asignacion.colaboradors.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(asignacion.colaboradors.ejercicio, asignacion.colaboradors.entidad ?? default(int), asignacion.colaboradors.ueunidadEjecutora);

                    temp.ueunidadEjecutora     = asignacion.colaboradors.unidadEjecutoras != null ? asignacion.colaboradors.unidadEjecutoras.unidadEjecutora : default(int);
                    temp.unidadejecutoranombre = asignacion.colaboradors.unidadEjecutoras != null ? asignacion.colaboradors.unidadEjecutoras.nombre : null;
                    temp.ueunidadEjecutora     = asignacion.colaboradors.unidadEjecutoras.unidadEjecutora;
                    temp.entidad = asignacion.colaboradors.unidadEjecutoras != null ? asignacion.colaboradors.unidadEjecutoras.entidadentidad : default(int);

                    asignacion.colaboradors.unidadEjecutoras.entidads = EntidadDAO.getEntidad(asignacion.colaboradors.unidadEjecutoras.entidadentidad, asignacion.colaboradors.unidadEjecutoras.ejercicio);

                    temp.entidadnombre = asignacion.colaboradors.unidadEjecutoras.entidads != null ? asignacion.colaboradors.unidadEjecutoras.entidads.nombre : null;
                    temp.ejercicio     = asignacion.colaboradors.unidadEjecutoras != null ? asignacion.colaboradors.unidadEjecutoras.ejercicio : default(int);

                    temp.usuarioCreo        = asignacion.colaboradors.usuarioCreo;
                    temp.usuarioActualizo   = asignacion.colaboradors.usuarioActualizo;
                    temp.fechaCreacion      = asignacion.colaboradors.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss");
                    temp.fechaActualizacion = asignacion.colaboradors.fechaActualizacion != null?asignacion.colaboradors.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.nombreCompleto = String.Join(" ", temp.pnombre,
                                                      temp.snombre != null ? temp.snombre : "",
                                                      temp.papellido != null ? temp.papellido : "",
                                                      temp.sapellido != null ? temp.sapellido : "");

                    return(Ok(new { success = true, colaborador = temp }));
                }
                else
                {
                    return(Ok(new { success = false }));
                }
            }
            catch (Exception e)
            {
                CLogger.write("7", "ColaboradorController.class", e);
                return(BadRequest(500));
            }
        }
Пример #3
0
        public IActionResult TotalElementos([FromBody] dynamic value)
        {
            try
            {
                int    ejercicio       = value.ejercicio != null ? (int)value.ejercicio : default(int);
                int    entidad         = value.entidad != null ? (int)value.entidad : default(int);
                string filtro_busqueda = value.filtro_busqueda != null ? (string)value.filtro_busqueda : null;

                long total = UnidadEjecutoraDAO.getTotal(ejercicio, entidad, filtro_busqueda);
                return(Ok(new { success = true, total = total }));
            }
            catch (Exception e)
            {
                CLogger.write("4", "UnidadEjecutoraController.class", e);
                return(BadRequest(500));
            }
        }
Пример #4
0
        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));
            }
        }
Пример #6
0
        public IActionResult UnidadEjecutoras([FromBody] dynamic value)
        {
            try
            {
                int    pagina          = value.pagina != null ? (int)value.pagina : default(int);
                int    registros       = value.registros != null ? (int)value.registros : default(int);
                int    ejercicio       = value.ejercicio != null ? (int)value.ejercicio : default(int);
                int    ventidad        = value.entidad != null ? (int)value.entidad : default(int);
                string filtro_busqueda = value.filtro_busqueda != null ? (string)value.filtro_busqueda : null;

                List <UnidadEjecutora> lstunidadejecutora = UnidadEjecutoraDAO.getPagina(pagina, registros, ejercicio, ventidad, filtro_busqueda);

                if (lstunidadejecutora != null)
                {
                    List <EstructuraEntidad> lstEstructuraEntidad = new List <EstructuraEntidad>();
                    foreach (UnidadEjecutora unidadEjecutora in lstunidadejecutora)
                    {
                        EstructuraEntidad estructuraEntidad = new EstructuraEntidad();
                        estructuraEntidad.entidad   = unidadEjecutora.entidadentidad;
                        estructuraEntidad.ejercicio = unidadEjecutora.ejercicio;
                        estructuraEntidad.nombre    = unidadEjecutora.nombre;
                        Entidad entidad = EntidadDAO.getEntidad(unidadEjecutora.entidadentidad, unidadEjecutora.ejercicio);
                        estructuraEntidad.abreviatura     = entidad.abreviatura;
                        estructuraEntidad.unidadEjecutora = unidadEjecutora.unidadEjecutora;
                        lstEstructuraEntidad.Add(estructuraEntidad);
                    }

                    return(Ok(new { success = true, unidadesEjecutoras = lstEstructuraEntidad }));
                }
                else
                {
                    return(Ok(new { success = false }));
                }
            }
            catch (Exception e)
            {
                CLogger.write("1", "UnidadEjecutoraController.class", e);
                return(BadRequest(500));
            }
        }
Пример #7
0
        public IActionResult ComponentesPaginaPorProyecto([FromBody] dynamic value)
        {
            try
            {
                int    pagina            = value.pagina != null ? (int)value.pagina : 1;
                int    numeroComponentes = value.numeroCooperantes != null ? (int)value.numeroCooperantes : 20;
                string filtro_busqueda   = value.filtro_busqueda != null ? (string)value.filtro_busqueda : null;
                int    proyectoId        = value.proyectoId != null ? (int)value.proyectoId : default(int);
                string columna_ordenada  = value.columna_ordenada != null ? (string)value.columna_ordenada : null;
                string orden_direccion   = value.orden_direccion != null ? (string)value.orden_direccion : null;
                bool   esDeSigade        = false;

                List <Componente> componentes = ComponenteDAO.getComponentesPaginaPorProyecto(pagina, numeroComponentes, proyectoId
                                                                                              , filtro_busqueda, columna_ordenada, orden_direccion, User.Identity.Name);

                List <Stcomponente> stcomponentes = new List <Stcomponente>();
                foreach (Componente componente in componentes)
                {
                    Stcomponente temp = new Stcomponente();
                    temp.descripcion        = componente.descripcion;
                    temp.estado             = componente.estado;
                    temp.fechaActualizacion = componente.fechaActualizacion != null?componente.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaCreacion         = componente.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss");
                    temp.id                    = componente.id;
                    temp.nombre                = componente.nombre;
                    temp.usuarioActualizo      = componente.usuarioActualizo;
                    temp.usuarioCreo           = componente.usuarioCreo;
                    temp.componenteTipoid      = componente.componenteTipoid;
                    componente.componenteTipos = ComponenteTipoDAO.getComponenteTipoPorId(componente.componenteTipoid);

                    temp.componentetiponombre = componente.componenteTipos.nombre;
                    temp.snip                = componente.snip ?? null;
                    temp.programa            = componente.programa ?? null;
                    temp.subprograma         = componente.subprograma ?? null;
                    temp.proyecto            = componente.proyecto ?? null;
                    temp.obra                = componente.obra ?? null;
                    temp.renglon             = componente.renglon ?? null;
                    temp.ubicacionGeografica = componente.ubicacionGeografica ?? null;
                    temp.actividad           = componente.actividad ?? null;

                    componente.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(componente.ejercicio, componente.entidad ?? default(int), componente.ueunidadEjecutora);

                    if (componente.unidadEjecutoras != null)
                    {
                        temp.ueunidadEjecutora = componente.ueunidadEjecutora;
                        temp.ejercicio         = componente.ejercicio;
                        temp.entidad           = componente.entidad ?? default(int);
                        componente.unidadEjecutoras.entidads = EntidadDAO.getEntidad(componente.entidad ?? default(int), componente.ejercicio);
                        temp.unidadejecutoranombre           = componente.unidadEjecutoras.nombre;
                        temp.entidadnombre = componente.unidadEjecutoras.entidads.nombre;
                    }
                    else
                    {
                        Proyecto proyecto = ProyectoDAO.getProyecto(componente.proyectoid);
                        proyecto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(proyecto.ejercicio, proyecto.entidad ?? default(int), proyecto.ueunidadEjecutora);

                        temp.ueunidadEjecutora = proyecto.ueunidadEjecutora;
                        temp.ejercicio         = proyecto.ejercicio;
                        temp.entidad           = proyecto.entidad ?? default(int);

                        proyecto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(proyecto.entidad ?? default(int), proyecto.ejercicio);
                        temp.unidadejecutoranombre         = proyecto.unidadEjecutoras.nombre;
                        temp.entidadnombre = proyecto.unidadEjecutoras.entidads.nombre;
                    }

                    temp.latitud            = componente.latitud;
                    temp.longitud           = componente.longitud;
                    temp.costo              = componente.costo ?? default(decimal);
                    temp.acumulacionCostoid = (int)componente.acumulacionCostoid;

                    componente.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById((int)componente.acumulacionCostoid);

                    temp.acumulacionCostoNombre = componente.acumulacionCostos.nombre;
                    temp.fechaInicio            = componente.fechaInicio != null?componente.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaFin = componente.fechaFin != null?componente.fechaFin.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.duracion          = componente.duracion;
                    temp.duracionDimension = componente.duracionDimension;

                    temp.tieneHijos     = ObjetoDAO.tieneHijos(temp.id, 1);
                    temp.esDeSigade     = componente.esDeSigade ?? default(int);
                    temp.fuentePrestamo = componente.fuentePrestamo ?? default(decimal);
                    temp.fuenteDonacion = componente.fuenteDonacion ?? default(decimal);
                    temp.fuenteNacional = componente.fuenteNacional ?? default(decimal);

                    esDeSigade = temp.esDeSigade == 1 ? true : false;

                    temp.fechaInicioReal = componente.fechaInicioReal != null?componente.fechaInicioReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaFinReal = componente.fechaFinReal != null?componente.fechaFinReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.inversionNueva = componente.inversionNueva;
                    temp.proyectoid     = componente.proyectoid;

                    stcomponentes.Add(temp);
                }

                return(Ok(new { success = true, componentes = stcomponentes, esDeSigade = esDeSigade }));
            }
            catch (Exception e)
            {
                CLogger.write("2", "ComponenteController.class", e);
                return(BadRequest(500));
            }
        }
Пример #8
0
        public IActionResult ComponentePorIdCorto(int id)
        {
            try
            {
                bool         esDeSigade = false;
                Componente   componente = ComponenteDAO.getComponentePorId(id, User.Identity.Name);
                Stcomponente temp       = new Stcomponente();
                temp.descripcion        = componente.descripcion;
                temp.estado             = componente.estado;
                temp.fechaActualizacion = componente.fechaActualizacion != null?componente.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                temp.fechaCreacion         = componente.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss");
                temp.id                    = componente.id;
                temp.nombre                = componente.nombre;
                temp.usuarioActualizo      = componente.usuarioActualizo;
                temp.usuarioCreo           = componente.usuarioCreo;
                temp.componenteTipoid      = componente.componenteTipoid;
                componente.componenteTipos = ComponenteTipoDAO.getComponenteTipoPorId(componente.componenteTipoid);

                temp.componentetiponombre = componente.componenteTipos.nombre;
                temp.snip                = componente.snip != null ? (long)componente.snip : default(long);
                temp.programa            = componente.programa ?? default(int);
                temp.subprograma         = componente.subprograma ?? default(int);
                temp.proyecto            = componente.proyecto ?? default(int);
                temp.obra                = componente.obra ?? default(int);
                temp.renglon             = componente.renglon ?? default(int);
                temp.ubicacionGeografica = componente.ubicacionGeografica ?? default(int);
                temp.actividad           = componente.actividad ?? default(int);

                componente.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(componente.ejercicio, componente.entidad ?? default(int), componente.ueunidadEjecutora);

                if (componente.unidadEjecutoras != null)
                {
                    temp.ueunidadEjecutora = componente.ueunidadEjecutora;
                    temp.ejercicio         = componente.ejercicio;
                    temp.entidad           = componente.entidad ?? default(int);
                    componente.unidadEjecutoras.entidads = EntidadDAO.getEntidad(componente.entidad ?? default(int), componente.ejercicio);
                    temp.unidadejecutoranombre           = componente.unidadEjecutoras.nombre;
                    temp.entidadnombre = componente.unidadEjecutoras.entidads.nombre;
                }
                else
                {
                    Proyecto proyecto = ProyectoDAO.getProyecto(componente.proyectoid);
                    proyecto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(proyecto.ejercicio, proyecto.entidad ?? default(int), proyecto.ueunidadEjecutora);

                    temp.ueunidadEjecutora = proyecto.ueunidadEjecutora;
                    temp.ejercicio         = proyecto.ejercicio;
                    temp.entidad           = proyecto.entidad ?? default(int);

                    proyecto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(proyecto.entidad ?? default(int), proyecto.ejercicio);
                    temp.unidadejecutoranombre         = proyecto.unidadEjecutoras.nombre;
                    temp.entidadnombre = proyecto.unidadEjecutoras.entidads.nombre;
                }

                temp.latitud            = componente.latitud;
                temp.longitud           = componente.longitud;
                temp.costo              = componente.costo ?? default(decimal);
                temp.acumulacionCostoid = (int)componente.acumulacionCostoid;

                componente.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById((int)componente.acumulacionCostoid);

                temp.acumulacionCostoNombre = componente.acumulacionCostos.nombre;
                temp.fechaInicio            = componente.fechaInicio != null?componente.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                temp.fechaFin = componente.fechaFin != null?componente.fechaFin.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                temp.duracion          = componente.duracion;
                temp.duracionDimension = componente.duracionDimension;

                temp.tieneHijos     = ObjetoDAO.tieneHijos(temp.id, 1);
                temp.esDeSigade     = componente.esDeSigade ?? default(int);
                temp.fuentePrestamo = componente.fuentePrestamo ?? default(decimal);
                temp.fuenteDonacion = componente.fuenteDonacion ?? default(decimal);
                temp.fuenteNacional = componente.fuenteNacional ?? default(decimal);

                esDeSigade = temp.esDeSigade == 1 ? true : false;

                temp.fechaInicioReal = componente.fechaInicioReal != null?componente.fechaInicioReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                temp.fechaFinReal = componente.fechaFinReal != null?componente.fechaFinReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                temp.inversionNueva = componente.inversionNueva;
                temp.proyectoid     = componente.proyectoid;

                return(Ok(new { success = true, componente = temp }));
            }
            catch (Exception e)
            {
                CLogger.write("5", "ComponenteController.class", e);
                return(BadRequest(500));
            }
        }
Пример #9
0
        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));
            }
        }
Пример #10
0
        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 SubProductosPaginaPorProducto([FromBody] dynamic value)
        {
            try
            {
                int    pagina             = value.pagina != null ? (int)value.pagina : 1;
                int    productoId         = value.productoid != null ? (int)value.productoid : default(int);
                int    numeroSubProductos = value.numerosubproductos != null ? (int)value.numerosubproductos : 20;
                String filtro_busqueda    = value.filtro_busqueda;
                String columna_ordenada   = value.columna_ordenada;
                String orden_direccion    = value.orden_direccion;

                List <Subproducto> subproductos = SubproductoDAO.getSubProductosPaginaPorProducto(pagina, numeroSubProductos,
                                                                                                  productoId, filtro_busqueda, columna_ordenada, orden_direccion, User.Identity.Name);
                List <Stsubproducto> stsubproductos = new List <Stsubproducto>();
                foreach (Subproducto subproducto in subproductos)
                {
                    Stsubproducto temp = new Stsubproducto();
                    temp.descripcion        = subproducto.descripcion;
                    temp.estado             = subproducto.estado;
                    temp.fechaActualizacion = subproducto.fechaActualizacion != null?subproducto.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaCreacion    = subproducto.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss");
                    temp.id               = subproducto.id;
                    temp.nombre           = subproducto.nombre;
                    temp.usuarioActualizo = subproducto.usuarioActualizo;
                    temp.usuarioCreo      = subproducto.usuarioCreo;

                    subproducto.subproductoTipos = SubproductoTipoDAO.getSubProductoTipoPorId(subproducto.subproductoTipoid);
                    temp.subproductoTipoid       = subproducto.subproductoTipoid;
                    temp.subProductoTipo         = subproducto.subproductoTipos.nombre;

                    temp.snip                = subproducto.snip;
                    temp.programa            = subproducto.programa;
                    temp.subprograma         = subproducto.subprograma;
                    temp.proyecto            = subproducto.proyecto;
                    temp.actividad           = subproducto.actividad;
                    temp.renglon             = subproducto.renglon;
                    temp.ubicacionGeografica = subproducto.ubicacionGeografica;
                    temp.duracion            = subproducto.duracion;
                    temp.duracionDimension   = subproducto.duracionDimension;
                    temp.fechaInicio         = subproducto.fechaInicio != null?subproducto.fechaInicio.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaFin = subproducto.fechaFin != null?subproducto.fechaFin.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.obra = subproducto.obra;

                    subproducto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(subproducto.ejercicio ?? default(int), subproducto.entidad ?? default(int), subproducto.ueunidadEjecutora ?? default(int));
                    if (subproducto.unidadEjecutoras != null)
                    {
                        temp.ueunidadEjecutora = subproducto.ueunidadEjecutora ?? default(int);
                        temp.ejercicio         = subproducto.ejercicio ?? default(int);

                        subproducto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(subproducto.entidad ?? default(int), subproducto.ejercicio ?? default(int));
                        temp.entidadentidad = subproducto.entidad ?? default(int);
                        subproducto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(subproducto.entidad ?? default(int), subproducto.ejercicio ?? default(int));
                        temp.nombreUnidadEjecutora            = subproducto.unidadEjecutoras.nombre;
                        temp.entidadnombre = subproducto.unidadEjecutoras.entidads != null ? subproducto.unidadEjecutoras.entidads.nombre : "SIN ENTIDAD";
                    }
                    else
                    {
                        Producto producto = ProductoDAO.getProducto(subproducto.productoid);
                        producto.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(producto.ejercicio, producto.entidad ?? default(int), producto.ueunidadEjecutora);
                        if (producto.unidadEjecutoras != null)
                        {
                            temp.ueunidadEjecutora = producto.ueunidadEjecutora;
                            temp.ejercicio         = producto.ejercicio;

                            producto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.entidad ?? default(int), producto.ejercicio);
                            temp.entidadentidad = producto.entidad ?? default(int);
                            subproducto.unidadEjecutoras.entidads = EntidadDAO.getEntidad(producto.entidad ?? default(int), producto.ejercicio);
                            temp.nombreUnidadEjecutora            = producto.unidadEjecutoras.nombre;
                            temp.entidadnombre = subproducto.unidadEjecutoras.entidads != null ? subproducto.unidadEjecutoras.entidads.nombre : "SIN ENTIDAD";
                        }
                    }

                    temp.latitud  = subproducto.latitud;
                    temp.longitud = subproducto.longitud;
                    temp.costo    = subproducto.costo ?? default(decimal);

                    subproducto.acumulacionCostos = AcumulacionCostoDAO.getAcumulacionCostoById(Convert.ToInt32(subproducto.acumulacionCostoid));
                    temp.acumulacionCostoid       = Convert.ToInt32(subproducto.acumulacionCostoid);
                    temp.acumulacionCostoNombre   = subproducto.acumulacionCostos.nombre;

                    temp.tieneHijos      = ObjetoDAO.tieneHijos(temp.id, 2);
                    temp.fechaInicioReal = subproducto.fechaInicioReal != null?subproducto.fechaInicioReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.fechaFinReal = subproducto.fechaFinReal != null?subproducto.fechaFinReal.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.inversionNueva = subproducto.inversionNueva;

                    stsubproductos.Add(temp);
                }

                return(Ok(new { success = true, subproductos = stsubproductos }));
            }
            catch (Exception e)
            {
                CLogger.write("7", "SubproductoController.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));
            }
        }
        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));
            }
        }
Пример #14
0
        public IActionResult ColaboradoresPorPagina([FromBody] dynamic value)
        {
            try
            {
                int    pagina           = value.pagina != null ? (int)value.pagina : 1;
                int    registros        = value.registros != null ? (int)value.registros : 20;
                string filtro_busqueda  = value.filtro_busqueda != null ? (string)value.filtro_busqueda : null;
                String columna_ordenada = value.columna_ordenada != null ? (string)value.columna_ordenada : null;
                String orden_direccion  = value.orden_direccion != null ? (string)value.orden_direccion : null;
                String excluir          = value.idResponsables != null ? (string)value.idResponsables : null;

                List <Colaborador> colaboradores = ColaboradorDAO.getPagina(pagina, registros, filtro_busqueda, columna_ordenada, orden_direccion, excluir);

                List <stcolaborador> listaColaborador = new List <stcolaborador>();

                foreach (Colaborador colaborador in colaboradores)
                {
                    stcolaborador temp = new stcolaborador();
                    temp.id        = colaborador.id;
                    temp.pnombre   = colaborador.pnombre;
                    temp.snombre   = colaborador.snombre;
                    temp.papellido = colaborador.papellido;
                    temp.sapellido = colaborador.sapellido;
                    temp.cui       = colaborador.cui;

                    colaborador.usuarios = UsuarioDAO.getUsuario(colaborador.usuariousuario);
                    temp.usuario         = colaborador.usuarios != null ? colaborador.usuarios.usuario : null;

                    colaborador.unidadEjecutoras = UnidadEjecutoraDAO.getUnidadEjecutora(colaborador.ejercicio, colaborador.entidad ?? default(int), colaborador.ueunidadEjecutora);

                    temp.unidadejecutoranombre = colaborador.unidadEjecutoras != null ? colaborador.unidadEjecutoras.nombre : null;
                    temp.ueunidadEjecutora     = colaborador.unidadEjecutoras != null ? colaborador.unidadEjecutoras.unidadEjecutora : default(int);
                    temp.entidad = colaborador.unidadEjecutoras != null ? colaborador.unidadEjecutoras.entidadentidad : default(int);

                    if (colaborador.unidadEjecutoras != null)
                    {
                        colaborador.unidadEjecutoras.entidads = EntidadDAO.getEntidad(colaborador.entidad ?? default(int), colaborador.ejercicio);
                        temp.entidadnombre = colaborador.unidadEjecutoras.entidads != null ? colaborador.unidadEjecutoras.entidads.nombre : null;
                    }

                    temp.ejercicio          = colaborador.unidadEjecutoras != null ? colaborador.unidadEjecutoras.ejercicio : default(int);
                    temp.usuarioCreo        = colaborador.usuarioCreo;
                    temp.usuarioActualizo   = colaborador.usuarioActualizo;
                    temp.fechaCreacion      = colaborador.fechaCreacion.ToString("dd/MM/yyyy H:mm:ss");
                    temp.fechaActualizacion = colaborador.fechaActualizacion != null?colaborador.fechaActualizacion.Value.ToString("dd/MM/yyyy H:mm:ss") : null;

                    temp.nombreCompleto = String.Join(" ", temp.pnombre,
                                                      temp.snombre != null ? temp.snombre : "",
                                                      temp.papellido != null ? temp.papellido : "",
                                                      temp.sapellido != null ? temp.sapellido : "");

                    listaColaborador.Add(temp);
                }

                return(Ok(new { success = true, colaboradores = listaColaborador }));
            }
            catch (Exception e)
            {
                CLogger.write("1", "ColaboradorController.class", e);
                return(BadRequest(500));
            }
        }