Creating LoginServices with queries inside

This commit is contained in:
2023-11-22 14:01:22 +01:00
parent 9ec6295a04
commit 1a1f7ff0a4
2 changed files with 45 additions and 8 deletions

View File

@@ -1,8 +0,0 @@
using System;
namespace WD7UVN_HFT_2023241.Logic
{
public class Class1
{
}
}

View File

@@ -0,0 +1,45 @@
using System;
using System.Linq;
using WD7UVN_HFT_2023241.Models;
using WD7UVN_HFT_2023241.Repository;
namespace WD7UVN_HFT_2023241.Logic
{
public interface ILogicServices
{
public ICRUD CRUDOperations { get; set; }
//additional, non-CRUD operations
public IQueryable<Employee> WhoWorksInMaintainerTeam(int maintainerTeamId)
{
return CRUDOperations
.ReadAllEmployees()
.Where(e => e.MAINTAINER_ID == maintainerTeamId);
}
public IQueryable<Employee> GetSubordinates(int managerId)
{
return CRUDOperations
.ReadAllEmployees()
.Where(e => e.MANAGER_ID == managerId);
}
public IQueryable<Customer> WhoUsesService(int serviceId)
{
return CRUDOperations
.ReadAllCustomers()
.Where(c => c.SERVICE_ID == serviceId);
}
}
public class LogicServices : ILogicServices
{
public ICRUD CRUDOperations { get; set; }
public LogicServices(ICRUD CRUDOperations)
{
this.CRUDOperations = CRUDOperations;
}
}
}