148 lines
5.8 KiB
C#
148 lines
5.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Web.Mvc;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.BusinessLogic.Security;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.Orarend.Models;
|
|
using Kreta.Web.Controllers;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.TabStrip;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.Orarend.Controllers
|
|
{
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
|
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public class AdminKozpontiOrakController : Controller
|
|
{
|
|
// GET: Orarend/AdminKozpontiOrak
|
|
public ActionResult Index()
|
|
{
|
|
var model = new KozpontiOraModel();
|
|
|
|
var helper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
model.HetirendJson = helper.GetHetirendek();
|
|
model.NaptariHetekHetirendJson = helper.GetNaptariHetekHetirendek();
|
|
|
|
var co = helper.GetCalendarMinMax();
|
|
model.CalendarMinTime = co.CalendarMin.Subtract(new TimeSpan(0, 15, 0)); // "15 perccel legyen előbb"
|
|
model.CalendarMaxTime = co.CalendarMax.Add(new TimeSpan(0, 15, 0)); // "15 perccel legyen később"
|
|
|
|
model.CsengetesiRendMinTime = new TimeSpan();
|
|
model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0);
|
|
|
|
var comboBoxHelperController = new ComboBoxHelperApiController();
|
|
|
|
model.Tanarok = comboBoxHelperController.GetTanarDropDown().ToJson();
|
|
model.Tantargyak = comboBoxHelperController.GetTantargyDropDown(filterNincsBeloleOra: true).ToJson();
|
|
model.Termek = comboBoxHelperController.GetTeremListWithoutGroupDropDown().ToJson();
|
|
|
|
model.TabList = GetKozpontiOraTabs();
|
|
|
|
return View("Index", model);
|
|
}
|
|
|
|
public ActionResult OpenSelectPopUp()
|
|
{
|
|
var model = new PopUpModel(new object(), "Select_PopUp");
|
|
|
|
model.AddCancelBtn(model, "KozpontiOra.selectPopUpWindowCancel");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
public ActionResult OpenDetailsGrid(AdminKozpontiOrakOsztalyokGridModel model)
|
|
{
|
|
return PartialView("DetailGrid", model);
|
|
}
|
|
|
|
public ActionResult OpenModositasPopUp(DateTime start, DateTime end, int hanyadikOra)
|
|
{
|
|
var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "Modositas_PopUp");
|
|
|
|
model.AddCancelBtn(model, "KozpontiOra.modositasPopUpWindowCancel");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
public ActionResult OpenOrarendiOrakTorleseKozpontilagPopUp(DateTime start, DateTime end, int hanyadikOra)
|
|
{
|
|
var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "OrarendiOrakTorleseKozpontilag_PopUp");
|
|
|
|
model.AddCancelBtn(model, "KozpontiOra.deleteOrarendiOrakKozpontilagPopUpWindowCancel");
|
|
model.AddBtn(model, "torlesBtn", CommonResource.Torles, "KozpontiOra.OrarendOrakTorleseKozpontilag");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
public ActionResult OpenOrarendiOrakVisszaallitasaPopUp(DateTime start, DateTime end, int hanyadikOra)
|
|
{
|
|
var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "OrarendiOrakVisszaallitasa_PopUp");
|
|
|
|
model.AddBtn(model, "megseBtn", KozpontiOrakResource.KilepesVisszaallitasNelkul, "KozpontiOra.OrarendiOrakVisszaallitasaPopUpWindowCancel");
|
|
model.AddBtn(model, "torlesBtn", KozpontiOrakResource.KijeloltOrakVisszaallitasa, "KozpontiOra.OrarendOrakVisszaallitasa");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
public ActionResult OpenCreate(TanoraAdatok model)
|
|
{
|
|
var rogzitesModel = AdminKozpontiOrakRogzitesModel.MapFromTanoraAdatok(model);
|
|
|
|
return PartialView("Create", rogzitesModel);
|
|
}
|
|
|
|
public ActionResult OpenUtkozoOrak(DateTime start, DateTime end, int hanyadikora, List<AdminKozpontiOrakRogzitesSelectedModel> list)
|
|
{
|
|
var searchModel = new AdminKozpontiOrakSearchModel
|
|
{
|
|
Start = start.ToLocalTime(),
|
|
End = end.ToLocalTime(),
|
|
HanyadikOra = hanyadikora,
|
|
KozpontiOrakList = list
|
|
};
|
|
|
|
return PartialView("UtkozoOrarendiOrak", searchModel);
|
|
}
|
|
|
|
public ActionResult OpenCreateTanoraAdatok(AdminKozpontiOrakRogzitesModel model)
|
|
{
|
|
var tanoraAdataiModel = TanoraAdatok.MapFromKozpontiOrakRogzitesModel(model);
|
|
tanoraAdataiModel.Sorszamozando = true;
|
|
|
|
return PartialView("CreateTanoraAdatok", tanoraAdataiModel);
|
|
}
|
|
|
|
public ActionResult GetKozpontiOra(int index = 0)
|
|
{
|
|
var model = new KozpontiOraCalendarModel
|
|
{
|
|
Index = index
|
|
};
|
|
|
|
return View("KozpontiOra_Tab", model);
|
|
}
|
|
|
|
private List<TabStripItemModel> GetKozpontiOraTabs()
|
|
{
|
|
return new List<TabStripItemModel>
|
|
{
|
|
new TabStripItemModel
|
|
{
|
|
ItemId = "0",
|
|
ItemName = KozpontiOrakResource.KozpontiOraKezelese,
|
|
Area = "Orarend",
|
|
Controller = "AdminKozpontiOrak",
|
|
Action = "GetKozpontiOra",
|
|
RouteParameters = new Dictionary<string, string> {
|
|
{ "index", "0"}
|
|
}
|
|
}
|
|
};
|
|
}
|
|
}
|
|
}
|