Esempio n. 1
0
        public PagarNotaFiscalResposta PagarNotaFiscal(PagarNotaFiscalRequisicao requisicao)
        {
            var nota       = _notaFiscalRepositorio.ObterPor(requisicao.CodigoDaNota);
            var dataUpload = SystemTime.Now;
            var pagamento  = new Pagamento
            {
                Comprovante   = new Arquivo(requisicao.DescricaoDoComprovante, requisicao.NomeDoComprovante, dataUpload),
                Observacao    = requisicao.Observacao,
                DataPagamento = requisicao.DataPagamento
            };

            _repositorioDeArquivos.ArmazenarArquivo(requisicao.Comprovante, requisicao.NomeDoComprovante, dataUpload);
            nota.Pagar(pagamento);
            _unitOfWork.Commit();
            return(new PagarNotaFiscalResposta()
            {
                Sucesso = true
            });
        }