Ejemplo n.º 1
0
        /// <summary>
        /// Permite obtener una Observacion Planeada Entity
        /// </summary>
        /// <param name="CodigoExpediente"></param>
        /// <returns>Entidad Observacion Planeada Response</returns>
        public ProcessResult <AccionEstrategicaSectorialResponse> ObtenerAccionEstrategicaSectorial(AccionEstrategicaSectorialRequest data)
        {
            ProcessResult <AccionEstrategicaSectorialResponse> resultado = new ProcessResult <AccionEstrategicaSectorialResponse>();

            resultado.Result = new AccionEstrategicaSectorialResponse();
            try
            {
                if (data.CodigoAccionEstrategicaSectorial.HasValue)
                {
                    BandejaAccionEstrategicaSectorialRequest modelo = new BandejaAccionEstrategicaSectorialRequest();
                    modelo.CodigoAccionEstrategicaSectorial = data.CodigoAccionEstrategicaSectorial;
                    modelo.CodigoIdioma = data.CodigoIdioma;

                    AccionEstrategicaSectorialEntity AccionEstrategicaSectorialEntity = accionEstrategicaSectorialEntityRepository.GetById(data.CodigoAccionEstrategicaSectorial);

                    if (AccionEstrategicaSectorialEntity != null)
                    {
                        ResponsableEntity responsableEntity = responsableEntityRepository.GetById(AccionEstrategicaSectorialEntity.CodigoResponsable);

                        resultado.Result = Mapper.Map <AccionEstrategicaSectorialEntity, AccionEstrategicaSectorialResponse>(AccionEstrategicaSectorialEntity);
                        resultado.Result.NombreCompletoResponsable = responsableEntity.Nombres + " " + responsableEntity.ApellidoPaterno + " " + responsableEntity.ApellidoMaterno;
                    }
                }
            }
            catch (Exception ex)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <AccionEstrategicaSectorialService>(ex.Message);
            }
            return(resultado);
        }
Ejemplo n.º 2
0
        public ProcessResult <AccionEstrategicaSectorialResponse> RegistrarAccionEstrategicaSectorial(AccionEstrategicaSectorialRequest data)
        {
            ProcessResult <AccionEstrategicaSectorialResponse> resultado = new ProcessResult <AccionEstrategicaSectorialResponse>();

            resultado.Result = new AccionEstrategicaSectorialResponse();
            try
            {
                using (TransactionScope ts = new TransactionScope())
                {
                    AccionEstrategicaSectorialEntity accionEstrategicaSectorialSincronizar = accionEstrategicaSectorialEntityRepository.GetById(data.CodigoAccionEstrategicaSectorial);
                    AccionEstrategicaSectorialEntity accionEstrategicaSectorialGeneral     = Mapper.Map <AccionEstrategicaSectorialRequest, AccionEstrategicaSectorialEntity>(data);

                    if (accionEstrategicaSectorialSincronizar != null)
                    {
                        Mapper.Map <AccionEstrategicaSectorialEntity, AccionEstrategicaSectorialEntity>(accionEstrategicaSectorialGeneral, accionEstrategicaSectorialSincronizar);
                        accionEstrategicaSectorialSincronizar.EstadoRegistro = DatosConstantes.EstadoRegistro.Activo;
                        accionEstrategicaSectorialEntityRepository.Editar(accionEstrategicaSectorialSincronizar);
                        resultado.Result.CodigoAccionEstrategicaSectorial      = data.CodigoAccionEstrategicaSectorial;
                        resultado.Result.NombreAccionEstrategicaSectorial      = data.NombreAccionEstrategicaSectorial;
                        resultado.Result.DescripcionAccionEstrategicaSectorial = data.DescripcionAccionEstrategicaSectorial;
                        resultado.Result.CodigoResponsable = data.CodigoResponsable;
                        resultado.Result.EstadoRegistro    = DatosConstantes.EstadoRegistro.Activo;
                    }
                    else
                    {
                        accionEstrategicaSectorialEntityRepository.Insertar(accionEstrategicaSectorialGeneral);
                        bool registroExitoso = resultado.IsSuccess;
                        if (!registroExitoso)
                        {
                            resultado.IsSuccess = false;
                            resultado.Exception = new ApplicationLayerException <AccionEstrategicaSectorialService>(MensajesSistemaResource.EtiquetaError);
                        }
                        resultado.Result.CodigoAccionEstrategicaSectorial = accionEstrategicaSectorialGeneral.CodigoAccionEstrategicaSectorial;
                    }

                    accionEstrategicaSectorialEntityRepository.GuardarCambios();
                    ts.Complete();
                }
            }
            catch (Exception ex)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <AccionEstrategicaSectorialService>(ex.Message);
            }
            return(resultado);
        }