예제 #1
0
        public static SolicitudPrueba GetById(int pidCandidato, int pidTecnologia, string pnivel)
        {
            SolicitudPrueba solicitud = null;
            var sqlQuery = " Select s.id_candidato, s.id_tecnologia, s.nivel_conocimiento, s.estado_solicitud,s.observaciones,s.id_Prueba ,c.Nombre+' '+c.Apellidos as NombreCandidato ,t.nombre_tecnologia from Solicitudes_pruebas s inner join candidatos c on s.id_candidato = c.id_candidato  inner join tecnologias t on s.id_tecnologia= t.id_tecnologia where s.esta_oculto = 0 and s.id_candidato = @candidato and s.id_Tecnologia = @tecnologia and s.nivel_conocimiento = @nivel";
            SqlCommand cmd = new SqlCommand();
            cmd.Parameters.AddWithValue("@candidato", pidCandidato);
            cmd.Parameters.AddWithValue("@tecnologia", pidTecnologia);
            cmd.Parameters.AddWithValue("@nivel", pnivel);

            var ds = DBAccess.ExecuteSQLWithDS(cmd, sqlQuery);

            if (ds.Tables[0].Rows.Count > 0)
            {
                var dr = ds.Tables[0].Rows[0];

                solicitud = new SolicitudPrueba

                {
                    Id = Convert.ToInt32(dr["id_candidato"]),
                    IdTecnologia = Convert.ToInt32(dr["id_tecnologia"]),
                    NivelConocimiento = dr["nivel_conocimiento"].ToString(),
                    EstadoSolicitud  = dr["estado_solicitud"].ToString(),
                    IdPrueba = Convert.ToInt32(dr["id_prueba"])

                };
            }

            return solicitud;
        }
예제 #2
0
 public void modificarSolicitud(int pidCandidato, int pidTecnologia, String pestado)
 {
     SolicitudPrueba solicitud = null;
     solicitud = new SolicitudPrueba { Id = pidCandidato, EstadoSolicitud = pestado };
     UoW.SolicitudPruebaRepository.Update(solicitud);
 }
예제 #3
0
        public void registrarSolicitudPrueba(int pidCandidato, int pidTecnologia, string pnivelConocimiento, string pobservaciones)
        {
            SolicitudPrueba solicitud = new SolicitudPrueba(pidCandidato, pidTecnologia, pnivelConocimiento, "Por asignar", pobservaciones);
            if (solicitud.IsValid)
            {

                UoW.SolicitudPruebaRepository.Insert(solicitud);

            }
            else
            {
                StringBuilder sb = new StringBuilder();
                foreach (RuleViolation rv in solicitud.GetRuleViolations())
                {
                    sb.AppendLine(rv.ErrorMessage);
                }
                throw new BusinessLogicException(sb.ToString());
            }
        }
예제 #4
0
 public void asociarSolicitudConPrueba( int pidCandidato,int pidTecnologia,string pnivelConocimiento, int pidPrueba)
 {
     SolicitudPrueba solicitud = null;
     solicitud = new SolicitudPrueba { Id = pidCandidato, IdTecnologia = pidTecnologia, NivelConocimiento = pnivelConocimiento, IdPrueba = pidPrueba };
     UoW.SolicitudPruebaRepository.Update(solicitud);
 }
예제 #5
0
 public void eliminarSolicitud(int pidCandidato, int pidTecnologia, string pnivelConocimiento)
 {
     SolicitudPrueba solicitud = new SolicitudPrueba { Id = pidCandidato, IdTecnologia = pidTecnologia, NivelConocimiento = pnivelConocimiento };
     UoW.SolicitudPruebaRepository.Delete(solicitud);
 }
예제 #6
0
 public void Delete(SolicitudPrueba entity)
 {
     _deleteItems.Add(entity);
 }
예제 #7
0
 private void UpdateSolicitudPrueba(SolicitudPrueba SolicitudPrueba)
 {
     try
     {
         SqlCommand cmd = new SqlCommand();
         cmd.Parameters.Add(new SqlParameter("@id_candidato", SolicitudPrueba.Id));
         cmd.Parameters.Add(new SqlParameter("@id_tecnologia", SolicitudPrueba.IdTecnologia));
         cmd.Parameters.Add(new SqlParameter("@nivel_conocimiento", SolicitudPrueba.NivelConocimiento));
         cmd.Parameters.Add(new SqlParameter("@id_prueba", SolicitudPrueba.IdPrueba));
         DBAccess.ExecuteSPNonQuery(cmd, "USP_SolicitudPrueba_Update");
     }
     catch (SqlException ex)
     {
         //logear la excepcion a la bd con un Exceptionv
         throw new DataAccessException("Ha ocurrido un error al registrar una Solicitud de Prueba", ex);
     }
     catch (Exception ex)
     {
         //logear la excepcion a la bd con un Exception
         throw new DataAccessException("Ha ocurrido un error al registrar una Solicitud de Prueba", ex);
     }
 }
예제 #8
0
        private void InsertSolicitudPrueba(SolicitudPrueba SolicitudPrueba)
        {
            try
            {
                SqlCommand cmd = new SqlCommand();

                cmd.Parameters.Add(new SqlParameter("@id_candidato", SolicitudPrueba.Id ));
                cmd.Parameters.Add(new SqlParameter("@id_tecnologia", SolicitudPrueba.IdTecnologia));
                cmd.Parameters.Add(new SqlParameter("@nivel_conocimiento", SolicitudPrueba.NivelConocimiento ));
                cmd.Parameters.Add(new SqlParameter("@estado_solicitud", SolicitudPrueba.EstadoSolicitud ));
                cmd.Parameters.Add(new SqlParameter("@observaciones", SolicitudPrueba.Observaciones ));
                cmd.Parameters.Add(new SqlParameter("@id_prueba", SolicitudPrueba.IdPrueba));

                DBAccess.ExecuteSPNonQuery(cmd, "USP_SolicitudPrueba_Insert");

            }
            catch (SqlException ex)
            {

                if (ex.Number == 2601) // Cannot insert duplicate key row in object error
                {
                    throw new DataAccessException("Hubo un error al registrar la solicitud. Esta solicitud ya existe.", ex);
                }
                else
                {
                    //logear la excepcion a la bd con un Exception
                    throw new DataAccessException("Ha ocurrido un error al registrar una solicitud", ex);
                }
            }
            catch (Exception ex)
            {
                //logear la excepcion a la bd con un Exception
                throw new DataAccessException("Ha ocurrido un error al registrar una Solicitud de Prueba", ex);
            }
        }
예제 #9
0
 public void Update(SolicitudPrueba entity)
 {
     _updateItems.Add(entity);
 }
예제 #10
0
 public void Insert(SolicitudPrueba entity)
 {
     _insertItems.Add(entity);
 }