init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
KretaWeb/Controllers
332
KretaWeb/Controllers/LayoutController.cs
Normal file
332
KretaWeb/Controllers/LayoutController.cs
Normal file
|
@ -0,0 +1,332 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using System.Xml.Linq;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Adminisztracio.Models;
|
||||
using Kreta.Web.Controllers.Logic;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.Modal;
|
||||
using Kreta.Web.Models;
|
||||
using Kreta.Web.Models.Builder;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
public class LayoutController : Controller
|
||||
{
|
||||
public static bool SuccessFeedBackWindowNeeded => new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.SuccessFeedBack_Disable);
|
||||
|
||||
public JsonResult LogOut()
|
||||
{
|
||||
MasterLayoutLogic.LogOut();
|
||||
|
||||
var loginUrl = Url.Action("Index", "Login", new { Area = "Adminisztracio" });
|
||||
/* return Redirect(loginUrl); kellene majd használni */
|
||||
return Json(new { Url = loginUrl });
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public ActionResult Excel_Export_Save(string contentType, string base64, string fileName)
|
||||
{
|
||||
var fileContents = Convert.FromBase64String(base64);
|
||||
return File(fileContents, contentType, fileName);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public ActionResult Pdf_Export_Save(string contentType, string base64, string fileName)
|
||||
{
|
||||
var fileContents = Convert.FromBase64String(base64);
|
||||
return File(fileContents, contentType, fileName);
|
||||
}
|
||||
|
||||
public ActionResult GetRemainingTime()
|
||||
{
|
||||
return Content(SessionHandler.GetRemainingTime().ToString());
|
||||
}
|
||||
|
||||
public void ExtendSessionTime()
|
||||
{
|
||||
/*Funkciója van! ne töröld ki.*/
|
||||
/*Minden hívás frissíti az időt ez nem csinál semmít ez csak azért kell hogy legyen mit hívni.*/
|
||||
}
|
||||
|
||||
public ActionResult GetLayoutInformation(string url)
|
||||
{
|
||||
var model = new LayoutModel();
|
||||
var builder = new LayoutModelBuilder();
|
||||
var olvasatlanUzenetekSzama = "0";//eugyintezesClient.GetOlvasatlanUzenetek(ClaimData.IntezmenyAzonosito, ClaimData.FelhasznaloId).ToString();
|
||||
|
||||
builder.SetBase(olvasatlanUzenetekSzama, model, url);
|
||||
return Json(model);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public void ClientError(ClientErrorModel clientError)
|
||||
{
|
||||
var error = new ClientError(clientError);
|
||||
#if !DEBUG
|
||||
Kreta.Framework.SDAServer.Instance.Logger.ExceptionThrown(error);
|
||||
#endif
|
||||
}
|
||||
|
||||
[OutputCache(Duration = 800, VaryByParam = "SzerepkorId;FelhasznaloId;SelectedTanevId")]
|
||||
public ActionResult Menu(string SzerepkorId, string FelhasznaloId, int SelectedTanevId)
|
||||
{
|
||||
return PartialView("_NavigationBar");
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public bool ChangeSelectedTanev(int selectedTanevId)
|
||||
{
|
||||
ClaimData.SelectedTanevID = selectedTanevId;
|
||||
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
|
||||
|
||||
new AdminHelper(connectionType).RefreshUserContextSelectedTanev();
|
||||
|
||||
var tanevHelper = new TanevHelper(connectionType);
|
||||
if (!ClaimData.IsAdministrator && !ClaimData.IsArchivIntezmeny)
|
||||
{
|
||||
ClaimData.FelhasznaloId = tanevHelper.GetFelhasznaloIdBySelectedTanevIdAndFelhasznaloId(ClaimData.FelhasznaloId).First(x => x.TanevId == ClaimData.SelectedTanevID).FelhasznaloId;
|
||||
}
|
||||
|
||||
List<string> list = new List<string>();
|
||||
if (selectedTanevId == ClaimData.AktivTanevID.Value)
|
||||
{
|
||||
list = ParseSiteMapXml("activeyear");
|
||||
}
|
||||
else if (ClaimData.KovTanevID.HasValue && selectedTanevId == ClaimData.KovTanevID.Value)
|
||||
{
|
||||
list = ParseSiteMapXml("nextyear");
|
||||
}
|
||||
else
|
||||
{
|
||||
list = ParseSiteMapXml("prevyear");
|
||||
}
|
||||
|
||||
var intezmenyAdatok = new IntezmenyHelper(connectionType).GetIntezmenyiAdatok();
|
||||
|
||||
ClaimData.RefreshOrganizationFullAddress(intezmenyAdatok);
|
||||
ClaimData.OrganizationName = intezmenyAdatok.Nev;
|
||||
ClaimData.OrganizationShortName = intezmenyAdatok.RovidNev ?? string.Empty;
|
||||
ClaimData.OrganizationCode = intezmenyAdatok.OMKod;
|
||||
ClaimData.IsBeiratkozasVeglegesitve = intezmenyAdatok.IsBeiratkozasVeglegesitve;
|
||||
ClaimData.LicenceDatum = intezmenyAdatok.LicenceDatum;
|
||||
ClaimData.JustLEPOrganization = intezmenyAdatok.IsCsakLepKezelo;
|
||||
ClaimData.IsSzirIntezmeny = intezmenyAdatok.IsSzirIntezmeny;
|
||||
ClaimData.IsArchivIntezmeny = intezmenyAdatok.IsArchivIntezmeny;
|
||||
ClaimData.IsSzakkepzoIntezmeny = intezmenyAdatok.IsSzakkepzo;
|
||||
|
||||
var selectedTanev = tanevHelper.GetTanevInfo();
|
||||
ClaimData.IsSelectedTanev20_21OrLater = CommonUtils.IsSelectedTanev20_21OrLater(selectedTanev);
|
||||
ClaimData.IsSelectedTanev21_22OrLater = CommonUtils.IsSelectedTanev21_22OrLater(selectedTanev);
|
||||
ClaimData.IsSelectedTanevIsElozo = CommonUtils.IsSelectedTanevIsElozo(selectedTanev);
|
||||
|
||||
var url = Request.UrlReferrer.AbsolutePath;
|
||||
var requestController = url.Substring(url.LastIndexOf("/") + 1);
|
||||
|
||||
return list.Contains(requestController) || ClaimData.IsArchivIntezmeny;
|
||||
}
|
||||
|
||||
public List<string> ParseSiteMapXml(string attribute)
|
||||
{
|
||||
XElement xelement = XElement.Load(Server.MapPath("~/Menu/MapMvc.sitemap"));
|
||||
|
||||
var xmlSelect = xelement.Descendants()
|
||||
.SelectMany(sel => sel.Elements())
|
||||
.Where(sel => sel.Attribute("controller") != null &&
|
||||
(sel.Attribute(attribute) != null || (sel.Attribute("nextyear") == null && sel.Attribute("activeyear") == null && sel.Attribute("prevyear") == null))
|
||||
)
|
||||
.Select(nd => new
|
||||
{
|
||||
controller = nd.Attribute("controller")
|
||||
});
|
||||
|
||||
List<string> list = new List<string>();
|
||||
foreach (var item in xmlSelect)
|
||||
{
|
||||
list.Add(item.controller.Value);
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
public ActionResult DashboardUzenetPopup(int popupId, string egyediAzonosito)
|
||||
{
|
||||
if (popupId == 0 || string.IsNullOrWhiteSpace(egyediAzonosito))
|
||||
{
|
||||
return new EmptyResult();
|
||||
}
|
||||
|
||||
var model = ConvertDashboardItemToModel(new AdminHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetDashboardPopupUzenet(ClaimData.GondviseloId, popupId, egyediAzonosito).Tables[0].Rows[0]);
|
||||
|
||||
return PartialView("DashboardUzenetPopup", model);
|
||||
}
|
||||
|
||||
public ActionResult UpdateDashboardPopupClose(int popupId, string egyediAzonosito)
|
||||
{
|
||||
new AdminHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).UpdateDashboardPopupClose(popupId);
|
||||
|
||||
// Következő bejelentkezésig nem dobjuk fel ezt a popup-ot:
|
||||
var popupCookie = HttpContext.Request.Cookies["DisplayedPopups"];
|
||||
popupCookie.Value += "|" + egyediAzonosito;
|
||||
popupCookie.HttpOnly = true;
|
||||
popupCookie.Secure = true;
|
||||
popupCookie.SameSite = System.Web.SameSiteMode.None;
|
||||
HttpContext.Response.SetCookie(popupCookie);
|
||||
|
||||
return new EmptyResult();
|
||||
}
|
||||
|
||||
public ActionResult UpdateDashboardPopupConfirm(int popupId)
|
||||
{
|
||||
new AdminHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).UpdateDashboardPopupConfirm(popupId);
|
||||
return new EmptyResult();
|
||||
}
|
||||
|
||||
public string UpdateDashboardPopupNext(int popupId)
|
||||
{
|
||||
var redirectUrl = new AdminHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).UpdateDashboardPopupNext(popupId);
|
||||
|
||||
return redirectUrl;
|
||||
}
|
||||
|
||||
private static AdminDashboardPopupItemModel ConvertDashboardItemToModel(DataRow row)
|
||||
{
|
||||
return new AdminDashboardPopupItemModel()
|
||||
{
|
||||
DashboardUzenetFelhasznaloId = SDAConvert.ToInt32(row["ID"]),
|
||||
EgyediAzonosito = SDAConvert.ToString(row["C_EGYEDIAZONOSITO"]),
|
||||
EgyediMuvelet = SDAConvert.ToString(row["C_EGYEDIMUVELET"]),
|
||||
Name = SDAConvert.ToString(row["C_CIM"]),
|
||||
Content = SDAConvert.ToString(row["C_TARTALOM"]),
|
||||
Type = (AdminDashboardTipusEnum)SDAConvert.ToInt32(row["C_DASHBOARDUZENETKATEGORIAID"]),
|
||||
MegjelenitesekSzama = SDAConvert.ToInt32(row["C_MEGJELENITESEKSZAMA"]),
|
||||
};
|
||||
}
|
||||
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
|
||||
public ActionResult OpenIskolaorUzenetKuldesPopup()
|
||||
{
|
||||
var helper = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var telefonszam = helper.GetTelefonszamItemCoList(ClaimData.FelhasznaloId).FirstOrDefault(x => x.Alapertelmezett)?.Telefonszam ?? "";
|
||||
|
||||
var iskolaorLista = helper.GetIskolaor().Select(x => new IskolaorAdatModel
|
||||
{
|
||||
IskolaorID = x.Id,
|
||||
IskolaorTelefonszam = x.AlapertelmezettTelefonszam,
|
||||
IskolaorIdpAzonosito = x.IdpEgyediAzonosito.ToString(),
|
||||
IskolaorNev = x.Nev,
|
||||
});
|
||||
var list = new List<SelectListItem>();
|
||||
foreach (var item in iskolaorLista)
|
||||
{
|
||||
list.Add(new SelectListItem
|
||||
{
|
||||
Text = item.IskolaorNev,
|
||||
Value = item.IskolaorID.ToString(),
|
||||
});
|
||||
}
|
||||
var model = new IskolaorPopupModel
|
||||
{
|
||||
IntezmenyAzonosito = ClaimData.IntezmenyAzonosito,
|
||||
KuldoID = ClaimData.FelhasznaloId.ToString(),
|
||||
KuldoNev = ClaimData.FelhasznaloNev,
|
||||
KuldoTelefonszam = telefonszam,
|
||||
IskolaorList = list,
|
||||
IskolaorAdatModelList = iskolaorLista.ToList(),
|
||||
IskolaorTelefonszam = list.Count == 1 ? iskolaorLista.First().IskolaorTelefonszam : null,
|
||||
Sablon1Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.VeszelybenVan,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon1",
|
||||
},
|
||||
Sablon2Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.BalesetTortent,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon2",
|
||||
},
|
||||
Sablon3Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.TuzVan,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon3",
|
||||
},
|
||||
Sablon4Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.VerekedesTortent,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon4",
|
||||
},
|
||||
Sablon5Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.ADiakokOsszeverekedtek,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon5",
|
||||
},
|
||||
Sablon6Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.Tanteremben,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon6",
|
||||
},
|
||||
Sablon7Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.AzOsztalyteremben,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon7",
|
||||
},
|
||||
Sablon8Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.AFolyoson,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon8",
|
||||
},
|
||||
Sablon9Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.AzUdvaron,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon9",
|
||||
},
|
||||
Sablon10Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.AzEmeleten,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon10",
|
||||
},
|
||||
Sablon11Button = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.AzEtkezoben,
|
||||
EventName = "IskolaorHelper.addSablonText",
|
||||
Name = "sablon11",
|
||||
},
|
||||
UzenetKuldesButton = new ModalButtonModel
|
||||
{
|
||||
Text = IskolaorResource.UzenetElkuldese,
|
||||
EventName = "IskolaorHelper.sendUzenet",
|
||||
Name = "uzenetElkuldeseButton",
|
||||
}
|
||||
};
|
||||
return PartialView("IskolaorUzenetKuldesPopup", model);
|
||||
}
|
||||
|
||||
public string GetBankszamlaVezetoBankNeve(string bankszamlaSzam)
|
||||
{
|
||||
return new FelhasznaloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetBankszamlaVezetoBankNeve(bankszamlaSzam);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue