/// <summary>
        /// Borra un requerimiento de un plan de negocio
        /// </summary>
        /// <param name="idRequerimiento">Identificador primario del requerimiento</param>
        /// <returns>Verdadero si la operación de borrado es exitosa. Falso en otro caso</returns>
        public static bool delRequerimiento(int idRequerimiento)
        {
            bool operacionOk = true;

            try
            {
                using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
                {
                    var reg = (from datos in db.ProyectoInfraestructuras
                               where datos.Id_ProyectoInfraestructura == idRequerimiento
                               select datos).SingleOrDefault();

                    db.ProyectoInfraestructuras.DeleteOnSubmit(reg);

                    db.SubmitChanges();

                    //Se calculan los registros de la tabla ProyectoInversion
                    CalcularProyeccionesInversion(reg.codProyecto);
                }
            }
            catch
            {
                operacionOk = false;
            }

            return(operacionOk);
        }
Beispiel #2
0
        protected Riesgo getRiesgo(int idRiesgoTmp)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entity = (from riesgoTmp in db.InterventorRiesgoTMP
                              where riesgoTmp.IdTmp.Equals(idRiesgoTmp)
                              select new Riesgo
                {
                    Id = riesgoTmp.Id_Riesgo,
                    Riesgos = riesgoTmp.Riesgo,
                    CodigoEjeFuncional = riesgoTmp.CodEjeFuncional.GetValueOrDefault(2),
                    Mitigacion = riesgoTmp.Mitigacion,
                    Observacion = riesgoTmp.Observacion,
                    CodigoProyecto = riesgoTmp.CodProyecto,
                    Tarea = riesgoTmp.Tarea,
                    AprobadoCoordinador = riesgoTmp.ChequeoCoordinador.GetValueOrDefault(false),
                    AprobadoGerente = riesgoTmp.ChequeoGerente.GetValueOrDefault(false),
                }).SingleOrDefault();

                if (entity == null)
                {
                    throw new ApplicationException("No se encontro la información de este riesgo.");
                }

                return(entity);
            }
        }
        protected void CargarGastosAnuales()
        {
            using (Datos.FonadeDBDataContext consultas = new Datos.FonadeDBDataContext(cadenaConexion))
            {
                var query = (from p in consultas.ProyectoGastos
                             where p.Tipo == "Anual" &&
                             p.CodProyecto == Convert.ToInt32(this.CodigoProyecto)
                             orderby p.Descripcion ascending
                             select new { p.Id_Gasto, p.Descripcion, p.Valor, p.Protegido });

                decimal valores = 0;
                foreach (var result in query)
                {
                    valores += result.Valor;
                }

                var query2 = (from q1 in query
                              select new
                {
                    q1.Id_Gasto,
                    q1.Descripcion,
                    Valor = q1.Valor.ToString("0,0.00", CultureInfo.InvariantCulture),
                    q1.Protegido
                });

                TotalGastosAnuales          = valores.ToString("$ 0,0.00", CultureInfo.InvariantCulture);
                gw_GastosAnuales.DataSource = query2;
                gw_GastosAnuales.DataBind();
            }
        }
Beispiel #4
0
 /// <summary>
 /// Verifica si existe un proyecto
 /// </summary>
 public static Boolean ProyectoExist(int codigoProyecto)
 {
     using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
     {
         return(db.Proyecto.Any(filter => filter.Id_Proyecto.Equals(codigoProyecto)));
     }
 }
        /// <summary>
        /// Listado de proyectos acta
        /// </summary>
        public List <ProyectoActa> getProyectosActa(int idActa)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                //Consulta para obtener los proyectos
                var entities = (from actas in db.AsignacionActas
                                join proyectosActa in db.AsignacionActaProyecto on actas.Id_Acta equals proyectosActa.CodActa
                                join evaluacionObservacion in db.EvaluacionObservacions on proyectosActa.CodProyecto equals evaluacionObservacion.CodProyecto
                                join convocatoria in db.Convocatoria on actas.CodConvocatoria equals convocatoria.Id_Convocatoria
                                join salarios in db.SalariosMinimos on convocatoria.FechaFin.Year equals salarios.AñoSalario
                                join proyecto in db.Proyecto on proyectosActa.CodProyecto equals proyecto.Id_Proyecto
                                where actas.Id_Acta == idActa
                                select new ProyectoActa
                {
                    Codigo = evaluacionObservacion.CodProyecto,
                    Nombre = proyecto.NomProyecto,
                    NombreConvocatoria = convocatoria.NomConvocatoria,
                    ValorRecomendado = evaluacionObservacion.ValorRecomendado.GetValueOrDefault(0),
                    Asignado = proyectosActa.Asignado.GetValueOrDefault(false),
                    SalarioMinimo = salarios.SalarioMinimo,
                    Anio = salarios.AñoSalario
                }).ToList();

                return(entities);
            }
        }
Beispiel #6
0
        public static void InsertActaContrato(int codigoProyecto, string fileName, int idContacto)
        {
            string _nombreArchivo = Path.GetFileName(fileName);

            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var currentActa = db.ContratosArchivosAnexos
                                  .FirstOrDefault
                                      (filter =>
                                      filter.CodProyecto == codigoProyecto &&
                                      filter.NombreArchivo.Contains(_nombreArchivo)
                                      );
                if (currentActa != null)
                {
                    currentActa.NombreArchivo = fileName;
                    currentActa.FechaIngreso  = DateTime.Now;
                    db.SubmitChanges();
                }
                else
                {
                    var archivoContrato = new ContratosArchivosAnexo
                    {
                        CodProyecto   = codigoProyecto,
                        NombreArchivo = Path.GetFileName(fileName),
                        ruta          = fileName,
                        CodContacto   = idContacto,
                        FechaIngreso  = DateTime.Now
                    };
                    db.ContratosArchivosAnexos.InsertOnSubmit(archivoContrato);
                    db.SubmitChanges();
                }
            }
        }
        /// <summary>
        /// Metodo para obtener los pagos
        /// </summary>
        /// <param name="codigoActa"> Codigo de acta </param>
        /// <param name="fechaActa"> Fecha del acta</param>
        /// <param name="directorioArchivosFiduciaria"> Directorio donde se guardaran los archivos </param>
        /// <returns></returns>
        protected List <Pago> getPagos(Int64?codigoActa, string fechaActa, string directorioArchivosFiduciaria)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var solicitudesPagos = (from solicitudPago in db.PagosActaSolicitudPagos
                                        where solicitudPago.CodPagosActaSolicitudes == codigoActa &&
                                        solicitudPago.Aprobado == true
                                        select solicitudPago.CodPagoActividad).ToList();

                //Consulta para obtener los pagos
                var pagos = (from pagoActividad in db.PagoActividad
                             join pagoConcepto in db.PagoConcepto on pagoActividad.CodPagoConcepto equals pagoConcepto.Id_PagoConcepto
                             where solicitudesPagos.Contains(pagoActividad.Id_PagoActividad)
                             select new Pago(
                                 pagoActividad.Id_PagoActividad,
                                 pagoConcepto.CodigoPagoConcepto,
                                 pagoActividad.CodProyecto,
                                 pagoActividad.CodPagoBeneficiario,
                                 pagoActividad.CantidadDinero,
                                 codigoActa,
                                 fechaActa,
                                 directorioArchivosFiduciaria
                                 )
                             ).ToList();
                return(pagos);
            }
        }
        private void priorizarProyectos(List <ProyectoPorPriorizar> proyectos, Datos.AsignacionActa actaDePriorizacion)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                foreach (var proyectoParaPriorizar in proyectos)
                {
                    var proyecto = (from p in db.Proyecto where p.Id_Proyecto == proyectoParaPriorizar.Codigo select p).FirstOrDefault();

                    if (proyectoParaPriorizar.Priorizado)
                    {
                        proyecto.CodEstado = Constantes.CONST_LegalizacionContrato;
                    }

                    var asignacionActaProyecto = new Datos.AsignacionActaProyecto
                    {
                        CodActa     = actaDePriorizacion.Id_Acta,
                        CodProyecto = proyectoParaPriorizar.Codigo,
                        Asignado    = proyectoParaPriorizar.Priorizado
                    };

                    db.AsignacionActaProyecto.InsertOnSubmit(asignacionActaProyecto);
                    db.SubmitChanges();
                }
            }
        }
Beispiel #9
0
        public static void AsignarInterventorEmpresa(int idInterventor, int idEmpresa, int?idContrato)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entities = db.EmpresaInterventors.Where(filter => filter.CodEmpresa == idEmpresa &&
                                                            filter.FechaFin == null &&
                                                            filter.Inactivo == false
                                                            ).ToList();

                foreach (var entity in entities)
                {
                    entity.FechaFin = DateTime.Now;
                    entity.Inactivo = true;
                    db.SubmitChanges();
                }

                var newEntity = new Datos.EmpresaInterventor
                {
                    CodEmpresa              = idEmpresa,
                    CodContacto             = idInterventor,
                    IdContratoInterventoria = idContrato,
                    FechaInicio             = DateTime.Now,
                    Rol      = Datos.Constantes.CONST_RolInterventorLider,
                    Inactivo = false
                };

                db.EmpresaInterventors.InsertOnSubmit(newEntity);
                db.SubmitChanges();
            }
        }
Beispiel #10
0
        protected Riesgo getRiesgo(int idRiesgo)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entity = (from riesgos in db.InterventorRiesgo
                              join eje in db.EjeFuncional on riesgos.CodEjeFuncional equals eje.Id_EjeFuncional
                              where riesgos.Id_Riesgo.Equals(idRiesgo)
                              select new Riesgo
                {
                    Id = riesgos.Id_Riesgo,
                    Riesgos = riesgos.Riesgo,
                    CodigoEjeFuncional = riesgos.CodEjeFuncional.GetValueOrDefault(2),
                    EjeFuncional = eje.NomEjeFuncional,
                    Mitigacion = riesgos.Mitigacion,
                    Observacion = riesgos.Observacion,
                    CodigoProyecto = riesgos.CodProyecto
                }).SingleOrDefault();

                if (entity == null)
                {
                    throw new ApplicationException("No se encontro la información de este riesgo.");
                }

                return(entity);
            }
        }
        private void eliminarDocumento(int _codDococumento)
        {
            var    idArchivoContacto = _codDococumento;
            string conexion          = System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString;

            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(conexion))
            {
                var entity = db.ContactoArchivosAnexo1s.Single(filter => filter.Id_ContactoArchivosAnexos.Equals(idArchivoContacto));

                using (FonadeDBLightDataContext db2 = new FonadeDBLightDataContext(conexion))
                {
                    LogSoporte log = new LogSoporte
                    {
                        Accion      = "Eliminar",
                        codContacto = usuario.IdContacto,
                        Detalle     = DateTime.Now.ToString() + "Se eliminó el archivo de anexos -> " + entity.CodProyecto + "-" + entity.Descripcion
                    };

                    db2.LogSoporte.InsertOnSubmit(log);
                    db2.SubmitChanges();
                }

                db.ContactoArchivosAnexo1s.DeleteOnSubmit(entity);
                db.SubmitChanges();
            }
        }
Beispiel #12
0
        public static List <Emprendedor> GetEmprendedoresYEquipoTrabajo(int idProyecto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var query = (from con in db.Contacto
                             join proCon in db.ProyectoContactos
                             on con.Id_Contacto equals proCon.CodContacto
                             join rol in db.Rols
                             on proCon.CodRol equals rol.Id_Rol
                             join ciu in db.Ciudad on con.CodCiudad equals ciu.Id_Ciudad into ciudades
                             from ciudadEquipo in ciudades.DefaultIfEmpty()
                             join dep in db.departamento on ciudadEquipo.CodDepartamento equals dep.Id_Departamento into departamentos
                             from departamentoEquipo in departamentos.DefaultIfEmpty()
                             where
                             (rol.Id_Rol == Constantes.CONST_RolAsesor ||
                              rol.Id_Rol == Constantes.CONST_RolAsesorLider ||
                              rol.Id_Rol == Constantes.CONST_RolEmprendedor) &&
                             proCon.CodProyecto == idProyecto &&
                             proCon.FechaFin == null &&
                             proCon.Inactivo.Equals(false)
                             orderby rol.Id_Rol descending
                             select new Emprendedor()
                {
                    Email = con.Email,
                    FechaNac = con.FechaNacimiento,
                    IdContacto = con.Id_Contacto,
                    LugarNac = ciudadEquipo != null ? ciudadEquipo.NomCiudad + " (" + departamentoEquipo.NomDepartamento + ")" : "N/A",
                    Nombre = con.Nombres + " " + con.Apellidos,
                    Rol = rol.Nombre
                }).ToList();

                return(query);
            }
        }
Beispiel #13
0
        public static List <Emprendedor> GetEmprendedores(int idProyecto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var query = (from con in db.Contacto
                             join proCon in db.ProyectoContactos
                             on con.Id_Contacto equals proCon.CodContacto
                             join rol in db.Rols
                             on proCon.CodRol equals rol.Id_Rol
                             join ciu in db.Ciudad
                             on con.CodCiudad equals ciu.Id_Ciudad
                             join dep in db.departamento
                             on ciu.CodDepartamento equals dep.Id_Departamento
                             where rol.Id_Rol == 3 && proCon.CodProyecto == idProyecto &&
                             proCon.Inactivo == false
                             select new Emprendedor()
                {
                    Email = con.Email,
                    FechaNac = con.FechaNacimiento,
                    IdContacto = con.Id_Contacto,
                    LugarNac = ciu.NomCiudad + " (" + dep.NomDepartamento + ")",
                    Nombre = con.Nombres + " " + con.Apellidos,
                    Rol = rol.Nombre
                }).ToList();

                return(query);
            }
        }
        /// <summary>
        /// Obtiene la Lista de infraestructura de un plan de negocio
        /// </summary>
        /// <param name="codigoproyecto">Código del proyecto</param>
        /// <returns>Información consultada</returns>
        public static List <RequerimientosNeg> getRequerimientos(int codigoproyecto, int idversion)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
            {
                var registros = (from infra in db.ProyectoInfraestructuras
                                 join tipoinfra in db.TipoInfraestructuras
                                 on infra.CodTipoInfraestructura equals tipoinfra.Id_TipoInfraestructura into tmp
                                 where infra.codProyecto == codigoproyecto
                                 from datos in tmp
                                 join fuente in db.FuenteFinanciacions
                                 on infra.IdFuente equals fuente.IdFuente into tmp2
                                 where datos.IdVersion == idversion
                                 from datos2 in tmp2
                                 select new RequerimientosNeg
                {
                    Cantidad = infra.Cantidad,
                    CodTipoInfraestructura = datos.Id_TipoInfraestructura,
                    IdProyectoInfraestructura = infra.Id_ProyectoInfraestructura,
                    NomInfraestructura = infra.NomInfraestructura,
                    FuenteFinanciacion = datos2.DescFuente,
                    IdFuente = datos2.IdFuente,
                    RequisitosTecnicos = infra.RequisitosTecnicos,
                    ValorUnidad = infra.ValorUnidad
                }).ToList();

                return(registros != null ? registros : new List <RequerimientosNeg>());
            }
        }
        /// <summary>
        /// Convierte el valor nulo con la expresión por defecto
        /// </summary>
        /// <param name="cad">Cadena a procesar</param>
        /// <returns>Cadena procesada</returns>
        private static string ConvertirNulo(string cad, int codconvocatoria, int codCampo)
        {
            string cadFinal = cad;

            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
            {
                var consulta = (from c in db.ConvocatoriaCampos
                                where c.codConvocatoria == codconvocatoria &&
                                c.codCampo == codCampo
                                select c).Count();

                if (consulta > 0)
                {
                    if (cad == null)
                    {
                        cadFinal = "0";
                    }
                }
                else
                {
                    cadFinal = "N.A";
                }
            }

            return(cadFinal);
        }
Beispiel #16
0
        public static bool InsertarAvance(EvaluacionSeguimientoV2 entity, out string msg)
        {
            try
            {
                using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
                {
                    var entitydb = (from row in db.EvaluacionSeguimientoV2s
                                    where row.IdProyecto == entity.IdProyecto &&
                                    row.IdConvocatoria == entity.IdConvocatoria
                                    select row).FirstOrDefault();

                    //insert-update
                    if (entitydb == null)
                    {
                        db.EvaluacionSeguimientoV2s.InsertOnSubmit(entity);
                    }
                    else
                    {
                        entitydb.Antecedentes = entity.Antecedentes;
                        entitydb.Competencia  = entity.Competencia;
                        entitydb.CondicionesComercializacion = entity.CondicionesComercializacion;
                        entitydb.EquipoTrabajo = entity.EquipoTrabajo;
                        entitydb.EstrategiasComercializacion = entity.EstrategiasComercializacion;
                        entitydb.FechaActualizacion          = entity.FechaActualizacion;
                        entitydb.FuerzaMercado          = entity.FuerzaMercado;
                        entitydb.IdContacto             = entity.IdContacto;
                        entitydb.IdentificacionMercado  = entity.IdentificacionMercado;
                        entitydb.IndicadoresGestion     = entity.IndicadoresGestion;
                        entitydb.IndicadoresSeguimiento = entity.IndicadoresSeguimiento;
                        entitydb.IndiceRentabilidad     = entity.IndiceRentabilidad;
                        entitydb.LecturaPlan            = entity.LecturaPlan;
                        entitydb.Modelo               = entity.Modelo;
                        entitydb.NecesidadClientes    = entity.NecesidadClientes;
                        entitydb.Normatividad         = entity.Normatividad;
                        entitydb.OperacionNegocio     = entity.OperacionNegocio;
                        entitydb.PeriodoImproductivo  = entity.PeriodoImproductivo;
                        entitydb.PlanOperativo        = entity.PlanOperativo;
                        entitydb.PlanOperativo2       = entity.PlanOperativo2;
                        entitydb.PropuestaValor       = entity.PropuestaValor;
                        entitydb.Riesgos              = entity.Riesgos;
                        entitydb.SolicitudInformacion = entity.SolicitudInformacion;
                        entitydb.Sostenibilidad       = entity.Sostenibilidad;
                        entitydb.TendenciasMercado    = entity.TendenciasMercado;
                        entitydb.ValidacionMercado    = entity.ValidacionMercado;
                        entitydb.Viabilidad           = entity.Viabilidad;
                        entitydb.InformeEvaluacion    = entity.InformeEvaluacion;
                    }
                    db.SubmitChanges();

                    msg = Mensajes.Mensajes.GetMensaje(8);
                    return(true);
                }
            }
            catch (Exception ex)
            {
                //todo guardar log
                msg = Mensajes.Mensajes.GetMensaje(7);
                return(false);
            }
        }
Beispiel #17
0
        public static List <EmprendedorDTO> GetEmprendedoresYEquipoTrabajo(int idProyecto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var query = (from con in db.Contacto
                             join proCon in db.ProyectoContactos
                             on con.Id_Contacto equals proCon.CodContacto
                             join rol in db.Rols
                             on proCon.CodRol equals rol.Id_Rol
                             join ciu in db.Ciudad on con.CodCiudad equals ciu.Id_Ciudad into ciudades
                             from ciudadEquipo in ciudades.DefaultIfEmpty()
                             join dep in db.departamento on ciudadEquipo.CodDepartamento equals dep.Id_Departamento into departamentos
                             from departamentoEquipo in departamentos.DefaultIfEmpty()
                             where
                             (rol.Id_Rol == Constantes.CONST_RolEmprendedor) &&
                             proCon.CodProyecto == idProyecto &&
                             proCon.FechaFin == null &&
                             proCon.Inactivo.Equals(false)
                             orderby rol.Id_Rol descending
                             select new EmprendedorDTO()
                {
                    Identificacion = con.Identificacion,
                    Nombres = con.Nombres + " " + con.Apellidos,
                    Telefono = con.Telefono,
                    Email = con.Email
                }).ToList();

                return(query);
            }
        }
Beispiel #18
0
        public static List <ReintegroDTO> GetPagosByPagoId(int?codOperadorUsuario, int codigoPago)
        {
            List <ReintegroDTO> reintegros = new List <ReintegroDTO>();

            OperadorController operadorController = new OperadorController();

            //traer el codoperador del proyecto
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                int codProyecto = (from pagos in db.PagoActividad
                                   where pagos.Id_PagoActividad == codigoPago &&
                                   pagos.Estado == Constantes.CONST_EstadoAprobadoFA
                                   select pagos.CodProyecto).FirstOrDefault() ?? 0;

                if (codProyecto != 0)
                {
                    if (operadorController.validarOperadorXProyecto(codOperadorUsuario, codProyecto))
                    {
                        reintegros = (from pagos in db.PagoActividad
                                      where pagos.Id_PagoActividad == codigoPago &&
                                      pagos.Estado == Constantes.CONST_EstadoAprobadoFA
                                      select new ReintegroDTO
                        {
                            IdPago = pagos.Id_PagoActividad,
                            Nombre = pagos.NomPagoActividad,
                            ValorPago = pagos.CantidadDinero.GetValueOrDefault(0),
                            CodigoProyecto = pagos.CodProyecto.GetValueOrDefault(0),
                            ValorUltimoReintegro = db.Reintegros.Any(filter1 => filter1.CodigoPago == pagos.Id_PagoActividad) ? db.Reintegros.Where(filter => filter.CodigoPago == pagos.Id_PagoActividad).OrderByDescending(FilterOrder => FilterOrder.FechaIngreso).FirstOrDefault().ValorReintegro : 0
                        }).ToList();
                    }
                }
            }

            return(reintegros);
        }
Beispiel #19
0
        public static void InsertOrUpdateActa(ActaSeguimientoInterventoria entity)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var currentEntity = (from actas in db.ActaSeguimientoInterventoria
                                     where actas.IdProyecto == entity.IdProyecto &&
                                     actas.NumeroActa == entity.NumeroActa
                                     select actas
                                     ).FirstOrDefault();

                if (currentEntity != null)
                {
                    currentEntity.Nombre             = entity.Nombre;
                    currentEntity.FechaActualizacion = DateTime.Now;
                    currentEntity.Publicado          = entity.Publicado;
                    currentEntity.ArchivoActa        = entity.ArchivoActa;
                    currentEntity.FechaCreacion      = entity.FechaCreacion;
                    if (entity.Publicado)
                    {
                        currentEntity.FechaPublicacion = DateTime.Now;
                    }
                    db.SubmitChanges();
                    entity.Id = currentEntity.Id;
                }
                else
                {
                    db.ActaSeguimientoInterventoria.InsertOnSubmit(entity);
                    db.SubmitChanges();
                }
            }
        }
Beispiel #20
0
        public static List <HistorialReintegroDTO> GetReintegros(int codigoPago)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entities = (from reintegros in db.Reintegros
                                join contacto in db.Contacto on reintegros.codigoContacto equals contacto.Id_Contacto
                                where reintegros.CodigoPago == codigoPago
                                select new HistorialReintegroDTO
                {
                    CodigoPago = reintegros.CodigoPago,
                    CodigoReintegro = reintegros.Consecutivo,
                    Descripcion = reintegros.Observacion,
                    ValorReintegro = reintegros.ValorReintegro,
                    ValorPagoConReintegro = reintegros.ValorPagoConReintegro,
                    PresupuestoConReintegro = reintegros.PresupuestoPostReintegro,
                    PresupuestoSinReintegro = reintegros.PresupuestoPreReintegro,
                    FechaReintegro = reintegros.FechaReintegro,
                    CodigoContacto = reintegros.codigoContacto,
                    NombreContacto = contacto.Nombres + " " + contacto.Apellidos,
                    ArchivoInforme = ConfigurationManager.AppSettings.Get("DirVirtual") + reintegros.archivoInforme
                }).ToList();

                return(entities);
            }
        }
Beispiel #21
0
        public void getDetallePago()
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var convocatoriaProyectos = (from convocatoriaProyecto in db.ConvocatoriaProyectos
                                             where convocatoriaProyecto.Viable == true && convocatoriaProyecto.CodProyecto == this.codigoProyecto
                                             select convocatoriaProyecto).FirstOrDefault();

                var pagoBeneficiario = (from pagoBeneficiaros in db.PagoBeneficiarios
                                        join tipoIdentificacion in db.TipoIdentificacions on pagoBeneficiaros.CodTipoIdentificacion equals tipoIdentificacion.Id_TipoIdentificacion
                                        where pagoBeneficiaros.Id_PagoBeneficiario == this.codigoPagoBeneficiario
                                        select new
                {
                    numeroIdentificacion = pagoBeneficiaros.NumIdentificacion,
                    codigoPagoBanco = pagoBeneficiaros.CodPagoBanco,
                    codigoPagoSucursal = pagoBeneficiaros.CodPagoSucursal,
                    numeroCuenta = pagoBeneficiaros.NumCuenta,
                    tipoIdentificacionSigla = tipoIdentificacion.Sigla
                }).FirstOrDefault();

                var actaPago = (from actaSolicitudPago in db.PagosActaSolicitudPagos
                                where actaSolicitudPago.CodPagoActividad == this.idPagoActividad &&
                                actaSolicitudPago.CodPagosActaSolicitudes == this.codigoActa
                                select new
                {
                    observacion = actaSolicitudPago.Observaciones
                }
                                ).FirstOrDefault();

                if (convocatoriaProyectos == null)
                {
                    throw new ApplicationException("No se pudo obtener el codigo de la convocatoria.");
                }
                if (pagoBeneficiario == null)
                {
                    throw new ApplicationException("No se pudo obtener la información del pago del beneficiario.");
                }
                if (actaPago == null)
                {
                    throw new ApplicationException("No se pudo obtener la información del acta de pago.");
                }

                this.codigoConvocatoria      = convocatoriaProyectos.CodConvocatoria;
                this.observaciones           = actaPago.observacion;
                this.numeroIdentificacion    = pagoBeneficiario.numeroIdentificacion;
                this.codigoPagoBanco         = pagoBeneficiario.codigoPagoBanco;
                this.codigoPagoSucursal      = pagoBeneficiario.codigoPagoSucursal;
                this.numeroCuenta            = pagoBeneficiario.numeroCuenta;
                this.tipoIdentificacionSigla = pagoBeneficiario.tipoIdentificacionSigla;

                var convocatoria = (from convoctatoriaNueva in db.Convocatoria
                                    where convoctatoriaNueva.Id_Convocatoria == this.codigoConvocatoria
                                    select convoctatoriaNueva).FirstOrDefault();
                if (convocatoria == null)
                {
                    throw new ApplicationException("No se pudo obtener la información del encargo fiduciario.");
                }
                this.encargoFiducia = convocatoria.encargofiduciario;
            }
        }
Beispiel #22
0
        public static List <EquipoTrabajo> getEquipoTrabajo(int codigoproyecto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
            {
                var consulta = (from contacto in db.Contacto
                                join pc in db.ProyectoContactos
                                on contacto.Id_Contacto equals pc.CodContacto into tb1
                                from reg1 in tb1
                                join regquipo in db.ProyectoEmprendedorPerfils
                                on reg1.CodContacto equals regquipo.IdContacto into tb2
                                from reg2 in tb2.DefaultIfEmpty()
                                where reg1.CodProyecto == codigoproyecto &&
                                reg1.Inactivo == false &&
                                reg1.CodRol == Constantes.CONST_RolEmprendedor
                                orderby contacto.Nombres
                                select new EquipoTrabajo()
                {
                    IdEmprendedorPerfil = reg2.IdEmprendedorPerfil,
                    IdContacto = contacto.Id_Contacto,
                    NombreEmprendedor = contacto.Nombres + " " + contacto.Apellidos,
                    Perfil = reg2.Perfil,
                    Rol = reg2.Rol
                }).ToList();

                return(consulta != null ? consulta : new List <EquipoTrabajo>());
            }
        }
Beispiel #23
0
        public static List <Int32> GetEquipoTrabajo(int codigoProyecto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entities = (from tabs in db.ProyectoContactos
                                where tabs.CodProyecto == codigoProyecto &&
                                (tabs.CodRol.Equals(Constantes.CONST_RolAsesorLider) ||
                                 tabs.CodRol.Equals(Constantes.CONST_RolAsesor) ||
                                 tabs.CodRol.Equals(Constantes.CONST_RolEmprendedor) ||
                                 tabs.CodRol.Equals(Constantes.CONST_RolEvaluador)) &&
                                tabs.FechaFin == null &&
                                tabs.Inactivo.Equals(false)
                                select tabs.CodContacto).ToList();

                var coordinador = (from tabs in db.ProyectoContactos
                                   join coordinadores in db.Evaluadors on tabs.CodContacto equals coordinadores.CodContacto
                                   where tabs.CodProyecto == codigoProyecto &&
                                   tabs.CodRol.Equals(Constantes.CONST_RolEvaluador) &&
                                   tabs.FechaFin == null &&
                                   tabs.Inactivo.Equals(false)
                                   select
                                   coordinadores.CodCoordinador.GetValueOrDefault(0)).ToList();

                if (coordinador.Any())
                {
                    entities.AddRange(coordinador);
                }

                return(entities);
            }
        }
Beispiel #24
0
        public static void UpdateTabCompleto(int codigoTab, int codigoProyecto, int codigoContacto, Boolean estado)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entity = (from tabProyecto in db.TabProyectos
                              where
                              tabProyecto.CodProyecto.Equals(codigoProyecto) &&
                              tabProyecto.CodTab.Equals(codigoTab)
                              select
                              tabProyecto
                              ).SingleOrDefault();

                if (entity == null)
                {
                    entity = new TabProyecto
                    {
                        CodContacto       = codigoContacto,
                        CodProyecto       = codigoProyecto,
                        FechaModificacion = DateTime.Now,
                        CodTab            = (Int16)codigoTab,
                        Completo          = estado,
                        Realizado         = false
                    };
                    db.TabProyectos.InsertOnSubmit(entity);
                }
                else
                {
                    entity.Completo = estado;
                }

                db.SubmitChanges();
            }
        }
Beispiel #25
0
        public static void InactivateByTime(int codigoContacto, int maxMonths)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var entity = db.LogIngresos.FirstOrDefault(filter => filter.CodContacto == codigoContacto);

                if (entity != null)
                {
                    var fechaUltimoIngreso = entity.FechaUltimoIngreso.GetValueOrDefault();
                    var fechaActual        = DateTime.Now;

                    var difference = ((fechaActual.Year - fechaUltimoIngreso.Year) * 12) + fechaActual.Month - fechaUltimoIngreso.Month;

                    if (difference > maxMonths)
                    {
                        entity.FechaUltimoIngreso = null;
                        var user = db.Contacto.FirstOrDefault(filterContacto => filterContacto.Id_Contacto == codigoContacto);
                        if (user != null)
                        {
                            user.Inactivo = true;
                        }

                        db.SubmitChanges();
                        throw new ApplicationException("El usuario ha sido inactivado por inactiviadd.");
                    }
                }
            }
        }
Beispiel #26
0
        /// <summary>
        /// Inserta / actualiza los datos de la pestaña 6 del capítulo IV (Pregunta 16)
        /// </summary>
        /// <param name="obj">Objeto </param>
        /// <param name="esNuevo">Indica si el registro es nuevo</param>
        /// <returns>Verdadero si la operación de inserción / actualización es exitosa. Falso en otro caso</returns>
        public static bool setDatosFormulario(ProyectoProductividad obj, bool esNuevo)
        {
            bool operacionOk = true;

            try
            {
                using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
                {
                    //Si es nuevo registro se inserta, si no se actualiza
                    if (esNuevo)
                    {
                        db.ProyectoProductividads.InsertOnSubmit(obj);
                    }
                    else
                    {
                        var objActual = (from datos in db.ProyectoProductividads
                                         where datos.IdProductividad == obj.IdProductividad
                                         select datos).FirstOrDefault();

                        if (objActual != null)
                        {
                            objActual.CapacidadProductiva = obj.CapacidadProductiva;
                        }
                    }

                    db.SubmitChanges();
                }
            }
            catch
            {
                operacionOk = false;
            }

            return(operacionOk);
        }
Beispiel #27
0
        public static bool Insertar(ProyectoRiesgo entRiesgo, out string msg)
        {
            try
            {
                using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
                {
                    var entRiesgodb = (from row in db.ProyectoRiesgos
                                       where row.IdProyecto == entRiesgo.IdProyecto
                                       select row).FirstOrDefault();

                    //insert-update
                    if (entRiesgodb == null)
                    {
                        db.ProyectoRiesgos.InsertOnSubmit(entRiesgo);
                    }
                    else
                    {
                        entRiesgodb.ActoresExternos  = entRiesgo.ActoresExternos;
                        entRiesgodb.FactoresExternos = entRiesgo.FactoresExternos;
                    }
                    db.SubmitChanges();

                    msg = Mensajes.Mensajes.GetMensaje(8);
                    return(true);
                }
            }
            catch (Exception ex)
            {
                //todo guardar log
                msg = Mensajes.Mensajes.GetMensaje(7);
                return(false);
            }
        }
Beispiel #28
0
        /// <summary>
        /// Inserta / actualiza los datos de la pestaña 6 del capítulo IV (pregunta 17.1)
        /// </summary>
        /// <param name="obj">Objeto </param>
        /// <param name="esNuevo">Indica si el registro es nuevo</param>
        /// <returns>Verdadero si la operación de inserción / actualización es exitosa. Falso en otro caso</returns>
        public static bool setDatosPerfil(ProyectoEmprendedorPerfil obj)
        {
            bool operacionOk = true;

            try
            {
                using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(cadenaConexion))
                {
                    //Si es nuevo registro se inserta, si no se actualiza

                    var objActual = (from datos in db.ProyectoEmprendedorPerfils
                                     where datos.IdEmprendedorPerfil == obj.IdEmprendedorPerfil
                                     select datos).SingleOrDefault();

                    if (objActual != null)
                    {
                        objActual.Perfil = obj.Perfil;
                        objActual.Rol    = obj.Rol;
                    }
                    else
                    {
                        db.ProyectoEmprendedorPerfils.InsertOnSubmit(obj);
                    };

                    db.SubmitChanges();
                }
            }
            catch
            {
                operacionOk = false;
            }

            return(operacionOk);
        }
Beispiel #29
0
 public static Datos.Proyecto GetProjectInfo(int codigoProyecto)
 {
     using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
     {
         return(db.Proyecto.FirstOrDefault(filter => filter.Id_Proyecto == codigoProyecto));
     }
 }
Beispiel #30
0
        private List <EmprendedorDTO> codEmprendedores(int _codProyecto)
        {
            List <EmprendedorDTO> emprendedores = new List <EmprendedorDTO>();

            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(conexion))
            {
                emprendedores = (from con in db.Contacto
                                 join proCon in db.ProyectoContactos
                                 on con.Id_Contacto equals proCon.CodContacto
                                 where
                                 (proCon.CodRol == Constantes.CONST_RolEmprendedor) &&
                                 proCon.CodProyecto == _codProyecto &&
                                 proCon.FechaFin == null &&
                                 proCon.Inactivo.Equals(false)
                                 select new EmprendedorDTO()
                {
                    Identificacion = con.Identificacion,
                    Nombres = con.Nombres + " " + con.Apellidos,
                    Telefono = con.Telefono,
                    Email = con.Email,
                    codContacto = con.Id_Contacto
                }).ToList();
            }

            return(emprendedores);
        }