using AutoMapper; using Gestor.Infrastructure.Entities.Common; using Gestor.Infrastructure.Mappers; using Gestor.Infrastructure.Repository.Generic; using Gestor.Infrastructure.Repository.Interface; using Gestor.Infrastructure.UnitOfWork.Generic; using Gestor.Model.Domain.MalaDireta; using System; using System.Collections.Generic; using System.Linq; namespace Gestor.Infrastructure.Repository.Logic { public class ModeloMalaDiretaRepository : GenericRepository, IModeloMalaDiretaRepository, IGenericRepository { private readonly GenericUnitOfWork _unitOfWork; public ModeloMalaDiretaRepository(GenericUnitOfWork unitOfWork) : base(unitOfWork.Session) { this._unitOfWork = unitOfWork; } public void Delete(long id) { ModeloMalaDiretaDb modeloMalaDiretaDb = base.FindEntityById(id); if (modeloMalaDiretaDb == null) { return; } base.Delete(modeloMalaDiretaDb); } public List Find() { List list = base.All().ToList(); return ApplicationMapper.Mapper.Map, List>(list); } public ModeloMalaDireta FindById(long id) { ModeloMalaDiretaDb modeloMalaDiretaDb = base.FindEntityById(id); return ApplicationMapper.Mapper.Map(modeloMalaDiretaDb); } public ModeloMalaDireta Merge(ModeloMalaDireta modelo) { ModeloMalaDiretaDb modeloMalaDiretaDb = ApplicationMapper.Mapper.Map(modelo); base.Merge(modeloMalaDiretaDb); return ApplicationMapper.Mapper.Map(modeloMalaDiretaDb); } public ModeloMalaDireta SaveOrUpdate(ModeloMalaDireta modelo) { ModeloMalaDiretaDb modeloMalaDiretaDb = ApplicationMapper.Mapper.Map(modelo); this.SaveOrUpdate(modeloMalaDiretaDb); return ApplicationMapper.Mapper.Map(modeloMalaDiretaDb); } } }