adding despesas e receitas
This commit is contained in:
54
OpenCand.ETL/Services/DespesaReceitaService.cs
Normal file
54
OpenCand.ETL/Services/DespesaReceitaService.cs
Normal file
@@ -0,0 +1,54 @@
|
||||
using OpenCand.Core.Models;
|
||||
using OpenCand.Repository;
|
||||
|
||||
namespace OpenCand.ETL.Services
|
||||
{
|
||||
public class DespesaReceitaService
|
||||
{
|
||||
private readonly DespesaReceitaRepository despesaReceitaRepository;
|
||||
private readonly CandidatoRepository candidatorepository;
|
||||
|
||||
public DespesaReceitaService(DespesaReceitaRepository despesaReceitaRepository, CandidatoRepository candidatoRepository)
|
||||
{
|
||||
this.despesaReceitaRepository = despesaReceitaRepository;
|
||||
this.candidatorepository = candidatoRepository;
|
||||
}
|
||||
|
||||
public async Task AddDespesaAsync(Despesa despesa)
|
||||
{
|
||||
if (despesa == null || string.IsNullOrEmpty(despesa.SqCandidato))
|
||||
{
|
||||
throw new ArgumentNullException(nameof(despesa), "Despesa cannot be null");
|
||||
}
|
||||
|
||||
var idCandidato = await candidatorepository.GetIdCandidatoBySqCandidato(despesa.SqCandidato);
|
||||
if (idCandidato == Guid.Empty)
|
||||
{
|
||||
throw new ArgumentException($"Candidato with SqCandidato {despesa.SqCandidato} not found.");
|
||||
}
|
||||
|
||||
despesa.IdCandidato = (Guid)idCandidato;
|
||||
|
||||
await despesaReceitaRepository.AddDespesaAsync(despesa);
|
||||
}
|
||||
|
||||
public async Task AddReceitaAsync(Receita receita)
|
||||
{
|
||||
if (receita == null || string.IsNullOrEmpty(receita.SqCandidato))
|
||||
{
|
||||
throw new ArgumentNullException(nameof(receita), "Receita cannot be null");
|
||||
}
|
||||
|
||||
var idCandidato = await candidatorepository.GetIdCandidatoBySqCandidato(receita.SqCandidato);
|
||||
if (idCandidato == Guid.Empty)
|
||||
{
|
||||
throw new ArgumentException($"Candidato with SqCandidato {receita.SqCandidato} not found.");
|
||||
}
|
||||
|
||||
receita.IdCandidato = (Guid)idCandidato;
|
||||
|
||||
await despesaReceitaRepository.AddReceitaAsync(receita);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user