Beispiel #1
0
 /// <summary>
 /// Metodo para Guardar/Modificar una entidad Sintoma
 /// </summary>
 /// <param name="info"></param>
 /// <returns></returns>
 public int Guardar(SintomaInfo info)
 {
     try
     {
         Logger.Info();
         int id;
         if (info.SintomaID > 0)
         {
             info.FechaModificacion = da.FechaServidor();
             id = da.Actualizar <SintomaInfo>(info);
             //sintomaAccessor.ActualizarFechaModificacion(info.SintomaID);
         }
         else
         {
             id = da.Insertar <SintomaInfo>(info);
         }
         return(id);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Inicializa el Contexto
 /// </summary>
 private void InicializaContexto()
 {
     Contexto = new SintomaInfo
     {
         UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(),
     };
 }
        /// <summary>
        /// Metodo que valida los datos para guardar
        /// </summary>
        /// <returns></returns>
        private bool ValidaGuardar()
        {
            bool   resultado = true;
            string mensaje   = string.Empty;

            try
            {
                if (string.IsNullOrWhiteSpace(txtSintomaID.Text))
                {
                    resultado = false;
                    mensaje   = Properties.Resources.SintomaEdicion_MsgSintomaIDRequerida;
                    txtSintomaID.Focus();
                }
                else if (string.IsNullOrWhiteSpace(txtDescripcion.Text) || Contexto.Descripcion == string.Empty)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.SintomaEdicion_MsgDescripcionRequerida;
                    txtDescripcion.Focus();
                }
                else if (cmbActivo.SelectedItem == null)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.SintomaEdicion_MsgActivoRequerida;
                    cmbActivo.Focus();
                }
                else
                {
                    int    sintomaId   = Extensor.ValorEntero(txtSintomaID.Text);
                    string descripcion = txtDescripcion.Text;

                    var         sintomaBL = new SintomaBL();
                    SintomaInfo sintoma   = sintomaBL.ObtenerPorDescripcion(descripcion);

                    if (sintoma != null && (sintomaId == 0 || sintomaId != sintoma.SintomaID))
                    {
                        resultado = false;
                        mensaje   = string.Format(Properties.Resources.SintomaEdicion_MsgDescripcionExistente, sintoma.SintomaID);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning);
            }
            return(resultado);
        }
Beispiel #4
0
 /// <summary>
 /// Obtiene la lista para mostrar en el grid
 /// </summary>
 private void ObtenerListaSintoma(int inicio, int limite)
 {
     try
     {
         var sintomaBL = new SintomaBL();
         if (!string.IsNullOrWhiteSpace(Contexto.Descripcion) ||
             !string.IsNullOrWhiteSpace(descripcionAnterior))
         {
             if (string.Compare(Contexto.Descripcion, descripcionAnterior, StringComparison.CurrentCultureIgnoreCase) != 0)
             {
                 inicio = 1;
                 ucPaginacion.Inicio = 1;
             }
         }
         descripcionAnterior = Contexto.Descripcion;
         SintomaInfo filtros = ObtenerFiltros();
         if (ucPaginacion.ContextoAnterior != null)
         {
             bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior);
             if (!contextosIguales)
             {
                 ucPaginacion.Inicio = 1;
                 inicio = 1;
             }
         }
         var pagina = new PaginacionInfo {
             Inicio = inicio, Limite = limite
         };
         ResultadoInfo <SintomaInfo> resultadoInfo = sintomaBL.ObtenerPorPagina(pagina, filtros);
         if (resultadoInfo != null && resultadoInfo.Lista != null &&
             resultadoInfo.Lista.Count > 0)
         {
             gridDatos.ItemsSource       = resultadoInfo.Lista;
             ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros;
         }
         else
         {
             ucPaginacion.TotalRegistros = 0;
             gridDatos.ItemsSource       = new List <Sintoma>();
         }
     }
     catch (ExcepcionGenerica)
     {
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Sintoma_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Sintoma_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
 }
Beispiel #5
0
        public void CuentaGuardarDescripcionExistente()
        {
            var bl = new SIE.Services.Servicios.BL.SintomaBL();

            SintomaInfo sintoma = null;

            try
            {
                sintoma = bl.ObtenerPorDescripcion("Dificultadad para Respirar");
                var lista = bl.ObtenerPorProblema(1);
            }
            catch (Exception)
            {
                Assert.AreEqual(sintoma.SintomaID, 0);
            }
        }
 /// <summary>
 /// Evento que se ejecuta mientras se esta cerrando la ventana
 /// </summary>
 /// <param name="e"></param>
 protected override void OnClosing(CancelEventArgs e)
 {
     if (confirmaSalir)
     {
         MessageBoxResult result = SkMessageBox.Show(this, Properties.Resources.Msg_CerrarSinGuardar, MessageBoxButton.YesNo,
                                                     MessageImage.Question);
         if (result == MessageBoxResult.Yes)
         {
             Contexto = null;
         }
         else
         {
             e.Cancel = true;
         }
     }
 }
Beispiel #7
0
        /// <summary>
        /// Carga los objetos de Sintoma de la lista ProblemaSintoma
        /// </summary>
        /// <returns></returns>
        private void CargarSintomas(IEnumerable <ProblemaSintomaInfo> lista)
        {
            var sintomaDAL = new SintomaDAL();
            IQueryable <SintomaInfo> listaSintomas = sintomaDAL.ObtenerTodos();

            foreach (var problemaSintoma in lista)
            {
                SintomaInfo sintoma =
                    listaSintomas.FirstOrDefault(pro => pro.SintomaID == problemaSintoma.SintomaID);
                if (sintoma == null)
                {
                    continue;
                }
                problemaSintoma.Sintoma = sintoma;
            }
        }
Beispiel #8
0
 /// <summary>
 /// Obtiene una lista paginada de Sintoma
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 public ResultadoInfo <SintomaInfo> ObtenerPorPagina(PaginacionInfo pagina, SintomaInfo filtro)
 {
     try
     {
         Logger.Info();
         return(sintomaDAL.ObtenerPorPagina(pagina, filtro));
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Beispiel #9
0
 /// <summary>
 /// Metodo para Guardar/Modificar una entidad Sintoma
 /// </summary>
 /// <param name="info"></param>
 /// <returns></returns>
 public int Guardar(SintomaInfo info)
 {
     try
     {
         Logger.Info();
         return(sintomaDAL.Guardar(info));
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Beispiel #10
0
 /// <summary>
 /// Obtiene una entidad de Sintoma por su Id
 /// </summary>
 /// <param name="sintoma">Obtiene una entidad Sintoma por su Id</param>
 /// <returns></returns>
 public SintomaInfo ObtenerPorID(SintomaInfo sintoma)
 {
     try
     {
         Logger.Info();
         return(sintomaDAL.ObtenerTodos().FirstOrDefault(e => e.SintomaID == sintoma.SintomaID));
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Beispiel #11
0
        /// <summary>
        /// Obtiene una lista paginada de Sintoma
        /// </summary>
        /// <param name="pagina"></param>
        /// <param name="filtro"></param>
        /// <returns></returns>
        public ResultadoInfo <SintomaInfo> ObtenerPorPagina(PaginacionInfo pagina, SintomaInfo filtro)
        {
            try
            {
                Logger.Info();
                var result    = new ResultadoInfo <SintomaInfo>();
                var condicion = da.Tabla <SintomaInfo>().Where(e => e.Activo == filtro.Activo);
                if (filtro.SintomaID > 0)
                {
                    condicion = condicion.Where(e => e.SintomaID == filtro.SintomaID);
                }
                if (!string.IsNullOrEmpty(filtro.Descripcion))
                {
                    condicion = condicion.Where(e => e.Descripcion.Contains(filtro.Descripcion));
                }
                result.TotalRegistros = condicion.Count();

                int inicio = pagina.Inicio;
                int limite = pagina.Limite;
                if (inicio > 1)
                {
                    int limiteReal = (limite - inicio) + 1;
                    inicio = (limite / limiteReal);
                    limite = limiteReal;
                }
                var paginado = condicion
                               .OrderBy(e => e.Descripcion)
                               .Skip((inicio - 1) * limite)
                               .Take(limite);

                result.Lista = paginado.ToList();

                return(result);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
        }
 /// <summary>
 /// Constructor para editar una entidad Sintoma Existente
 /// </summary>
 /// <param name="sintomaInfo"></param>
 public SintomaEdicion(SintomaInfo sintomaInfo)
 {
     InitializeComponent();
     sintomaInfo.UsuarioModificacionID = AuxConfiguracion.ObtenerUsuarioLogueado();
     Contexto = sintomaInfo;
 }