kreta/Kreta.DataAccessManual/Interfaces/IOrarendiOraDal.cs
2024-03-13 00:33:46 +01:00

82 lines
7.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using Kreta.DataAccess.Interfaces;
using Kreta.DataAccessManual.ParameterClasses;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
namespace Kreta.DataAccessManual.Interfaces
{
public interface IOrarendiOraDal
{
void SetFoglalkozasToNull(int foglalkozasId, int felhasznaloId);
DataSet CheckTanarOra(DateTime startDate, DateTime endDate, int tanarId, int intezmenyId, int tanevId, int? oraszam, bool isNapirend, bool isEgyediHelyettesites);
int? CheckTanevRendjeOsztalyCsoportValidation(int osztalycsoportId, DateTime oraDatum);
void Delete(int id);
void Delete(IOrarendiOra dto, bool isFromSzervezet = false);
void DeleteOrarend(int intezmenyId, int tanevId, int id);
void DeleteTanevKezdeteElttiOrak(DateTime elsoTanitasiNap, int tanevId);
void DeleteTanevVegeUtaniOrak(DateTime utolsoTanitasiNap, int tanevId);
void FizikaiTorlesOrarendek(int intezmenyId, int tanevId, int userId);
void FullUpdate(IOrarendiOra dto, bool isFromSzervezet = false);
IOrarendiOra Get();
IOrarendiOra Get(int id);
bool GetAlreadyHaveOrarendiOra(int tanevId);
DataSet GetCalendarMinMax(int intezmenyId, int tanevId);
List<int> GetElozoOranHianyzottTanulo(int tantargyId, int osztalycsoportId, DateTime datum, int tanevId, int intezmenyId);
DataSet GetElozoOraAdatai(int tantargyId, int osztalycsoportId, int tanarId, DateTime oraKezdeteDatum, int intezmenyId, int tanevId);
DataSet GetHazifeladatokListaja(int tanevId, HazifeladatokListajaPco pco);
int GetHetirend(DateTime date);
bool GetHetirendDictionaryItemIsUsed(int hetirendId);
DataSet GetHetirendek(int tanevId);
int GetHetNapjaByDate(DateTime date);
DataSet GetIsMunkaszunetiNap(DateTime datum, int osztalycsoportId);
DataSet GetNaptariHetekHetirendek(int tanevId, bool replaceSzunetToMindenHet = false);
DataSet GetNemKotottMunkaIdo(int intezmenyId, int tanevId, DateTime start, DateTime end, int tanarId);
DataSet GetNemKotottMunkaIdoByGroupId(int intezmenyId, int tanevId, DateTime start, DateTime end, string groupId);
DataSet GetNemNaplozottOrarendiOrak(NemNaplozottOrakPCO nemNaplozottOrakPCO);
DataSet GetTanarokNemNaplozottOrarendiOrakHetiEmailErtesito();
DataSet GetOralatogatasok(int intezmenyId, int tanevId, DateTime start, DateTime end, int tanarId);
DataSet GetOraMentessegList(DateTime startDate, DateTime endDate, int osztalyCsoportId, int intezmenyId, int tanevId);
DataSet GetOrarend(int intezmenyId, int tanevId, DateTime start, DateTime end, int? tanarId, int? osztalyCsoportId, int? tanuloId, bool csakOrarend, OrarendTipusEnum orarendTipus, int? tantargyId, int? teremId, bool helyettesitesNelkul, OktNevelesiKategoriaEnum? feladatKategoria, DateTime? orakezdete = null, DateTime? oravege = null, int? hetnapja = null);
DataSet GetOrarendForMobile(int intezmenyId, int tanevId, DateTime start, DateTime end, int? tanarId, int? osztalyCsoportId, int? tanuloId, bool csakOrarend, OrarendTipusEnum orarendTipus, int? tantargyId, int? teremId, bool helyettesitesNelkul, OktNevelesiKategoriaEnum? feladatKategoria, DateTime? orakezdete = null, DateTime? oravege = null, int? hetnapja = null);
DataSet GetOrarendDataSet(int tanevId, int? oktNevelesiKategoriaId = null);
DataSet GetOrarendForKozpontiOrak(int intezmenyId, int tanevId, DateTime start, DateTime end);
DataSet GetOrarendiOrakByTantargyId(int tantargyId, int tanevId);
DataSet GetOrarendiOrakByTeremId(int teremId, int tanevId);
DataSet GetOsztalyCsoportOrarendiOrai(int osztalyCsoportId, int tanevId, bool isFromSzervezet);
DataSet GetOsztalyEsTanarOraiUtkozes(int intezmenyId, int tanevId, int tanarId, int osztalycsoportId, DateTime oraKezdete, DateTime oraVege);
DataSet GetTanarFromHelyettesites(int helyettesitesId, int intezmenyId, int tanevId);
DataSet GetTanevEsemenyeiOrarend(DateTime start, DateTime end);
void Insert(IOrarendiOra dto, bool isFromSzervezet = false);
bool IsOrarendiOraHasElmaradtOra(DateTime date, int orarendiOraGroupId);
bool IsOrarendiOraHelyettesitoTanar(int tanoraId, int tanarId, int hetSorszam);
void KozpontilagToroltOraVisszaallitasa(List<int> kozpontilagToroltOraIdList, int felhasznaloId);
bool NemkotottMunkaidoUtkozesEllenorzes(int intezmenyId, int tanevId, int tanarId, DateTime kezdet, DateTime veg, DateTime datum, int mindegyikHetHetiRendTipusId, int? hetirendId, string nemKotottMunkaIdoGroupId);
bool OrarendiOraDuplikacioEllenorzes(int tanarId, int osztalyCsoportId, int teremId, int tantargyId, DateTime idopont, int oraszam);
bool OrarendiOraOsztalyCsoportUtkozesEllenorzes(int id, DateTime ervenyessegKezdete, DateTime ervenyessegVege, int hetirend, int csengetetesiRendOra, int osztalyCsoportId, int hetNapja, DateTime? oraKezdete, DateTime? oraVege);
bool OrarendiOraTanarUtkozesEllenorzes(int id, DateTime ervenyessegKezdete, DateTime ervenyessegVege, int hetirend, int csengetetesiRendOra, List<int> tanarId, int hetNapja, DateTime? oraKezdete, DateTime? oraVege);
bool OrarendiOraTeremUtkozesEllenorzes(int id, DateTime ervenyessegKezdete, DateTime ervenyessegVege, int hetirend, int csengetetesiRendOra, int teremId, int hetNapja, DateTime? oraKezdete, DateTime? oraVege, bool isEgyediNap);
(int? HelyettesitesId, int? ErrorId) SaveHelyettesites(int orarendiOraId, int tanarId, int helyettesitesTipus, string helyettesItesOka, int hetszam, DateTime helyettesitesNapja, bool isTuloraMentes);
int TanevRendjeOraszamValidation(int osztalycsoportId, DateTime datum, int tanevId);
void Update(IOrarendiOra dto, bool isFromSzervezet = false);
void UpdateHelyettesitesGroupId(int helyettesitesId, int groupId);
(int? HelyettesitesId, int? ErrorId) UpdateHelyettesitoTanar(int orarendiOraId, int helyettesitesId, int ujTanarId, int helyettesitesTipus, string helyettesitesOka, DateTime helyettesitesNapja, int? groupId, bool isTuloraMentes);
void UpdateOrarend(int intezmenyId, int tanevId, DateTime? idoszakKezdete, DateTime? idoszakVege, int? orarendioraId, int? osztalyCsoportId, bool isTeljesTanev = false);
void UpdateOsszefuggoSzakGyakosOrakErvenyessegKezdete(DateTime newSzakGyakKezdoDatum, int tanevId);
void UpdateOsszefuggoSzakGyakosOrakErvenyessegVege(DateTime newSzakGyakVegDatum, int tanevId);
DataSet GetNemElerhetoOrarendiElemekDataSet(int tanevId);
DataSet GetOrarendiOraTulajdonsag(int orarendiOraId, int tanevId);
void SaveOrUpdateOrarendiOraTulajdonsag(Dictionary<int, bool> oraTulajdonsagok, int orarendiOraId, int intezmenyId, int tanevId);
void DuplicateOrarendiOraTulajdonsag(int oldOrarendiOraId, int newOrarendiOraId);
int? CopyOrarendiElem(int copyId, DateTime date, int oraszam);
DataSet GetOraTanuloi(int orarendiOraId);
DataSet GetElsoOrarendiOraDatuma(int orarendiOraId);
void OrarendekTorlese(OrarendekTorlesePco orarendekTorlesePco);
DataSet GetExportAdatokForOrarendekTorlese(OrarendekTorlesePco orarendekTorlesePco);
DataSet GetRogzitettOrak(int tanarId, DateTime start, DateTime end);
void GenerateTeljesOrarend(int intezmenyId, int tanevId, int? orarendioraId = null);
DataSet GetElozoOrakAdatai(string orakAdatai, int intezmenyId, int tanevId);
}
}