2 using System.Collections.Generic;
4 using System.Security.Claims;
27 public virtual IEnumerable<ScientificConsultation>
GetAll()
29 return _scientificConsultationRepository.All();
32 public virtual IEnumerable<ScientificConsultation>
GetAllWhere(Func<ScientificConsultation, bool> predicate)
34 return GetAll().Where(predicate);
37 public virtual IEnumerable<ScientificConsultation>
GetItemsByRole(ClaimsPrincipal userClaims)
39 IEnumerable<ScientificConsultation> items;
42 items = _scientificConsultationRepository.All();
46 var department = _departmentRepository.Get(r => r.Head.UserName == userClaims.Identity.Name);
47 items = _scientificConsultationRepository.AllWhere(m => department.Staff.Contains(m.Guide));
51 var user = _userProfileRepository.Get(u => u.UserName == userClaims.Identity.Name);
52 items = _scientificConsultationRepository.AllWhere(m => m.Guide.Id == user.Id);
58 public virtual IEnumerable<ScientificConsultation>
GetPageByRole(
int page,
int count, ClaimsPrincipal userClaims)
60 return GetItemsByRole(userClaims).Skip((page - 1) * count).Take(count).ToList();
65 return GetItemsByRole(userClaims).Count();
70 return _scientificConsultationRepository.Get(
id);
75 return _scientificConsultationRepository.Get(predicate);
90 var scientificConsultation = GetById(model.
Id);
91 if (scientificConsultation == null)
96 scientificConsultation.Guide = model.
Guide;
99 _scientificConsultationRepository.Update(scientificConsultation);
104 _scientificConsultationRepository.Delete(
id);
109 return _scientificConsultationRepository.Get(
id) != null;
virtual ScientificConsultation GetById(Guid id)
virtual IEnumerable< ScientificConsultation > GetPageByRole(int page, int count, ClaimsPrincipal userClaims)
virtual int GetCountByRole(ClaimsPrincipal userClaims)
virtual void CreateItem(ScientificConsultationModel model)
virtual ScientificConsultation Get(Func< ScientificConsultation, bool > predicate)
virtual IEnumerable< ScientificConsultation > GetAll()
static bool IsHeadOfDepartment(ClaimsPrincipal user)
virtual IEnumerable< ScientificConsultation > GetAllWhere(Func< ScientificConsultation, bool > predicate)
static bool IsAdmin(ClaimsPrincipal user)
ScientificConsultationService(ScientificReportDbContext context)
virtual void DeleteById(Guid id)
DAL.Entities.UserProfile.UserProfile Guide
virtual void UpdateItem(ScientificConsultationEditModel model)
virtual bool Exists(Guid id)
virtual IEnumerable< ScientificConsultation > GetItemsByRole(ClaimsPrincipal userClaims)