public IResultado <Profesional> Crear(Profesional profesional) { Resultado <Profesional> resultado = new Resultado <Profesional>(); try { decimal id = _domain.Crear(profesional); profesional.IdProfesional = id; resultado.Retorno = profesional; } catch (SqlException ex) { resultado.Correcto = false; if (ex.Errors.Count > 0) { // Violación de constraint UNIQUE if (ex.Class == 14 && (ex.Number == 2627 || ex.Number == 50000)) { resultado.Mensajes.Add("No se permite valores repetidos para los campos 'Nro de Documento' o 'Matricula'."); } } resultado.Mensajes.Add(ex.Message); } catch (Exception ex) { resultado.Correcto = false; resultado.Mensajes.Add(ex.Message); } return(resultado); }
public IResultado <Especialidad> Crear(Especialidad especialidad) { Resultado <Especialidad> resultado = new Resultado <Especialidad>(); try { decimal id = _domain.Crear(especialidad); especialidad.IdEspecialidad = id; resultado.Retorno = especialidad; } catch (SqlException ex) { resultado.Correcto = false; if (ex.Errors.Count > 0) { // Violación de constraint UNIQUE if (ex.Class == 14 && (ex.Number == 2627 || ex.Number == 50000)) { resultado.Mensajes.Add("No se permite valores repetidos para los campos."); } } resultado.Mensajes.Add(ex.Message); } catch (Exception ex) { resultado.Correcto = false; resultado.Mensajes.Add(ex.Message); } return(resultado); }
public IResultado <Agenda> Alta(Agenda nuevaAgenda, IList <DiaAgenda> diasAgenda, IList <FechaExcepcion> excepciones) { Resultado <Agenda> resultado = new Resultado <Agenda>(); try { if (!_dal.AgendaValida(nuevaAgenda)) { resultado.Correcto = false; resultado.Mensajes.Add("Hay una superposición en los días de la agenda."); return(resultado); } nuevaAgenda.Id = _domain.Crear(nuevaAgenda); foreach (DiaAgenda diaAgenda in diasAgenda) { diaAgenda.Id = nuevaAgenda.Id; decimal idDia = _dalDiaAgenda.Crear(diaAgenda); //Asocia la agenda creada con los días. } foreach (FechaExcepcion exc in excepciones) { exc.IdAgenda = nuevaAgenda.Id; decimal idExcepcion = _dalDiaAgenda.CrearExcepcion(exc); } resultado.Retorno = nuevaAgenda; } catch (SqlException ex) { resultado.Correcto = false; if (ex.Errors.Count > 0) { // Violación de constraint UNIQUE if (ex.Class == 14 && (ex.Number == 2627 || ex.Number == 50000)) { resultado.Mensajes.Add("No se permite valores repetidos."); } } resultado.Mensajes.Add(ex.Message); } catch (Exception ex) { resultado.Correcto = false; resultado.Mensajes.Add(ex.Message); } return(resultado); }
public IResultado <TipoEspecialidad> Crear(TipoEspecialidad especialidad) { Resultado <TipoEspecialidad> resultado = new Resultado <TipoEspecialidad>(); try { decimal id = _domain.Crear(especialidad); especialidad.Id = id; resultado.Retorno = especialidad; } catch (Exception ex) { resultado.Correcto = false; resultado.Mensajes.Add(ex.Message); } return(resultado); }
public IResultado <Rol> Alta(Rol nuevoRol, IList <Funcionalidad> funcionalidades) { Resultado <Rol> resultado = new Resultado <Rol>(); try { decimal id = _domain.Crear(nuevoRol); nuevoRol.Id = id; foreach (Funcionalidad func in funcionalidades) { _dal.AsociarRolFuncionalidad(nuevoRol.Id, func.IdFuncionalidad); } resultado.Retorno = nuevoRol; } catch (SqlException ex) { resultado.Correcto = false; if (ex.Errors.Count > 0) { // Violación de constraint UNIQUE if (ex.Class == 14 && (ex.Number == 2627 || ex.Number == 50000)) { resultado.Mensajes.Add("No se permite valores repetidos para el campo nombre."); } } resultado.Mensajes.Add(ex.Message); } catch (Exception ex) { resultado.Correcto = false; resultado.Mensajes.Add(ex.Message); } return(resultado); }