Exemplo n.º 1
0
        //<summary>
        //Metodo encargado de agregar un nuevo proyecto al archivo
        //</summary>
        public Boolean agregarProyecto(Proyecto proyecto)
        {
            XmlNode root = xmlDocumentP.DocumentElement;
            XmlElement nodoProyecto = xmlDocumentP.CreateElement("proyecto");
            nodoProyecto.SetAttribute("codigo", proyecto.Codigo);
            nodoProyecto.SetAttribute("nombre", proyecto.Nombre);
            nodoProyecto.SetAttribute("fechaInicio", obtenerFechaString(proyecto.FechaInicio));
            nodoProyecto.SetAttribute("fechaFin", obtenerFechaString(proyecto.FechaFin));
            nodoProyecto.SetAttribute("presupuesto", String.Concat(proyecto.Presupuesto));
            root.AppendChild(nodoProyecto);
            Boolean resultado = true;

            try
            {
                xmlDocumentP.Save(rutaProyecto);
            }
            catch (XmlException)
            {
                resultado = false;
            }
            return resultado;
        }
        /// <summary>
        /// Karen Guillén A
        /// 13/05/2020
        /// Metodo para insertar proyectos
        /// </summary>
        public int Insertar(Proyecto proyecto)
        {
            SqlConnection sqlConnection = conexion.ConexionControlAsistentes();
            SqlCommand    sqlCommand    = new SqlCommand("insert into Proyecto (nombre, descripcion, fecha_inicio, fecha_finalizacion, disponible, finalizado " +
                                                         "VALUES (@nombre, @descripcion, @fecha_inicio, @fecha_finalizacion, @disponible, @finalizado ));", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@nombre", proyecto.nombre);
            sqlCommand.Parameters.AddWithValue("@descripcion", proyecto.descripcion);
            sqlCommand.Parameters.AddWithValue("@fecha_inicio", proyecto.nombre);
            sqlCommand.Parameters.AddWithValue("@fecha_finalizacion", proyecto.descripcion);
            sqlCommand.Parameters.AddWithValue("@disponible", proyecto.disponible);
            sqlCommand.Parameters.AddWithValue("@finalizado", proyecto.finalizado);

            sqlConnection.Open();
            int idProyecto = (int)sqlCommand.ExecuteScalar();

            sqlConnection.Close();

            //int insertaAsistente = InsertarAsistenteProyecto(proyecto.asistente.idAsistente, proyecto.idProyecto);

            return(idProyecto);
        }
Exemplo n.º 3
0

        
Exemplo n.º 4
0
        /// <summary>
        /// Borra las tareas de un proyecto en el las horas logueadas por el usuario
        /// es 0, o no fueron logueadas por ese usuario
        /// </summary>
        /// <param name="proyecto"></param>
        public static void EliminarDetalleRecursoProyectoNoLogueados(Proyecto proyecto)
        {
            using (var bd = new DescarEntity())
            {
                var noborrar = (from s in bd.Detalle_recurso
                                join ap in bd.Actividad_proyecto on s.id_actividad_proyecto equals ap.id_actividad_proyecto
                                join cmh in bd.Cuerpo_movimiento_hora on ap.id_actividad_proyecto equals cmh.id_cuerpo_movimiento_hora
                                join mh in bd.Movimiento_hora on cmh.id_movimiento_hora equals mh.id_movimiento_hora
                                where ap.id_proyecto.Value == proyecto.id_proyecto &&
                                s.id_usuario == mh.id_usuario
                                select s);


                var todas = (from s in bd.Detalle_recurso
                             join ap in bd.Actividad_proyecto on s.id_actividad_proyecto equals ap.id_actividad_proyecto
                             where ap.id_proyecto.Value == proyecto.id_proyecto
                             select s);

                todas = todas.Where(x => noborrar.Select(y => y.id_detalle_recurso).Contains(x.id_detalle_recurso));
                bd.Detalle_recurso.RemoveRange(todas);
                bd.SaveChanges();
            }
        }
Exemplo n.º 5
0
        public void CrearProyecto(Proyecto p)
        {
            try
            {
                int pri = 0;
                if (p.Prioridad == TipoPrioridad.ALTA)
                {
                    pri = 1;
                }
                else if (p.Prioridad == TipoPrioridad.MEDIA)
                {
                    pri = 2;
                }
                else if (p.Prioridad == TipoPrioridad.BAJA)
                {
                    pri = 3;
                }

                MySqlConnection con = new MySqlConnection(DBManager.cadena);
                con.Open();
                MySqlCommand cmd      = new MySqlCommand();
                String       cadenaI  = p.FechaInicio.Year.ToString() + "-" + p.FechaInicio.Month.ToString() + "-" + p.FechaInicio.Day.ToString();
                String       cadenaF  = p.FechaFinEstimada.Year.ToString() + "-" + p.FechaFinEstimada.Month.ToString() + "-" + p.FechaFinEstimada.Day.ToString();
                String       cadenaFR = p.FechaRealFin.Year.ToString() + "-" + p.FechaRealFin.Month.ToString() + "-" + p.FechaRealFin.Day.ToString();

                String sql = " INSERT INTO PROYECTO (ID_ERU, ID_TRABAJADOR_JEFE, NOMBRE, PRESUPUESTO, PRIORIDAD, ID_TIPO_FASE_PROYECTO, FECHA_INICIO, FECHA_FIN_ESTIMADA, FECHA_FIN_REAL)" +
                             " VALUES (" + p.Eru.IdERU + ", " + p.JefeProyecto.IdTrabajador + ", '" + p.Nombre + "', " + p.Presupuesto + ", " + pri + ", 1, '" + cadenaI + "', '" + cadenaF + "', '" + cadenaFR + "')";
                cmd.CommandText = sql;
                cmd.Connection  = con;
                cmd.ExecuteNonQuery();
                con.Close();
            }
            catch
            {
                MessageBox.Show("Error al crear el proyecto. ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 6
0
        public BindingList <Trabajador> listarTrabajadoresDisponibles(Proyecto p, Operario op, string rol)
        {
            BindingList <Trabajador> trabajadores = new BindingList <Trabajador>();
            MySqlConnection          con          = new MySqlConnection(DBManager.cadena);

            con.Open();
            MySqlCommand comando = new MySqlCommand();

            comando.CommandText = "SELECT * FROM TIPO_TRABAJADOR TT, PERSONA P, TRABAJADOR T WHERE P.ID_PERSONA = T.ID_PERSONA" +
                                  " AND P.DNI LIKE CONCAT ('%" + op.Dni + "%') AND P.NOMBRE LIKE CONCAT('%" + op.Nombre + "%') AND P.APELLIDO_PATERNO LIKE CONCAT('%" + op.ApellidoPaterno +
                                  "%') AND P.APELLIDO_MATERNO LIKE CONCAT('%" + op.ApellidoMaterno + "%') AND P.CORREO LIKE ('%" + op.Correo +
                                  "%') AND P.TELEFONO LIKE CONCAT ('%" + op.Telefono + "%') AND TT.DESCRIPCION LIKE CONCAT ('%" + rol + "%')" +
                                  " AND (TT.ID_TIPO = 1 OR TT.ID_TIPO > 4) AND T.ID_TIPO = TT.ID_TIPO" +
                                  " AND T.ID_TRABAJADOR NOT IN (SELECT ID_TRABAJADOR FROM PROYECTO_X_TRABAJADOR WHERE ID_PROYECTO = " + p.IdProyecto + ");";
            comando.Connection = con;
            MySqlDataReader lector = comando.ExecuteReader();

            while (lector.Read())
            {
                Trabajador t = new Trabajador();
                t.IdTrabajador    = lector.GetInt32("ID_TRABAJADOR");
                t.Dni             = lector.GetString("DNI");
                t.Nombre          = lector.GetString("NOMBRE");
                t.ApellidoPaterno = lector.GetString("APELLIDO_PATERNO");
                t.ApellidoMaterno = lector.GetString("APELLIDO_MATERNO");
                t.Correo          = lector.GetString("CORREO");
                t.Telefono        = lector.GetString("TELEFONO");
                TipoTrabajador r = new TipoTrabajador();
                r.IdTipoTrabajador = lector.GetInt32("ID_TIPO");
                r.Descripcion      = rol;
                t.CargoTrabajador  = r;
                trabajadores.Add(t);
            }
            con.Close();
            return(trabajadores);
        }
Exemplo n.º 7
0
        public static List <Tuple <USUARIO, double> > ObtenerHorasTrabajadasPorUsuario(Proyecto proyecto)
        {
            using (var bd = new DescarEntity())
            {
                var pro = (from mh in bd.Movimiento_hora
                           join cmh in bd.Cuerpo_movimiento_hora on mh.id_movimiento_hora equals cmh.id_movimiento_hora
                           join u in bd.USUARIOs on mh.id_usuario equals u.id_usuario
                           join ap in bd.Actividad_proyecto on cmh.id_actividad_proyecto equals ap.id_actividad_proyecto
                           where ap.id_proyecto == proyecto.id_proyecto
                           select new { usuario = u, salida = cmh.salida.Value, entrada = cmh.entrada.Value });

                return(pro.AsEnumerable().Select(x => new Tuple <USUARIO, double>(x.usuario, x.salida.Subtract(x.entrada).TotalHours)).ToList());
            }
        }
Exemplo n.º 8
0
        public static CONTROL_SUBPROYECTO VerificarExistencia(Tipo_actividad actividad, Proyecto proyecto)
        {
            using (var bd = new DescarEntity())
            {
                var controles = (from p in bd.CONTROL_SUBPROYECTO
                                 where p.id_proyecto == proyecto.id_proyecto
                                 & p.id_tipo_actividad == actividad.id_tipo_actividad
                                 select p);

                return(controles.Any() ? controles.First() : null);
            }
        }
Exemplo n.º 9
0
        public BindingList <Proyecto> listarProyectosEnCurso(int e, DateTime mifecha)
        {
            BindingList <Proyecto> proyectos = new BindingList <Proyecto>();
            MySqlConnection        con       = new MySqlConnection(DBManager.cadena);

            con.Open();
            int          dia   = mifecha.Day;
            int          mes   = mifecha.Month;
            int          anio  = mifecha.Year;
            string       fecha = anio + "-" + mes + "-" + dia;
            MySqlCommand cmd   = new MySqlCommand();
            String       sql   = " select P.ID_PROYECTO, P.NOMBRE, P.ID_TIPO_FASE_PROYECTO, P.PRIORIDAD, P.FECHA_INICIO, P.FECHA_FIN_ESTIMADA, P.PRESUPUESTO " +
                                 " from PROYECTO P, TIPO_FASE_PROYECTO TFP " +
                                 " WHERE TFP.ID_TIPO_FASE_PROYECTO = P.ID_TIPO_FASE_PROYECTO ";

            if (e != 0)
            {
                sql = sql + " AND TFP.ID_TIPO_FASE_PROYECTO=" + e;
            }
            sql             = sql + " AND P.FECHA_INICIO >='" + fecha + "'";
            cmd.CommandText = sql;
            cmd.Connection  = con;
            MySqlDataReader lector = cmd.ExecuteReader();

            while (lector.Read())
            {
                Proyecto pro = new Proyecto();
                pro.IdProyecto = lector.GetInt32("ID_PROYECTO");
                pro.Nombre     = lector.GetString("NOMBRE");
                int idEtapa = lector.GetInt32("ID_TIPO_FASE_PROYECTO");
                if (idEtapa == 1)
                {
                    pro.Etapa = TipoFaseProyecto.ANALISIS;
                }
                else if (idEtapa == 2)
                {
                    pro.Etapa = TipoFaseProyecto.DESARROLLO;
                }
                else if (idEtapa == 3)
                {
                    pro.Etapa = TipoFaseProyecto.PRUEBAS;
                }
                else if (idEtapa == 4)
                {
                    pro.Etapa = TipoFaseProyecto.PREPARACION;
                }
                else if (idEtapa == 5)
                {
                    pro.Etapa = TipoFaseProyecto.POSTPRODUCCION;
                }
                else if (idEtapa == 6)
                {
                    pro.Etapa = TipoFaseProyecto.COMPLETADO;
                }
                else if (idEtapa == 7)
                {
                    pro.Etapa = TipoFaseProyecto.CANCELADO;
                }
                int idPri = lector.GetInt32("PRIORIDAD");
                if (idPri == 1)
                {
                    pro.Prioridad = TipoPrioridad.ALTA;
                }
                else if (idPri == 2)
                {
                    pro.Prioridad = TipoPrioridad.MEDIA;
                }
                else if (idPri == 3)
                {
                    pro.Prioridad = TipoPrioridad.BAJA;
                }
                pro.FechaInicio      = lector.GetDateTime("FECHA_INICIO");
                pro.FechaFinEstimada = lector.GetDateTime("FECHA_FIN_ESTIMADA");
                pro.Presupuesto      = lector.GetFloat("PRESUPUESTO");
                proyectos.Add(pro);
            }
            con.Close();
            return(proyectos);
        }
Exemplo n.º 10
0
        public BindingList <SolicitudCambio> obtenerSolicitudesDeCambio(int idJefe)
        {
            MySqlConnection conn;
            string          cadena = DBManager.cadena;

            try
            {
                conn = new MySqlConnection(cadena);
            }
            catch
            {
                return(null);
            }
            conn.Open();
            BindingList <SolicitudCambio> solicitudesCambioDA = new BindingList <SolicitudCambio>();

            MySqlCommand cmd = new MySqlCommand();

            cmd.Connection = conn;

            string query = "SELECT S.ID_SOLICITUD, S.DESCRIPCION AS DESCRIPCION_SOLICITUD, S.FECHA_SOLICITUD, R.ID_REQUERIMIENTO, " +
                           "R.DESCRIPCION AS DESCRIPCION_REQUERIMIENTO, R.FECHA_REQUERIMIENTO, R.ID_TIPO_REQUERIMIENTO, R.FECHA_ESTIMADA, " +
                           "E.ID_EMPRESA, E.RUC, E.RAZON_SOCIAL, E.DIRECCION, P.ID_PROYECTO, P.NOMBRE AS NOMBRE_PROYECTO, " +
                           "P.PRESUPUESTO, P.PRIORIDAD, P.FECHA_INICIO, P.FECHA_FIN_ESTIMADA, P.FECHA_FIN_REAL, " +
                           "C.ID_CLIENTE, PER.NOMBRE AS NOMBRE_PERSONA, PER.APELLIDO_PATERNO, PER.APELLIDO_MATERNO " +
                           "FROM SOLICITUD_CAMBIO S, REQUERIMIENTO R, EMPRESA E, ERU ER, PROYECTO P, CLIENTE C, PERSONA PER " +
                           "WHERE S.ID_SOLICITUD = R.ID_SOLICITUD AND R.ID_ERU = ER.ID_ERU AND ER.ID_CLIENTE = C.ID_CLIENTE AND " +
                           "C.ID_EMPRESA = E.ID_EMPRESA AND C.ID_PERSONA = PER.ID_PERSONA AND " +
                           "ER.ID_ERU = P.ID_ERU AND S.ID_TIPO_ESTADO_SOLICITUD = 2 AND P.ID_TRABAJADOR_JEFE = " + idJefe + "; ";

            cmd.CommandText = query;

            MySqlDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            {
                SolicitudCambio solCambio = new SolicitudCambio();
                solCambio.IdSolicitud    = reader.GetInt32("ID_SOLICITUD");
                solCambio.Descripcion    = reader.GetString("DESCRIPCION_SOLICITUD");
                solCambio.FechaSolicitud = reader.GetDateTime("FECHA_SOLICITUD");
                int idEstado = 2;
                solCambio.setEstado(idEstado);
                Requerimiento req = new Requerimiento();
                req.IdRequerimiento     = reader.GetInt32("ID_REQUERIMIENTO");
                req.Descripcion         = reader.GetString("DESCRIPCION_REQUERIMIENTO");
                req.FechaRequerimiento  = reader.GetDateTime("FECHA_REQUERIMIENTO");
                req.TipoInt             = reader.GetInt32("ID_TIPO_REQUERIMIENTO");
                solCambio.Requerimiento = req;

                Proyecto proyecto = new Proyecto();
                proyecto.IdProyecto       = reader.GetInt32("ID_PROYECTO");
                proyecto.Nombre           = reader.GetString("NOMBRE_PROYECTO");
                proyecto.Presupuesto      = reader.GetFloat("PRESUPUESTO");
                proyecto.PrioridadInt     = reader.GetInt32("PRIORIDAD");
                proyecto.FechaInicio      = reader.GetDateTime("FECHA_INICIO");
                proyecto.FechaFinEstimada = reader.GetDateTime("FECHA_FIN_ESTIMADA");
                solCambio.Proyecto        = proyecto;

                Cliente cliente = new Cliente();
                cliente.IdCliente       = reader.GetInt32("ID_CLIENTE");
                cliente.Nombre          = reader.GetString("NOMBRE_PERSONA");
                cliente.ApellidoPaterno = reader.GetString("APELLIDO_PATERNO");
                cliente.ApellidoMaterno = reader.GetString("APELLIDO_MATERNO");
                Empresa empresa = new Empresa();
                empresa.IdEmpresa   = reader.GetInt32("ID_EMPRESA");
                empresa.Ruc         = reader.GetString("RUC");
                empresa.RazonSocial = reader.GetString("RAZON_SOCIAL");
                empresa.Direccion   = reader.GetString("DIRECCION");
                cliente.Empresa     = empresa;
                solCambio.Cliente   = cliente;

                solicitudesCambioDA.Add(solCambio);
            }

            reader.Close();

            conn.Close();

            return(solicitudesCambioDA);
        }