From 674ca83ba9243a9e95a7568c797668dab6aee26a Mon Sep 17 00:00:00 2001 From: Lucas Faria Mendes Date: Mon, 30 Mar 2026 10:35:25 -0300 Subject: feat: upload files --- .../ControleFinanceiroRepository.cs | 73 ++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ControleFinanceiroRepository.cs (limited to 'Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ControleFinanceiroRepository.cs') diff --git a/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ControleFinanceiroRepository.cs b/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ControleFinanceiroRepository.cs new file mode 100644 index 0000000..15ac6ff --- /dev/null +++ b/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ControleFinanceiroRepository.cs @@ -0,0 +1,73 @@ +using AutoMapper; +using Gestor.Infrastructure.Entities.Financeiro; +using Gestor.Infrastructure.Entities.Generic; +using Gestor.Infrastructure.Mappers; +using Gestor.Infrastructure.Repository.Generic; +using Gestor.Infrastructure.Repository.Interface; +using Gestor.Infrastructure.UnitOfWork.Generic; +using Gestor.Model.Domain.Financeiro; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Runtime.CompilerServices; + +namespace Gestor.Infrastructure.Repository.Logic +{ + public class ControleFinanceiroRepository : GenericRepository, IControleFinanceiroRepository, IGenericRepository + { + private readonly GenericUnitOfWork _unitOfWork; + + public ControleFinanceiroRepository(GenericUnitOfWork unitOfWork) : base(unitOfWork.Session) + { + this._unitOfWork = unitOfWork; + } + + public void Delete(long id) + { + ControleFinanceiroDb controleFinanceiroDb = base.FindEntityById(id); + if (controleFinanceiroDb == null) + { + return; + } + IQueryable lancamentoDbs = + from x in this._unitOfWork.Query() + where x.Controle.Id == id + select x; + if (lancamentoDbs.Any()) + { + this._unitOfWork.Repository().DeleteRange(lancamentoDbs); + } + base.Delete(controleFinanceiroDb); + } + + public List FindByFornecedor(long id) + { + List list = ( + from x in base.All() + where x.Fornecedor.Id == id + select x).ToList(); + return ApplicationMapper.Mapper.Map, List>(list); + } + + public ControleFinanceiro FindById(long id) + { + ControleFinanceiroDb controleFinanceiroDb = base.FindEntityById(id); + return ApplicationMapper.Mapper.Map(controleFinanceiroDb); + } + + public ControleFinanceiro Merge(ControleFinanceiro controle) + { + ControleFinanceiroDb controleFinanceiroDb = ApplicationMapper.Mapper.Map(controle); + base.Merge(controleFinanceiroDb); + return ApplicationMapper.Mapper.Map(controleFinanceiroDb); + } + + public ControleFinanceiro SaveOrUpdate(ControleFinanceiro controle) + { + ControleFinanceiroDb controleFinanceiroDb = ApplicationMapper.Mapper.Map(controle); + this.SaveOrUpdate(controleFinanceiroDb); + return ApplicationMapper.Mapper.Map(controleFinanceiroDb); + } + } +} \ No newline at end of file -- cgit v1.2.3