public void AltaTramite(Tramite tramite, Empleado empLog) { SqlConnection conexion = null; SqlTransaction transaccion = null; try { conexion = new SqlConnection(Conexion.ObtenerCadenaConexion(empLog.Documento, empLog.Contrasenia)); SqlCommand cmdAltaTramite = new SqlCommand("AltaTramite", conexion); cmdAltaTramite.CommandType = CommandType.StoredProcedure; cmdAltaTramite.Parameters.AddWithValue("@codigoTramite", tramite.CodigoTramite); cmdAltaTramite.Parameters.AddWithValue("@nombreTramite", tramite.NombreTramite); cmdAltaTramite.Parameters.AddWithValue("@descripcion", tramite.Descripcion); cmdAltaTramite.Parameters.AddWithValue("@precio", tramite.Precio); SqlParameter valorRetorno = new SqlParameter("@valorRetorno", SqlDbType.Int); valorRetorno.Direction = ParameterDirection.ReturnValue; cmdAltaTramite.Parameters.Add(valorRetorno); conexion.Open(); transaccion = conexion.BeginTransaction(); cmdAltaTramite.Transaction = transaccion; cmdAltaTramite.ExecuteNonQuery(); switch ((int)valorRetorno.Value) { case -1: throw new Exception("El tipo de trámite ya existe."); break; case -2: throw new Exception("Ocurrió un error al agregar el tipo de trámite."); break; } PersistenciaExigen.BajaExigen(tramite, transaccion); foreach (Documentacion doc in tramite.DocumentacionExigida) { PersistenciaExigen.AltaExigen(doc, tramite, transaccion); } transaccion.Commit(); } catch (Exception ex) { transaccion.Rollback(); throw new Exception(ex.Message); } finally { if (conexion != null) { conexion.Close(); } } }
public static PersistenciaExigen getInstancia() { if (_instancia == null) { _instancia = new PersistenciaExigen(); } return(_instancia); }
public List <Tramite> ListarTramites() { SqlConnection conexion = null; SqlDataReader drTramite = null; Tramite tramite = null; List <Tramite> listaTramites = new List <Tramite>(); List <Documentacion> documentacion = new List <Documentacion>(); try { conexion = new SqlConnection(Conexion.CadenaConexion); SqlCommand cmdBuscarTramite = new SqlCommand("ListadoTramites", conexion); cmdBuscarTramite.CommandType = CommandType.StoredProcedure; conexion.Open(); drTramite = cmdBuscarTramite.ExecuteReader(); while (drTramite.Read()) { documentacion = PersistenciaExigen.getInstancia().listadoDocumentacionExigida((string)drTramite["codigoTramite"]); tramite = new Tramite((string)drTramite["codigoTramite"], (string)drTramite["nombreTramite"], (string)drTramite["descripcion"], (decimal)drTramite["precio"], documentacion, (bool)drTramite["activo"]); listaTramites.Add(tramite); } return(listaTramites); } catch (Exception ex) { throw new Exception(ex.Message); } finally { if (drTramite != null) { drTramite.Close(); } if (conexion != null) { conexion.Close(); } } }
public Tramite BuscarTramiteAux(string codigoTramite, Usuario usLog) { SqlConnection conexion = null; SqlDataReader drTramite = null; Tramite tramite = null; List <Documentacion> documentacion = null; try { conexion = new SqlConnection(Conexion.ObtenerCadenaConexion(usLog.Documento, usLog.Contrasenia)); SqlCommand cmdBuscarTramite = new SqlCommand("BuscarTramiteAux", conexion); cmdBuscarTramite.CommandType = CommandType.StoredProcedure; cmdBuscarTramite.Parameters.AddWithValue("@codigoTramite", codigoTramite); conexion.Open(); drTramite = cmdBuscarTramite.ExecuteReader(); if (drTramite.Read()) { documentacion = PersistenciaExigen.getInstancia().listadoDocumentacionExigida((string)drTramite["codigoTramite"]); tramite = new Tramite((string)drTramite["codigoTramite"], (string)drTramite["nombreTramite"], (string)drTramite["descripcion"], (decimal)drTramite["precio"], documentacion, (bool)drTramite["activo"]); } return(tramite); } catch (Exception ex) { throw new Exception(ex.Message); } finally { if (drTramite != null) { drTramite.Close(); } if (conexion != null) { conexion.Close(); } } }