docker files fixes from liaqat
This commit is contained in:
53
src/Managing.Infrastructure.Database/SettingsRepository.cs
Normal file
53
src/Managing.Infrastructure.Database/SettingsRepository.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using Managing.Application.Abstractions.Repositories;
|
||||
using Managing.Domain.MoneyManagements;
|
||||
using Managing.Infrastructure.Databases.MongoDb;
|
||||
using Managing.Infrastructure.Databases.MongoDb.Abstractions;
|
||||
using Managing.Infrastructure.Databases.MongoDb.Collections;
|
||||
|
||||
namespace Managing.Infrastructure.Databases;
|
||||
|
||||
public class SettingsRepository : ISettingsRepository
|
||||
{
|
||||
private readonly IMongoRepository<MoneyManagementDto> _moneyManagementRepository;
|
||||
|
||||
public SettingsRepository(IMongoRepository<MoneyManagementDto> moneyManagementRepository)
|
||||
{
|
||||
_moneyManagementRepository = moneyManagementRepository;
|
||||
}
|
||||
|
||||
public void DeleteMoneyManagement(string name)
|
||||
{
|
||||
var moneyManagement = _moneyManagementRepository.FindOne(m => m.Name == name);
|
||||
_moneyManagementRepository.DeleteById(moneyManagement.Id.ToString());
|
||||
}
|
||||
|
||||
public void DeleteMoneyManagements()
|
||||
{
|
||||
_moneyManagementRepository.DropCollection();
|
||||
}
|
||||
|
||||
public async Task<MoneyManagement> GetMoneyManagement(string name)
|
||||
{
|
||||
var moneyManagement = await _moneyManagementRepository.FindOneAsync(m => m.Name == name);
|
||||
return MongoMappers.Map(moneyManagement);
|
||||
}
|
||||
|
||||
public IEnumerable<MoneyManagement> GetMoneyManagements()
|
||||
{
|
||||
var moneyManagements = _moneyManagementRepository.FindAll();
|
||||
return moneyManagements.Select(m => MongoMappers.Map(m));
|
||||
}
|
||||
|
||||
public async Task InsertMoneyManagement(MoneyManagement request)
|
||||
{
|
||||
await _moneyManagementRepository.InsertOneAsync(MongoMappers.Map(request));
|
||||
}
|
||||
|
||||
public void UpdateMoneyManagement(MoneyManagement moneyManagement)
|
||||
{
|
||||
var mm = _moneyManagementRepository.FindOne(m => m.Name == moneyManagement.Name);
|
||||
var dto = MongoMappers.Map(moneyManagement);
|
||||
dto.Id = mm.Id;
|
||||
_moneyManagementRepository.Update(dto);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user