/// <summary>
        /// Realiza la eliminación de una sección de parámetro
        /// </summary>
        /// <param name="filtro">Sección a Eliminar</param>
        /// <returns>Indicador de Error</returns>
        public ProcessResult <string> EliminarParametroSeccion(ParametroSeccionRequest filtro, bool autoGuardado = true)
        {
            string result           = "0";
            var    resultadoProceso = new ProcessResult <string>();

            try
            {
                parametroSeccionEntityRepository.Eliminar(filtro.CodigoParametro, filtro.CodigoSeccion);

                if (autoGuardado)
                {
                    parametroSeccionEntityRepository.GuardarCambios();
                }

                resultadoProceso.Result    = "1";
                resultadoProceso.IsSuccess = true;
            }
            catch (Exception)
            {
                result = "-1";
                resultadoProceso.Result    = result;
                resultadoProceso.IsSuccess = false;
            }
            return(resultadoProceso);
        }
Exemple #2
0
        /// <summary>
        /// Obtiene un entity de Parámetro Sección apartir de su request
        /// </summary>
        /// <param name="parametroSeccionRequest">Request de Parámetro Sección</param>
        /// <returns>Entity del Parámetro Sección</returns>
        public static ParametroSeccionEntity ObtenerParametroSeccionEntity(ParametroSeccionRequest parametroSeccionRequest)
        {
            var entity = new ParametroSeccionEntity();

            entity.CodigoParametro           = Convert.ToInt32(parametroSeccionRequest.CodigoParametro);
            entity.CodigoSeccion             = Convert.ToInt32(parametroSeccionRequest.CodigoSeccion);
            entity.CodigoTipoDato            = parametroSeccionRequest.CodigoTipoDato;
            entity.IndicadorObligatorio      = Convert.ToBoolean(parametroSeccionRequest.IndicadorObligatorio);
            entity.IndicadorPermiteModificar = Convert.ToBoolean(parametroSeccionRequest.IndicadorPermiteModificar);
            entity.Nombre = parametroSeccionRequest.Nombre;
            entity.CodigoParametroRelacionado      = parametroSeccionRequest.CodigoParametroRelacionado;
            entity.CodigoSeccionRelacionado        = parametroSeccionRequest.CodigoSeccionRelacionado;
            entity.CodigoSeccionRelacionadoMostrar = parametroSeccionRequest.CodigoSeccionRelacionadoMostrar;
            entity.EstadoRegistro = parametroSeccionRequest.EstadoRegistro;
            return(entity);
        }
        /// <summary>
        /// Realiza el registro de un Parámetro Sección
        /// </summary>
        /// <param name="filtro">Parámetro Sección a Registrar</param>
        /// <returns>Indicador de Error</returns>
        public ProcessResult <string> RegistrarParametroSeccion(ParametroSeccionRequest filtro)
        {
            string result           = "0";
            var    resultadoProceso = new ProcessResult <string>();

            try
            {
                if (filtro.CodigoParametro == null)
                {
                    throw new Exception();
                }

                var seccionRepetida = BuscarParametroSeccion(new ParametroSeccionRequest()
                {
                    CodigoParametro = filtro.CodigoParametro,
                    Nombre          = filtro.Nombre
                }).Result.Where(item => filtro.CodigoSeccion == null || item.CodigoSeccion != filtro.CodigoSeccion).FirstOrDefault();

                if (seccionRepetida != null)
                {
                    result = "2";
                    resultadoProceso.Result    = result;
                    resultadoProceso.IsSuccess = true;

                    return(resultadoProceso);
                }
                if (filtro.CodigoSeccion == null)
                {
                    var parametroSeccionUltimo = BuscarParametroSeccion(new ParametroSeccionRequest()
                    {
                        CodigoParametro = filtro.CodigoParametro,
                        EstadoRegistro  = null
                    }).Result.OrderByDescending(item => item.CodigoSeccion).FirstOrDefault();
                    filtro.CodigoSeccion = parametroSeccionUltimo != null ? parametroSeccionUltimo.CodigoSeccion + 1 : 1;

                    parametroSeccionEntityRepository.Insertar(ParametroSeccionAdapter.ObtenerParametroSeccionEntity(filtro));
                }
                else
                {
                    var entity       = ParametroSeccionAdapter.ObtenerParametroSeccionEntity(filtro);
                    var entityActual = parametroSeccionEntityRepository.GetById(filtro.CodigoParametro, filtro.CodigoSeccion);

                    entityActual.Nombre                          = entity.Nombre;
                    entityActual.CodigoTipoDato                  = entity.CodigoTipoDato;
                    entityActual.IndicadorPermiteModificar       = entity.IndicadorPermiteModificar;
                    entityActual.IndicadorObligatorio            = entity.IndicadorObligatorio;
                    entityActual.CodigoParametroRelacionado      = entity.CodigoParametroRelacionado;
                    entityActual.CodigoSeccionRelacionado        = entity.CodigoSeccionRelacionado;
                    entityActual.CodigoSeccionRelacionadoMostrar = entity.CodigoSeccionRelacionadoMostrar;

                    parametroSeccionEntityRepository.Editar(entityActual);
                }

                parametroSeccionEntityRepository.GuardarCambios();
                resultadoProceso.IsSuccess = true;
            }
            catch (Exception e)
            {
                result = "-1";
                resultadoProceso.Result    = result;
                resultadoProceso.IsSuccess = false;
                resultadoProceso.Exception = new ApplicationLayerException <ParametroValorService>(e);
            }
            return(resultadoProceso);
        }
        /// <summary>
        /// Realiza la busqueda de Sección Parámetro
        /// </summary>
        /// <param name="filtro">Filtro de Sección Parámetro</param>
        /// <returns>Listado de Parámetro Sección</returns>
        public ProcessResult <List <ParametroSeccionResponse> > BuscarParametroSeccion(ParametroSeccionRequest filtro)
        {
            ProcessResult <List <ParametroSeccionResponse> > resultado = new ProcessResult <List <ParametroSeccionResponse> >();

            try
            {
                var listado = parametroSeccionLogicRepository.BuscarParametroSeccion(filtro.CodigoParametro, filtro.CodigoSeccion, filtro.Nombre, filtro.CodigoTipoDato, filtro.IndicadorPermiteModificar, filtro.IndicadorObligatorio, filtro.IndicadorSistema, filtro.EstadoRegistro);
                var listaParametroSeccion = new List <ParametroSeccionResponse>();
                foreach (var item in listado)
                {
                    listaParametroSeccion.Add(ParametroSeccionAdapter.ObtenerParametroSeccionResponse(item));
                }
                resultado.Result    = listaParametroSeccion;
                resultado.IsSuccess = true;
            }
            catch (Exception e)
            {
                resultado.Result    = new List <ParametroSeccionResponse>();
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <ParametroValorService>(e);
            }

            return(resultado);
        }
        /// <summary>
        /// Permite realizar la busqueda de las Secciones del Parámetro
        /// </summary>
        /// <param name="codigoParametro">Código de Parámetro</param>
        /// <returns>Json</returns>
        public JsonResult GuardarSeccionParametro(ParametroSeccionRequest seccion)
        {
            var resultado = parametroSeccionService.RegistrarParametroSeccion(seccion);

            return(Json(resultado));
        }