123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using ConcursoProjetos.Data;
- using ConcursoProjetos.Domain.Entities;
- using Microsoft.CodeAnalysis;
- using Microsoft.EntityFrameworkCore;
- namespace ConcursoProjetos.Service;
- public interface ICandidatoService
- {
- bool Registar(Candidato candidato);
- Candidato? ObterPorUserID(string userId);
- bool AlterarRegistro(Candidato candidato);
- }
- public class CandidatoService : ICandidatoService
- {
- private readonly IDbContextFactory<ApplicationDbContext> _dbContextFactory;
- public CandidatoService(IDbContextFactory<ApplicationDbContext> dbContextFactory)
- {
- _dbContextFactory = dbContextFactory;
- }
- public bool Registar(Candidato candidato)
- {
- using var context = _dbContextFactory.CreateDbContext();
- context.Candidato.Add(candidato);
- context.SaveChanges();
- return true;
- }
- public bool AlterarRegistro(Candidato candidato)
- {
- using var context = _dbContextFactory.CreateDbContext();
- var existingCandidate = context.Candidato.Find(candidato.Id);
- if (existingCandidate != null)
- {
- context.Entry(existingCandidate).CurrentValues.SetValues(candidato);
- context.SaveChanges();
- return true;
- }
- return false;
- }
- public Candidato? ObterPorUserID(string userId)
- {
- using var context = _dbContextFactory.CreateDbContext();
- var retorno = context.Candidato.Where(c => c.UserId.ToLower() == userId.ToLower()).FirstOrDefault();
- return retorno;
- }
- }
|