Esempio n. 1
0
        internal void EliminarDocumentosTramite(string idTramite, SqlTransaction tran)
        {
            UtilidadesDB db = new UtilidadesDB();

            try
            {
                SqlCommand cmdEliminarDocs = db.GenerarStoreProcedure("sp_EliminarDocumentosTramite", tran.Connection);
                cmdEliminarDocs.Parameters.AddWithValue("@codigo", idTramite);
                cmdEliminarDocs.Transaction = tran;
                db.GenerarValueReturn(cmdEliminarDocs);

                cmdEliminarDocs.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro el tramite indicado.");

                case -9:
                    throw new Exception("Error al eliminar documentos tramite.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 2
0
        internal void AsociarDocumentoTramite(Documento doc, string idTramite, SqlTransaction tran)
        {
            UtilidadesDB db = new UtilidadesDB();

            try
            {
                SqlCommand cmdAsociarDoc = db.GenerarStoreProcedure("sp_AgregarDocumentoTramite", tran.Connection);
                cmdAsociarDoc.Parameters.AddWithValue("@codigoTramite", idTramite);
                cmdAsociarDoc.Parameters.AddWithValue("@idDocumento", doc.Id);
                cmdAsociarDoc.Transaction = tran;
                db.GenerarValueReturn(cmdAsociarDoc);

                cmdAsociarDoc.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("Ya existe el documento asociado al tramite.");

                case -9:
                    throw new Exception("Error al asociar documento al tramite.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 3
0
        public void EliminarDocumento(int id, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();

                SqlCommand cmdEliminarDoc = db.GenerarStoreProcedure("sp_EliminarDocumento", conexion.GetSqlConnection());
                cmdEliminarDoc.Parameters.AddWithValue("@id", id);

                db.GenerarValueReturn(cmdEliminarDoc);

                cmdEliminarDoc.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No existe un documento con los datos ingresados.");

                case -9:
                    throw new Exception("Error al modificar documento.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 4
0
        public void EliminarEmpleado(Empleado empleado, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();
                SqlCommand cmdEliminarEmp = db.GenerarStoreProcedure("sp_EliminarEmpleado", conexion.GetSqlConnection());

                cmdEliminarEmp.Parameters.AddWithValue("doc", empleado.Documento);

                db.GenerarValueReturn(cmdEliminarEmp);

                cmdEliminarEmp.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro empleado para eliminar.");

                case -9:
                    throw new Exception("Error al eliminar empleado.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 5
0
        internal Documento BuscarDocumento(int id)
        {
            Conexion     conexion = new Conexion();
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                Documento doc = null;
                conexion.Conectar();

                SqlCommand cmdBuscarDoc = db.GenerarStoreProcedure("sp_BuscarDocumento", conexion.GetSqlConnection());
                cmdBuscarDoc.Parameters.AddWithValue("@id", id);

                db.GenerarValueReturn(cmdBuscarDoc);

                SqlDataReader rdDocumento = cmdBuscarDoc.ExecuteReader();

                if (rdDocumento.HasRows)
                {
                    rdDocumento.Read();
                    doc = new Documento(Convert.ToInt32(rdDocumento["Id"].ToString()), rdDocumento["Nombre"].ToString(), rdDocumento["LugarSolicitud"].ToString());
                    rdDocumento.Close();
                }

                return(doc);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 6
0
        public void ModificarTramite(TipoTramite tramite, Empleado user)
        {
            Conexion     conexion = new Conexion(user);
            UtilidadesDB db       = new UtilidadesDB();

            conexion.Conectar();
            SqlCommand cmdModificarTramite = db.GenerarStoreProcedure("sp_ModificarTipoTramite", conexion.GetSqlConnection());

            try
            {
                cmdModificarTramite.Parameters.AddWithValue("@codigo", tramite.Codigo);
                cmdModificarTramite.Parameters.AddWithValue("@nombre", tramite.Nombre);
                cmdModificarTramite.Parameters.AddWithValue("@descripcion", tramite.Descripcion);
                cmdModificarTramite.Parameters.AddWithValue("@precio", tramite.Precio);
                db.GenerarValueReturn(cmdModificarTramite);

                cmdModificarTramite.Transaction = conexion.GetSqlConnection().BeginTransaction();

                cmdModificarTramite.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No existe el tipo de tramite indicado.");

                case -9:
                    throw new Exception("Error al modificar tramite.");
                }

                EliminarDocumentosTramite(tramite.Codigo, cmdModificarTramite.Transaction);

                foreach (Documento doc in tramite.DocumentosRequeridos)
                {
                    AsociarDocumentoTramite(doc, tramite.Codigo, cmdModificarTramite.Transaction);
                }

                cmdModificarTramite.Transaction.Commit();
            }
            catch (Exception ex)
            {
                cmdModificarTramite.Transaction.Rollback();
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 7
0
        public void AgregarEmpleado(Empleado empleado, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();
                SqlCommand cmdAgregarEmp = db.GenerarStoreProcedure("sp_NuevoEmpleado", conexion.GetSqlConnection());

                cmdAgregarEmp.Parameters.AddWithValue("doc", empleado.Documento);
                cmdAgregarEmp.Parameters.AddWithValue("contrasena", empleado.Contrasena);
                cmdAgregarEmp.Parameters.AddWithValue("nombre", empleado.NombreCompleto);
                cmdAgregarEmp.Parameters.AddWithValue("horaEntrada", empleado.HoraEntrada);
                cmdAgregarEmp.Parameters.AddWithValue("horaSalida", empleado.HoraSalida);
                db.GenerarValueReturn(cmdAgregarEmp);

                cmdAgregarEmp.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se pudo crear el login empleado.");

                case -2:
                    throw new Exception("Error al crear nuevo empleado.");

                case -3:
                    throw new Exception("Ya existe un usuario con los datos ingresados.");

                case -9:
                    throw new Exception("Error al agregar empleado.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 8
0
        public void AgregarSolicitante(Solicitante solicitante)
        {
            Conexion     conexion = new Conexion();
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();
                SqlCommand cmdAgregarSolicitante = db.GenerarStoreProcedure("sp_NuevoSolicitante", conexion.GetSqlConnection());

                cmdAgregarSolicitante.Parameters.AddWithValue("@doc", solicitante.Documento);
                cmdAgregarSolicitante.Parameters.AddWithValue("@contrasena", solicitante.Contrasena);
                cmdAgregarSolicitante.Parameters.AddWithValue("@nombre", solicitante.NombreCompleto);
                cmdAgregarSolicitante.Parameters.AddWithValue("@telefono", solicitante.Telefono);

                db.GenerarValueReturn(cmdAgregarSolicitante);

                cmdAgregarSolicitante.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                case -2:
                    throw new Exception("No se pudo crear el usuario correctamente.");

                case -3:
                    throw new Exception("Ya existe usuario con los datos ingresados.");

                case -9:
                    throw new Exception("Error al crear el usuario.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 9
0
        public void EliminarTramite(TipoTramite tramite, Empleado user)
        {
            Conexion     conexion = new Conexion(user);
            UtilidadesDB db       = new UtilidadesDB();

            conexion.Conectar();

            SqlCommand cmdEliminarTramite = db.GenerarStoreProcedure("sp_EliminarTipoTramite", conexion.GetSqlConnection());

            try
            {
                cmdEliminarTramite.Transaction = conexion.GetSqlConnection().BeginTransaction();

                cmdEliminarTramite.Parameters.AddWithValue("@codigo", tramite.Codigo);
                db.GenerarValueReturn(cmdEliminarTramite);

                EliminarDocumentosTramite(tramite.Codigo, cmdEliminarTramite.Transaction);

                cmdEliminarTramite.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro tramite para eliminar.");

                case -9:
                    throw new Exception("Error al eliminar tramite.");
                }
                cmdEliminarTramite.Transaction.Commit();
            }
            catch (Exception ex)
            {
                cmdEliminarTramite.Transaction.Rollback();
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 10
0
        public void ModificarEmpleado(Empleado empleado, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();
                SqlCommand cmdModificarEmp = db.GenerarStoreProcedure("sp_ModificarEmpleado", conexion.GetSqlConnection());

                cmdModificarEmp.Parameters.AddWithValue("doc", empleado.Documento);
                cmdModificarEmp.Parameters.AddWithValue("contrasena", empleado.Contrasena);
                cmdModificarEmp.Parameters.AddWithValue("oldContrasena", userLogin.Contrasena);
                cmdModificarEmp.Parameters.AddWithValue("nombre", empleado.NombreCompleto);
                cmdModificarEmp.Parameters.AddWithValue("horaEntrada", empleado.HoraEntrada);
                cmdModificarEmp.Parameters.AddWithValue("horaSalida", empleado.HoraSalida);
                cmdModificarEmp.Parameters.AddWithValue("modificarContrasena", Convert.ToInt16(empleado.Documento == userLogin.Documento));

                db.GenerarValueReturn(cmdModificarEmp);

                cmdModificarEmp.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro empleado para modificar.");

                case -9:
                    throw new Exception("Error al modificar empleado.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 11
0
        public void AgregarSolicitud(Solicitud solicitud, Solicitante userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();

                SqlCommand cmdAgregarSolicitud = db.GenerarStoreProcedure("sp_AgregarSolicitud", conexion.GetSqlConnection());

                cmdAgregarSolicitud.Parameters.AddWithValue("@docSolicitante", solicitud.Emisor.Documento);
                cmdAgregarSolicitud.Parameters.AddWithValue("@fechaHora", solicitud.FechaHora);
                cmdAgregarSolicitud.Parameters.AddWithValue("@idTipoTramite", solicitud.Tipo.Codigo);

                db.GenerarValueReturn(cmdAgregarSolicitud);

                cmdAgregarSolicitud.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("Ya tiene una solicitud generada para esta fecha y hora.");

                case -2:
                    throw new Exception("Existe una solicitud del mismo tipo de tramite sin finalizar.");

                case -9:
                    throw new Exception("Error al generar nueva solicitud.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 12
0
        public void AgregarHorasExtras(Empleado empleado)
        {
            Conexion     conexion = new Conexion(empleado);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();
                SqlCommand cmdAgregarExtras = db.GenerarStoreProcedure("sp_AgregarExtras", conexion.GetSqlConnection());


                HoraExtra horaExtraActual = empleado.HorasExtrasGeneradas.FirstOrDefault(f => f.Fecha.Date == DateTime.Now);

                cmdAgregarExtras.Parameters.AddWithValue("doc", empleado.Documento);
                cmdAgregarExtras.Parameters.AddWithValue("fecha", horaExtraActual.Fecha);
                cmdAgregarExtras.Parameters.AddWithValue("minutos", horaExtraActual.Minutos);

                db.GenerarValueReturn(cmdAgregarExtras);

                cmdAgregarExtras.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro empleado.");

                case -9:
                    throw new Exception("Error al agregar extras empleado.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 13
0
        public void CambiarEstado(Solicitud solicitud, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();

                SqlCommand cmdCambiarEstado = db.GenerarStoreProcedure("sp_CambiarEstadoSolicitud", conexion.GetSqlConnection());

                cmdCambiarEstado.Parameters.AddWithValue("@codigo", solicitud.Codigo);
                cmdCambiarEstado.Parameters.AddWithValue("@estado", solicitud.Estado);

                db.GenerarValueReturn(cmdCambiarEstado);

                cmdCambiarEstado.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("No se encontro solicitud con el codigo ingresado.");

                case -9:
                    throw new Exception("Error al cambiar el estado de la solicitud.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }
Esempio n. 14
0
        public void AgregarDocumento(Documento nuevoDoc, Empleado userLogin)
        {
            Conexion     conexion = new Conexion(userLogin);
            UtilidadesDB db       = new UtilidadesDB();

            try
            {
                conexion.Conectar();

                SqlCommand cmdAgregarDoc = db.GenerarStoreProcedure("sp_AgregarDocumento", conexion.GetSqlConnection());

                cmdAgregarDoc.Parameters.AddWithValue("@codigo", nuevoDoc.Id);
                cmdAgregarDoc.Parameters.AddWithValue("@nombre", nuevoDoc.Nombre);
                cmdAgregarDoc.Parameters.AddWithValue("@lugarSolicitud", nuevoDoc.LugarSolicitud);
                db.GenerarValueReturn(cmdAgregarDoc);

                cmdAgregarDoc.ExecuteNonQuery();

                switch (db.GetValuerReturn())
                {
                case -1:
                    throw new Exception("Ya existe un documento con nombre y lugar ingresado.");

                case -9:
                    throw new Exception("Error al agregar documento.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conexion.Desconectar();
            }
        }