MC Add location service

This commit is contained in:
Thomas Fransolet 2020-03-25 18:48:59 +01:00
parent 3f8a519adb
commit fb21254805

View File

@ -2,10 +2,48 @@
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using MyCore.Models;
using Microsoft.Extensions.Configuration;
using MongoDB.Driver;
using MyCore.Models.MyControlPanel;
namespace MyCore.Services.MyControlPanel
{
public class LocationService
{
private readonly IMongoCollection<Location> _Locations;
public LocationService(IConfiguration config)
{
var client = new MongoClient(config.GetConnectionString("MyCoreDb"));
var database = client.GetDatabase("MyCoreDb");
_Locations = database.GetCollection<Location>("Locations");
}
public List<Location> GetLocations()
{
return _Locations.Find(l => true).ToList();
}
public Location GetLocationById(string id)
{
return _Locations.Find<Location>(l => l.Id == id).FirstOrDefault();
}
public Location CreateLocation(Location location)
{
_Locations.InsertOne(location);
return location;
}
public Location Update(string id, Location locationIn)
{
_Locations.ReplaceOne(location => location.Id == id, locationIn);
return locationIn;
}
public void Remove(string id)
{
_Locations.DeleteOne(location => location.Id == id);
}
}
}