예제 #1
0
        protected override void AccionAceptar()
        {
            try
            {
                Profesional prof = this.ObtenerProfesional();
                IResultado <Profesional> resultado = _profesionalDomain.Modificar(prof);
                if (!resultado.Correcto)
                {
                    throw new ResultadoIncorrectoException <Profesional>(resultado);
                }

                var resultadoLimpiarEspecialidades = _profesionalDomain.LimpiarEspecialidades(prof);
                if (!resultadoLimpiarEspecialidades.Correcto)
                {
                    throw new ResultadoIncorrectoException <bool>(resultadoLimpiarEspecialidades);
                }

                foreach (Especialidad especialidad in lstEspecialidades.Items.Cast <Especialidad>())
                {
                    var resultadoAsociar = _profesionalDomain.AsociarProfesionalEspecialidad(prof, especialidad);
                    if (!resultadoAsociar.Correcto)
                    {
                        throw new ResultadoIncorrectoException <bool>(resultadoAsociar);
                    }
                }
                MensajePorPantalla.MensajeInformativo(this, "Modificado con éxito");
                this.Close();
            }
            catch (Exception ex)
            {
                MensajePorPantalla.MensajeError(ex.Message);
            }
        }
        protected override void AccionAceptar()
        {
            try
            {
                Profesional prof = this.ObtenerProfesional();
                IResultado <Profesional> resultado = _profesionalDomain.Crear(prof);
                if (!resultado.Correcto)
                {
                    throw new ResultadoIncorrectoException <Profesional>(resultado);
                }

                foreach (Especialidad especialidad in lstEspecialidades.Items.Cast <Especialidad>())
                {
                    _profesionalDomain.AsociarProfesionalEspecialidad(prof, especialidad);
                }
                MensajePorPantalla.MensajeInformativo(this, "Se ha registrado al profesional con éxito");
                this.Close();
            }
            catch (Exception ex)
            {
                MensajePorPantalla.MensajeError(ex.Message);
            }
        }