ScientificReport
IDepartmentService.cs
Go to the documentation of this file.
1 using System;
2 using System.Collections.Generic;
7 
8 namespace ScientificReport.BLL.Interfaces
9 {
10  public interface IDepartmentService
11  {
12  int GetCount();
13  IEnumerable<Department> GetPage(int page, int count);
14  IEnumerable<Department> GetAll();
15  IEnumerable<Department> Filter(DepartmentIndexModel model);
16  IEnumerable<Department> GetAllWhere(Func<Department, bool> predicate);
17  Department GetById(Guid id);
18  Department Get(Func<Department, bool> predicate);
19  void CreateItem(Department department);
20  void UpdateItem(Department department);
21  void DeleteById(Guid id);
22  bool Exists(Guid id);
23  void AddScientificWork(Guid id, ScientificWork scientificWork);
24  void RemoveScientificWork(Guid id, ScientificWork scientificWork);
25  void AddUser(Guid id, UserProfile user);
26  void RemoveUser(Guid id, UserProfile user);
27  bool UserIsHired(UserProfile user);
28  bool UserWorksInDepartment(UserProfile headOfDepartment, Guid userId);
29  IEnumerable<Department> SortDepartmentsBy(Department.SortByOption option, int page, int count);
30  }
31 }