init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
434
Kreta.BusinessLogic/Helpers/FeladatEllatasiHelyHelper.cs
Normal file
434
Kreta.BusinessLogic/Helpers/FeladatEllatasiHelyHelper.cs
Normal file
|
@ -0,0 +1,434 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.Classes.ComboBox;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Logic;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Core;
|
||||
using Kreta.Core.ConnectionType;
|
||||
using Kreta.Core.Exceptions;
|
||||
using Kreta.DataAccessManual;
|
||||
using Kreta.DataAccessManual.Util;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Resources;
|
||||
using OfficeOpenXml;
|
||||
|
||||
namespace Kreta.BusinessLogic.Helpers
|
||||
{
|
||||
public class FeladatEllatasiHelyHelper : LogicBase
|
||||
{
|
||||
public FeladatEllatasiHelyHelper(IConnectionType connectionType) : base(connectionType) { }
|
||||
|
||||
public List<OktNevelesiKategoriaEnum> GetFeladatKategoriakForLogin(int aktTanevId, int? kovTanevId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal();
|
||||
return dal.GetFeladatKategoriakForLogin(aktTanevId, kovTanevId, IntezmenyId);
|
||||
});
|
||||
}
|
||||
|
||||
public FeladatEllatasiHelyCO GetFeladatEllatasiHelyAdatok(int ID)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var feladathely = h.FeladatEllatasiHelyDal().Get(ID);
|
||||
if (feladathely != null)
|
||||
{
|
||||
return new FeladatEllatasiHelyCO
|
||||
{
|
||||
ID = feladathely.ID,
|
||||
OktatasiNevelesiFeladat = feladathely.OktatasiNevelesiFeladatTipus,
|
||||
MukodesiHelyID = feladathely.MukodesiHelyId,
|
||||
OktatasiNevelesiFeladatNev = feladathely.OktatasiNevelesiFeladatTipus.GetDisplayName<OktatasiNevelesiFeladatEnum>(TanevId).ReplaceMultipleSpacesAndTrim(),
|
||||
MukodesiHelyNev = feladathely.MukodesiHely.Nev.ReplaceMultipleSpacesAndTrim(),
|
||||
KIRFeladatellatasiHelySorszama = feladathely.FeladatellatasiHelyKod
|
||||
};
|
||||
}
|
||||
|
||||
return null;
|
||||
});
|
||||
}
|
||||
|
||||
public void SaveFeladatEllatasiHelyAdatok(FeladatEllatasiHelyCO model)
|
||||
{
|
||||
Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
if (!model.OktatasiNevelesiFeladat.IsEntityId())
|
||||
{
|
||||
throw new ArgumentNullException(nameof(model.OktatasiNevelesiFeladat));
|
||||
}
|
||||
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
var ellatottFeladatDal = h.OktatasNevelesiFeladatDal();
|
||||
var entity = h.FeladatEllatasiHelyDal().Get();
|
||||
if (model.ID.HasValue)
|
||||
{
|
||||
entity = dal.Get(model.ID.Value);
|
||||
|
||||
if (!ellatottFeladatDal.IsAzonosKategoria(entity.OktatasiNevelesiFeladatTipus, model.OktatasiNevelesiFeladat.Value))
|
||||
{
|
||||
if (dal.IsMukodesiHelyNemModosithato(entity.TanevId, entity.ID))
|
||||
{
|
||||
throw new BlException(ErrorResource.KoznevelesiFeladatNemModosithato);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
entity.OktatasiNevelesiFeladatTipus = model.OktatasiNevelesiFeladat.Value;
|
||||
entity.MukodesiHelyId = model.MukodesiHelyID;
|
||||
entity.FeladatellatasiHelyKod = model.KIRFeladatellatasiHelySorszama;
|
||||
entity.TanevId = model.TanevId;
|
||||
|
||||
if (model.ID.HasValue == false)
|
||||
{
|
||||
dal.Insert(entity);
|
||||
}
|
||||
else
|
||||
{
|
||||
dal.Update(entity);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void FeladatEllatasiHelyTorles(int ID)
|
||||
{
|
||||
Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
dal.Delete(ID);
|
||||
});
|
||||
}
|
||||
|
||||
public DataSet GetFeladatEllatasiHelyByMukodesiHelyID(int mukodesiHelyID)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
var ds = dal.GetFeladatEllatasiHelyByMukodesiHelyID(mukodesiHelyID, TanevId);
|
||||
return ds;
|
||||
});
|
||||
}
|
||||
|
||||
public DataSet GetFeladatellatasiHelyByFeladatellatasiHelyNev(string feladatellatasiHelyNev)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
var ds = dal.GetFeladatellatasiHelyByFeladatellatasiHelyNev(feladatellatasiHelyNev, TanevId);
|
||||
return ds;
|
||||
});
|
||||
}
|
||||
|
||||
public List<int> GetGetFeladatEllatasiHelyIdListByMukodesiHelyID(int mukodesiHelyId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
var ds = dal.GetFeladatEllatasiHelyByMukodesiHelyID(mukodesiHelyId, TanevId);
|
||||
var ret = new List<int>();
|
||||
|
||||
foreach (DataRow row in ds.Tables[0].Rows)
|
||||
{
|
||||
ret.Add(Convert.ToInt32(row["OktatasiNevelesiFeladatTipus"]));
|
||||
}
|
||||
|
||||
return ret;
|
||||
});
|
||||
}
|
||||
|
||||
public DataSet GetFeladatellatasiHelyOsztalycsoportjai(int feladellHelyID)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
return dal.GetFeladatellatasiHelyOsztalycsoportjai(feladellHelyID, TanevId);
|
||||
});
|
||||
}
|
||||
|
||||
public DataSet GetFeladatellatasiHelyAlkalmazottjai(int feladellHelyID)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal(GridParameters);
|
||||
return dal.GetFeladatellatasiHelyAlkalmazottjai(feladellHelyID, TanevId);
|
||||
});
|
||||
}
|
||||
|
||||
public DataSet GetFeladatellatasiHelyhezTartozoEvfolyamtipusokSzama(int feladHelyID)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal();
|
||||
return dal.GetFeladatellatasiHelyhezTartozoEvfolyamtipusok(feladHelyID);
|
||||
});
|
||||
}
|
||||
|
||||
public IDictionary<string, string> GetFeladatEllatasiHelyDDl(string baseText = null, int? feladatKategoriaId = null, bool? hasKovTanev = null, int? customTanevId = null, bool forSzirStatTanulo = false)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var tanevId = customTanevId.HasValue ? customTanevId.Value : TanevId;
|
||||
|
||||
return LogicUtil.CreateDropdownContent(h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyekForkDropDown(tanevId, feladatKategoriaId: feladatKategoriaId, hasKovTanev: hasKovTanev, forSzirStatTanulo: forSzirStatTanulo), "ID", "Nev", baseText);
|
||||
});
|
||||
}
|
||||
|
||||
public List<ComboBoxListItem> GetFeladatEllatasiHelyDdlForEsl(string baseText = null)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dictionary = LogicUtil.CreateDropdownContent(h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyekForkDropDown(TanevId, true), "ID", "Nev", baseText);
|
||||
var dropdownListItems = new List<ComboBoxListItem>();
|
||||
|
||||
foreach (var item in dictionary)
|
||||
{
|
||||
var comboBoxListItem = new ComboBoxListItem
|
||||
{
|
||||
Text = item.Value,
|
||||
Value = item.Key
|
||||
};
|
||||
|
||||
dropdownListItems.Add(comboBoxListItem);
|
||||
}
|
||||
|
||||
return dropdownListItems;
|
||||
});
|
||||
}
|
||||
|
||||
public Dictionary<int, bool> GetFeladatellatasiHelyIsSzakkepzesesDictionary()
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dictionary = new Dictionary<int, bool>();
|
||||
var ds = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyekForkDropDown(TanevId);
|
||||
|
||||
if (ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
var rows = ds.Tables[0].Rows;
|
||||
foreach (DataRow row in rows)
|
||||
{
|
||||
var id = (int)row["ID"];
|
||||
var isSzakkepzeses = IsSzakkepzesesOktNevFel((int)row["OktNevFel"]);
|
||||
|
||||
dictionary.Add(id, isSzakkepzeses);
|
||||
}
|
||||
}
|
||||
|
||||
return dictionary;
|
||||
});
|
||||
}
|
||||
|
||||
public Dictionary<int, bool> GetFeladatellatasiHelyIsNkt()
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var dictionary = new Dictionary<int, bool>();
|
||||
var ds = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyekForkDropDown(TanevId);
|
||||
|
||||
if (ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
var rows = ds.Tables[0].Rows;
|
||||
foreach (DataRow row in rows)
|
||||
{
|
||||
var id = (int)row["ID"];
|
||||
var isNkt = IsNKTSzakkepzesesOktNevFel((int)row["OktNevFel"]);
|
||||
|
||||
dictionary.Add(id, isNkt);
|
||||
}
|
||||
}
|
||||
|
||||
return dictionary;
|
||||
});
|
||||
}
|
||||
|
||||
public List<int> GetIdsBySelectedOktatasiNevelesiFeladat(int oktatasiNevelesiFeladatId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
return h.FeladatEllatasiHelyDal(GridParameters).GetFeladatellatasiHelyIdsBySelectedOktatasiNevelesiFeladat(TanevId, oktatasiNevelesiFeladatId);
|
||||
});
|
||||
}
|
||||
|
||||
private bool IsSzakkepzesesOktNevFel(int oktNevFel)
|
||||
{
|
||||
return
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakkozepiskola ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakiskola ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakgimnazium ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakgimnazium_muveszeti_pedagogiai_kozmuvelodesi_ ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakgimnazium_nemzetisegi_ ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.felnottkepzes ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.felnottoktatas ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.szakkepzo_iskola ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.technikum
|
||||
;
|
||||
}
|
||||
|
||||
private bool IsNKTSzakkepzesesOktNevFel(int oktNevFel)
|
||||
{
|
||||
return IsSzakkepzesesOktNevFel(oktNevFel) ||
|
||||
oktNevFel == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium
|
||||
;
|
||||
}
|
||||
|
||||
public Dictionary<OsztalyJellemzoEnum, bool> GetOsztalyJellemzoi(int? osztalyId = null, int? tanulocsoportId = null)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var osztalycsoportId = osztalyId.HasValue ? osztalyId.Value : default;
|
||||
if (!osztalycsoportId.IsEntityId() && tanulocsoportId.IsEntityId())
|
||||
{
|
||||
osztalycsoportId = h.TanuloCsoport().Get(tanulocsoportId.Value).OsztalyCsoportId;
|
||||
}
|
||||
var result = new Dictionary<OsztalyJellemzoEnum, bool>();
|
||||
var ds = new DataSet();
|
||||
if (osztalycsoportId.IsEntityId())
|
||||
{
|
||||
var feladHelyId = new OsztalyCsoportHelper(new DalHandlerConnectionType(ConnectionType, h)).GetFeladatEllatasiHelyByOsztalyId(osztalycsoportId);
|
||||
ds = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyOktatasiNevelesiFeladatok(feladHelyId);
|
||||
}
|
||||
else
|
||||
{
|
||||
ds = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyekForkDropDown(TanevId);
|
||||
}
|
||||
result.Add(OsztalyJellemzoEnum.IsSzakkepzeses, IsSzakkepzesesDS(ds));
|
||||
result.Add(OsztalyJellemzoEnum.IsNKTSzakkepzeses, IsNKTSzakkepzesesDS(ds));
|
||||
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
public bool IsGimnazium(int osztalyId, int oktatasiNevelesiFeladatId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var feladatEllatasiHelyId = new OsztalyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetClassById(osztalyId).FeladatEllatasiHelyId;
|
||||
var gimnaziumFeladHelyId = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatellatasiHelyIdsBySelectedOktatasiNevelesiFeladat(TanevId, oktatasiNevelesiFeladatId);
|
||||
|
||||
return gimnaziumFeladHelyId.Contains(feladatEllatasiHelyId);
|
||||
});
|
||||
}
|
||||
|
||||
public bool IsSzakkepzeses(int id)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var ds = h.FeladatEllatasiHelyDal(GridParameters).GetFeladatEllatasiHelyOktatasiNevelesiFeladatok(id);
|
||||
return IsSzakkepzesesDS(ds);
|
||||
});
|
||||
}
|
||||
|
||||
private bool IsSzakkepzesesDS(DataSet ds)
|
||||
{
|
||||
if (ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
var rows = ds.Tables[0].Rows;
|
||||
foreach (DataRow row in rows)
|
||||
{
|
||||
if (IsSzakkepzesesOktNevFel((int)row["OktNevFel"]))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
private bool IsNKTSzakkepzesesDS(DataSet ds)
|
||||
{
|
||||
if (ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
var rows = ds.Tables[0].Rows;
|
||||
foreach (DataRow row in rows)
|
||||
{
|
||||
if (IsNKTSzakkepzesesOktNevFel((int)row["OktNevFel"]))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#region Export
|
||||
public byte[] GetMukodesiHelyekAdataiExcelExport()
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, (h) =>
|
||||
{
|
||||
var dal = h.FeladatEllatasiHelyDal();
|
||||
|
||||
var dataTable = dal.GetMukodesiHelyekAdataiExcelExport(TanevId).Tables[0];
|
||||
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
using (var excel = new ExcelPackage(stream))
|
||||
{
|
||||
var workSheet = excel.Workbook.Worksheets.Add(IntezmenyResource.MukodesiHelyekAdatai);
|
||||
|
||||
workSheet.Cells[1, 1].LoadFromDataTable(dataTable, true);
|
||||
|
||||
ExportLogic.SetHeaderStyles(workSheet.Cells[1, 1, 1, dataTable.Columns.Count]);
|
||||
|
||||
workSheet.Cells.AutoFitColumns();
|
||||
excel.Save();
|
||||
}
|
||||
|
||||
stream.Position = 0;
|
||||
|
||||
return stream.ToArray();
|
||||
}
|
||||
});
|
||||
}
|
||||
#endregion
|
||||
|
||||
public int GetMukodesiHelyIdByFeladatellatasiHelyId(int feladatellatasiHelyId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, (h) =>
|
||||
{
|
||||
var feladatellatasiHely = h.FeladatEllatasiHelyDal().Get(feladatellatasiHelyId);
|
||||
var result = feladatellatasiHely.MukodesiHelyId;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
public int GetFeladatKategoriaId(int feladatEllatasiHelyId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
return h.FeladatEllatasiHelyDal().GetFeladatKategoriaId(feladatEllatasiHelyId);
|
||||
});
|
||||
}
|
||||
|
||||
public bool IsAzonosKategoria(int oldFeladhelyId, int newFeladhelyId)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
return h.FeladatEllatasiHelyDal().IsAzonosKategoria(oldFeladhelyId, newFeladhelyId);
|
||||
});
|
||||
}
|
||||
|
||||
public List<OktNevelesiKategoriaEnum> GetFeladatKategoriak()
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
return h.FeladatEllatasiHelyDal().GetFeladatKategoriak(TanevId, IntezmenyId).Cast<OktNevelesiKategoriaEnum>().ToList();
|
||||
});
|
||||
}
|
||||
|
||||
public int GetKovTanevIdByAktTanevId(int id)
|
||||
{
|
||||
return Dal.CustomConnection.Run(ConnectionType, h =>
|
||||
{
|
||||
var fDal = h.FeladatEllatasiHelyDal();
|
||||
return fDal.GetKovTanevIdByAktTanevId(id);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue