public IActionResult Post(CorrespondenciaRequestDto correspondencia)
 {
     try
     {
         var result = _correspondenciaBL.Create(correspondencia);
         return(Ok(result));
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
     }
 }
Пример #2
0
        /// <summary>
        /// Registra un comunicado en la base de datos
        /// </summary>
        /// <param name="correspondencia">data del comunicado a radicar</param>
        /// <returns>Dto con la información del comunicado radicado</returns>
        public CorrespondenciaResponseDto Create(CorrespondenciaRequestDto correspondencia)
        {
            if (correspondencia.DestinatarioId < 1)
            {
                throw new ArgumentException("El destinatario no es válido");
            }

            if (correspondencia.RemitenteId < 1)
            {
                throw new ArgumentException("El remitente no es válido");
            }

            if (string.IsNullOrEmpty(correspondencia.FechaRadicacion))
            {
                throw new ArgumentException("La fecha de radicación es requerida.");
            }

            if (string.IsNullOrEmpty(correspondencia.Tipo))
            {
                throw new ArgumentException("El tipo de comunicación no es válido.");
            }

            if (string.IsNullOrEmpty(correspondencia.Archivo))
            {
                throw new ArgumentException("El archivo del documento a radicar es requerido.");
            }

            var radicado = _correspondenciaRepository.Create(correspondencia);

            var result = new CorrespondenciaResponseDto
            {
                NumeroRadicado    = radicado.Item1,
                CorrespondenciaId = radicado.Item2,
            };

            return(result);
        }