mirror of
https://bitbucket.org/myhomie/mycorerepository.git
synced 2025-12-06 09:41:19 +00:00
50 lines
1.4 KiB
C#
50 lines
1.4 KiB
C#
using System;
|
|
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 AutomationService
|
|
{
|
|
private readonly IMongoCollection<Automation> _Automations;
|
|
|
|
public AutomationService(IConfiguration config)
|
|
{
|
|
var client = new MongoClient(config.GetConnectionString("MyCoreDb"));
|
|
var database = client.GetDatabase("MyCoreDb");
|
|
_Automations = database.GetCollection<Automation>("Automations");
|
|
}
|
|
public List<Automation> GetAutomations()
|
|
{
|
|
return _Automations.Find(d => true).ToList();
|
|
}
|
|
|
|
public Automation GetAutomationById(string id)
|
|
{
|
|
return _Automations.Find<Automation>(a => a.Id == id).FirstOrDefault();
|
|
}
|
|
|
|
public Automation CreateAutomation(Automation automation)
|
|
{
|
|
_Automations.InsertOne(automation);
|
|
return automation;
|
|
}
|
|
|
|
public Automation Update(string id, Automation automationIn)
|
|
{
|
|
_Automations.ReplaceOne(automation => automation.Id == id, automationIn);
|
|
return automationIn;
|
|
}
|
|
|
|
public void Remove(string id)
|
|
{
|
|
_Automations.DeleteOne(automation => automation.Id == id);
|
|
}
|
|
}
|
|
}
|