init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
57
KretaWeb/Areas/Intezmeny/Logic/FaliujsagLogic.cs
Normal file
57
KretaWeb/Areas/Intezmeny/Logic/FaliujsagLogic.cs
Normal file
|
@ -0,0 +1,57 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Web.Areas.Intezmeny.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
|
||||
namespace Kreta.Web.Areas.Intezmeny.Logic
|
||||
{
|
||||
public class FaliujsagLogic
|
||||
{
|
||||
public FaliujsagModel ConvertFaliujsagDataTableToList(DataTable dt)
|
||||
{
|
||||
List<FaliujsagElem> esemenyek = new List<FaliujsagElem>();
|
||||
|
||||
foreach (DataRow dr in dt.Rows)
|
||||
{
|
||||
FaliujsagElem elem = new FaliujsagElem();
|
||||
string nev = dr["Bejegyzo"].ToString();
|
||||
elem.Nev = nev;
|
||||
elem.Munkakor = dr["Munkakor_DNAME"].ToString();
|
||||
|
||||
var helper = new FelhasznaloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
if (dr["ProfilKep"] != DBNull.Value)
|
||||
{
|
||||
byte[] bytes = dr["ProfilKep"] as byte[];
|
||||
if (bytes != null)
|
||||
{
|
||||
elem.KepEleresiUtja = helper.ProfileKep(bytes);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
elem.KepEleresiUtja = helper.AlapertelmezettProfileKep();
|
||||
}
|
||||
|
||||
elem.Idopont = Convert.ToDateTime(dr["Erv_kezd"]);
|
||||
elem.EsemenyCime = dr["Cim"].ToString();
|
||||
string szovegWeb = SDAConvert.ToString(dr["SzovegWeb"]);
|
||||
if (nev == Core.Constants.SpecialUserName.Rendszeruzenet && !string.IsNullOrWhiteSpace(szovegWeb))
|
||||
{
|
||||
elem.EsemenySzovege = szovegWeb;
|
||||
}
|
||||
else
|
||||
{
|
||||
elem.EsemenySzovege = dr["Szoveg"].ToString();
|
||||
}
|
||||
|
||||
esemenyek.Add(elem);
|
||||
}
|
||||
|
||||
return new FaliujsagModel() { FaliujsagElemek = esemenyek };
|
||||
}
|
||||
}
|
||||
}
|
128
KretaWeb/Areas/Intezmeny/Logic/TanevRendjeLogic.cs
Normal file
128
KretaWeb/Areas/Intezmeny/Logic/TanevRendjeLogic.cs
Normal file
|
@ -0,0 +1,128 @@
|
|||
using System;
|
||||
using System.Data;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Framework;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Intezmeny.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
|
||||
namespace Kreta.Web.Areas.Intezmeny.Logic
|
||||
{
|
||||
public static class TanevRendjeLogic
|
||||
{
|
||||
public static void TanevRendjeValidation(System.Web.Http.ModelBinding.ModelStateDictionary ModelState, TanevRendjeModel model)
|
||||
{
|
||||
TanevCO tanev;
|
||||
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
tanev = tanevHelper.GetTanevInfo();
|
||||
|
||||
if (model.Datum.HasValue && (model.Datum.Value < tanev.KezdoNap || tanev.UtolsoNap < model.Datum.Value))
|
||||
{
|
||||
ModelState.AddModelError("Datum", ErrorResource.ADatumCsakAKivalasztottTanevbeEsoIdoszakLehet);
|
||||
}
|
||||
|
||||
if (!model.ElteroOrarendSzerintiTanitasNapDatum.HasValue)
|
||||
{
|
||||
ModelState.AddModelError("ElteroOrarendSzerintiTanitasNapDatumReq", ErrorResource.AzElteroOrarendSzerintiNapDatumKotelezo);
|
||||
}
|
||||
|
||||
if (model.ElteroOrarendSzerintiTanitasNapDatum.HasValue && (model.ElteroOrarendSzerintiTanitasNapDatum.Value < tanev.KezdoNap || tanev.UtolsoNap < model.ElteroOrarendSzerintiTanitasNapDatum.Value))
|
||||
{
|
||||
ModelState.AddModelError("ElteroOrarendSzerintiTanitasNapDatum", ErrorResource.AzElteroOrarendSzerintiTanitasNapDatumCsakAKivalasztottTanevbeEsoIdoszakLehet);
|
||||
}
|
||||
|
||||
if (model.OsszesCsop == false && model.SelectedOsztalyCsoportIdList.Count == 0)
|
||||
{
|
||||
ModelState.AddModelError("OsszesCsop", StringResourcesUtil.GetString(4335));//Ha a tanév rendje esemény nem érvényes az összes osztályra, akkor legalább egy osztályt ki kell választani
|
||||
}
|
||||
|
||||
if (model.Datum.HasValue && model.ElteroOrarendSzerintiTanitasNapDatum.HasValue && !IsOrarendiNap(model) && model.Datum.Value.Date != model.ElteroOrarendSzerintiTanitasNapDatum.Value.Date)
|
||||
{
|
||||
ModelState.AddModelError("ElteroOrarendSzerintiTanitasNapDatum", ErrorResource.AzElteroOrarendSzerintiTanitasNapDatumMegKellEgyezniTanevRendjeDatummal);
|
||||
}
|
||||
|
||||
var helper = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
bool useRequiredValidation = helper.IsTanoraOrNapirendRogzitheto(model.NapTipusa.Value);
|
||||
|
||||
if (useRequiredValidation)
|
||||
{
|
||||
if (!model.CsengetesiRend.HasValue)
|
||||
ModelState.AddModelError("CsengetesiRend", ErrorResource.CsengetesiRendMegadasaKotelezo);
|
||||
|
||||
if (!model.OrarendiNap && !model.UresOrarend)
|
||||
ModelState.AddModelError("OrarendiNapUresOrarend", IntezmenyResource.OrarendiNapUresOrarend);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void CheckTanevRendjeUtkozes(TanevRendjeModel model)
|
||||
{
|
||||
var tanevrendHelper = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
tanevrendHelper.CheckTanevRendjeUtkozes(
|
||||
model.Datum.Value,
|
||||
model.SelectedOsztalyCsoportIdList,
|
||||
model.OsszesCsop,
|
||||
model.TanevRendjeId
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
public static bool IsEgyediNap(TanevRendjeModel model)
|
||||
{
|
||||
if (model.UresOrarend || model.NapTipusa.Value == (int)NapTipusEnum.roviditett_orakat_tartalmazo_tanitasi_nap || model.Datum.Value != model.ElteroOrarendSzerintiTanitasNapDatum.Value)
|
||||
return true;
|
||||
|
||||
var napData = new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetNaptariNapData(model.Datum.Value);
|
||||
var elteroNapData = new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetNaptariNapData(model.ElteroOrarendSzerintiTanitasNapDatum.Value);
|
||||
|
||||
if (napData.Tables[0].Rows.Count == 1)
|
||||
{
|
||||
var napDataHetirend = napData.Tables[0].Rows[0].Field<int>("Hetirend");
|
||||
var napDataNap = napData.Tables[0].Rows[0].Field<int>("Hetnapja");
|
||||
var elteroNapDataHetirend = elteroNapData.Tables[0].Rows[0].Field<int>("Hetirend");
|
||||
var elteroNapDataNap = elteroNapData.Tables[0].Rows[0].Field<int>("Hetnapja");
|
||||
|
||||
if ((napDataHetirend != elteroNapDataHetirend && elteroNapDataHetirend != (int)HetiRendTipusEnum.MindegyikHet) || napDataNap != elteroNapDataNap)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static bool IsEgyediNapByDate(DateTime datum)
|
||||
{
|
||||
return new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIsEgyediNapByDate(datum);
|
||||
}
|
||||
|
||||
public static bool IsEgyediNapByDateAndOsztalyCsoportId(DateTime datum, int osztalyCsoportId)
|
||||
{
|
||||
return new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIsEgyediNapByDateAndOsztalyCsoportId(datum, osztalyCsoportId);
|
||||
}
|
||||
|
||||
public static bool IsOrarendiNap(TanevRendjeModel model)
|
||||
{
|
||||
var napTipusData = new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetNapTipusData(model.NapTipusa.Value);
|
||||
if (napTipusData.Tables[0].Rows.Count == 1)
|
||||
{
|
||||
var isTanorai = napTipusData.Tables[0].Rows[0].Field<bool>("IsTanorai_BOOL");
|
||||
var isTanorankivuli = napTipusData.Tables[0].Rows[0].Field<bool>("IsTanorankivuli_BOOL");
|
||||
|
||||
if (isTanorai || isTanorankivuli)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static TanevRendjeModel SetNapEsHetirend(TanevRendjeModel model)
|
||||
{
|
||||
var napData = new NaptariNapHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetNaptariNapData(model.ElteroOrarendSzerintiTanitasNapDatum.Value);
|
||||
model.Hetirend = napData.Tables[0].Rows[0].Field<int>("Hetirend");
|
||||
model.Nap = napData.Tables[0].Rows[0].Field<int>("Hetnapja");
|
||||
|
||||
return model;
|
||||
}
|
||||
}
|
||||
}
|
203
KretaWeb/Areas/Intezmeny/Logic/TeremLogic.cs
Normal file
203
KretaWeb/Areas/Intezmeny/Logic/TeremLogic.cs
Normal file
|
@ -0,0 +1,203 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Web.Mvc;
|
||||
using Hangfire;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Client.Eugyintezes.Configuration;
|
||||
using Kreta.Core;
|
||||
using Kreta.Core.FileService;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Job.Tasks.Core;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Intezmeny.Controllers;
|
||||
using Kreta.Web.Areas.Intezmeny.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.TabStrip;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Intezmeny.Logic
|
||||
{
|
||||
public static class TeremLogic
|
||||
{
|
||||
private static TabStripItemModel BuildTabStripModel(string itemId, string itemName, string area, string controller, string action, Dictionary<string, string> routeParameters)
|
||||
=> new TabStripItemModel
|
||||
{
|
||||
ItemId = itemId,
|
||||
ItemName = itemName,
|
||||
Area = area,
|
||||
Controller = controller,
|
||||
Action = action,
|
||||
RouteParameters = routeParameters
|
||||
};
|
||||
|
||||
private static TabStripItemModel BuildTabStripModel<Model>(string itemId, string itemName, Model model, string partialViewName, bool isActive = false, Dictionary<string, string> routeParameters = null)
|
||||
where Model : class
|
||||
{
|
||||
var tabStripItemModel = new TabStripItemModel
|
||||
{
|
||||
ItemId = itemId,
|
||||
ItemName = itemName,
|
||||
RouteParameters = routeParameters,
|
||||
Model = model,
|
||||
PartialViewName = partialViewName,
|
||||
IsActive = isActive
|
||||
};
|
||||
|
||||
if (routeParameters != null)
|
||||
{
|
||||
tabStripItemModel.RouteParameters = routeParameters;
|
||||
}
|
||||
|
||||
return tabStripItemModel;
|
||||
}
|
||||
|
||||
public static TeremModel GetTeremBaseProperties(int? teremId)
|
||||
{
|
||||
var teremModel = new TeremModel();
|
||||
|
||||
if (teremId > 0)
|
||||
{
|
||||
TeremCO teremCO = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTeremCo(teremId.Value);
|
||||
|
||||
teremModel = TeremModel.ConvertCoToModel(teremCO);
|
||||
}
|
||||
else
|
||||
{
|
||||
teremModel.TeremAlapadatokModel.Jelleg = (int)TeremTipusEnum.Osztalyterem;
|
||||
teremModel.TeremBerbeadasModel.TulajdonTipusaId = (int)TulajdonTipusEnum.allami_tulajdonban_levo_ingatlan;
|
||||
}
|
||||
|
||||
return teremModel;
|
||||
}
|
||||
|
||||
public static TeremModModel GetTeremModelForModPopup(List<TeremModModel> teremModelList, int? szervezetId, bool isFromSzervezet)
|
||||
{
|
||||
var teremModModel = new TeremModModel()
|
||||
{
|
||||
IsFromSzervezet = isFromSzervezet,
|
||||
};
|
||||
|
||||
foreach (var item in teremModelList)
|
||||
{
|
||||
teremModModel.TeremIDArray += item.TeremId.ToString() + ",";
|
||||
teremModModel.TeremNevArray += item.Nev.ToString() + ", ";
|
||||
}
|
||||
|
||||
teremModModel.TeremIDArray = teremModModel.TeremIDArray.Remove(teremModModel.TeremIDArray.Count() - 1);
|
||||
teremModModel.TeremNevArray = teremModModel.TeremNevArray.Remove(teremModModel.TeremNevArray.Count() - 2);
|
||||
teremModModel.ModSzervezetId = szervezetId.IsEntityId() ? szervezetId : null;
|
||||
|
||||
return teremModModel;
|
||||
}
|
||||
|
||||
public static List<TabStripItemModel> GetDetailTabs(string teremId, bool isLetesitmenyBerbeadasEnabled, bool isFromSzervezet, string controllerName)
|
||||
{
|
||||
var tabStripItemModelList = new List<TabStripItemModel>()
|
||||
{
|
||||
BuildTabStripModel("1", IntezmenyResource.Alapadatok, Constants.Areas.Intezmeny, controllerName, nameof(BaseTeremController.OpenTeremBaseProperties), new Dictionary<string, string>() { { nameof(teremId), teremId } }),
|
||||
BuildTabStripModel("3", IntezmenyResource.OrarendiOrak, Constants.Areas.Intezmeny, controllerName, nameof(BaseTeremController.OpenTeremOrarendiOrai), new Dictionary<string, string>() { { nameof(teremId), teremId } }),
|
||||
};
|
||||
|
||||
if (!isFromSzervezet)
|
||||
{
|
||||
BuildTabStripModel("4", IntezmenyResource.TeremhezTartozoEszkozok, Constants.Areas.Intezmeny, Constants.Controllers.Terem, nameof(TeremController.OpenTeremEszkozok), new Dictionary<string, string>() { { nameof(teremId), teremId } });
|
||||
}
|
||||
|
||||
if (isLetesitmenyBerbeadasEnabled && !isFromSzervezet)
|
||||
{
|
||||
tabStripItemModelList.Add(BuildTabStripModel("2", IntezmenyResource.Berbeadas, Constants.Areas.Intezmeny, Constants.Controllers.Terem, nameof(TeremController.OpenTeremBerbeadasProperties), new Dictionary<string, string>() { { nameof(teremId), teremId } }));
|
||||
}
|
||||
|
||||
return tabStripItemModelList;
|
||||
}
|
||||
|
||||
public static List<TabStripItemModel> GetNewTabs(TeremModel teremModel, bool isLetesitmenyBerbeadasEnabled)
|
||||
{
|
||||
var tabStripItemModelList = new List<TabStripItemModel>
|
||||
{
|
||||
BuildTabStripModel("1", IntezmenyResource.Alapadatok, teremModel, Constants.ViewNames.Terem.Edit_TeremBasicProperties_Tab, true)
|
||||
};
|
||||
|
||||
if (isLetesitmenyBerbeadasEnabled)
|
||||
{
|
||||
tabStripItemModelList.Add(BuildTabStripModel("2", IntezmenyResource.Berbeadas, teremModel, Constants.ViewNames.Terem.Edit_TeremBerbeadas_Tab));
|
||||
}
|
||||
|
||||
return tabStripItemModelList;
|
||||
}
|
||||
|
||||
public static ActionResult ExportTermekAdatai(TeremSearchModel model, bool isSelectedTanev21_22OrLater)
|
||||
{
|
||||
MemoryStream stream = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTermekAdataiExcelExport(TeremSearchModel.ConvertModelSearchToCO(model), isSelectedTanev21_22OrLater);
|
||||
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = $"{IntezmenyResource.TermekAdatai}.xlsx" };
|
||||
return result;
|
||||
}
|
||||
|
||||
public static List<UploadedFile> GetPicture(IFileService fileService, int? teremId)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (teremId > 0)
|
||||
{
|
||||
TeremCO teremCO = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTeremCo(teremId.Value);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(teremCO.KepUtvonal) && !string.IsNullOrWhiteSpace(teremCO.KepKiterjesztes))
|
||||
{
|
||||
return new List<UploadedFile>
|
||||
{
|
||||
new UploadedFile
|
||||
{
|
||||
ContentAsBase64EncodedString = fileService.ReadAndResizeImage(teremCO.KepUtvonal, 350, 350)
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlLetolteseKozben);
|
||||
}
|
||||
|
||||
return new List<UploadedFile> { new UploadedFile() };
|
||||
}
|
||||
|
||||
public static (string FajNev, byte[] Content) GetDocument(IFileService fileService, int? teremId)
|
||||
{
|
||||
if (teremId > 0)
|
||||
{
|
||||
TeremCO teremCO = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTeremCo(teremId.Value);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(teremCO.DokumentumUtvonal) && !string.IsNullOrWhiteSpace(teremCO.DokumentumKiterjesztes))
|
||||
{
|
||||
return (FajNev: $"{teremCO.DokumentumNev}.{teremCO.DokumentumKiterjesztes}", Content: fileService.ReadFromFile(teremCO.DokumentumUtvonal));
|
||||
}
|
||||
}
|
||||
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlLetolteseKozben);
|
||||
}
|
||||
|
||||
public static void EugyErtesitesTeremBerbeadhatoStatuszValtozasrol(IEugyintezesClientConfiguration config)
|
||||
{
|
||||
TeremBerbeadhatoStatuszValtozasModel teremBerbeadhatoStatuszValtozasModel = new TeremBerbeadhatoStatuszValtozasModel();
|
||||
TeremHelper teremHelper = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
DataSet berbeadhatoTermekMukodesiHelyeinekVarosaiDataSet = teremHelper.GetBerbeadhatoTermekMukodesiHelyeinekVarosai();
|
||||
teremBerbeadhatoStatuszValtozasModel.Varosok = new List<string>();
|
||||
foreach (DataRow dataRow in berbeadhatoTermekMukodesiHelyeinekVarosaiDataSet.Tables[0].Rows)
|
||||
{
|
||||
teremBerbeadhatoStatuszValtozasModel.Varosok.Add(dataRow.Field<string>("Varos"));
|
||||
}
|
||||
|
||||
var jsonData = JsonConvert.SerializeObject(teremBerbeadhatoStatuszValtozasModel);
|
||||
|
||||
BackgroundJob.Enqueue<IEugyintezesJob>((a) => a.TeremBerbeadhatoStatuszValtozas(null, config.BaseUrl, config.ApiKey, ClaimData.IntezmenyAzonosito, jsonData));
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue