using System.Collections.Generic; using System.Linq; using Kreta.Core.Enum; using Kreta.Core.Exceptions; using Kreta.Core.Logic; using Kreta.Naplo.BusinessLogic.V3.Logic; using Kreta.Naplo.Dao.V3.Tanmenet; using Kreta.Naplo.Domain.V3.Common; using Kreta.Naplo.Domain.V3.Tanmenet; namespace Kreta.Naplo.BusinessLogic.V3.Tanmenet { internal static class TanmenetSubqueries { public static IEnumerable ListTanmenet(DefaultConnectionParameters dcp, TanmenetRequest request) { var tanar = new HelyettesitesLogic.Tanar(dcp.FelhasznaloId, dcp.TanevId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, null); if (request.TanarUid != dcp.UserIdpUniqueId && !tanar.IsHelyettesito(request.OsztalyCsoportId, request.TantargyId)) { throw new BlException("Nincs jogosultsága, csak a saját vagy helyettesítési tanmenet kérdezhető le!", BlExceptionType.NincsJogosultsag); } var response = new List(); return dcp.DalHandler.Tanmenet().GetTanmenetek(request.TantargyId, request.OsztalyCsoportId, userIdpUniqueId: request.TanarUid) .ToDaoList() .Select(tanmenet => new TanmenetItemListResponse { Id = tanmenet.Id, EvesOraszam = tanmenet.EvesOraszam, Tema = tanmenet.Tema }); } } }