init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,202 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using System.Web.Http.Results;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Core;
|
||||
using Kreta.Core.Exceptions;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Framework.Util;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Orarend.Logic;
|
||||
using Kreta.Web.Areas.Orarend.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Orarend.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
||||
public class AdminTanariOrarendApiController : BaseAdminTanariOrarendApiController
|
||||
{
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveNemKotottMunkaIdo(NemKotottMunkaidoModel model)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
try
|
||||
{
|
||||
model.Kezdet = OrarendiOraLogic.CreateLocalDateTimeBasedOnDateAndTime(model.Datum.Value, model.Kezdet.Value);
|
||||
model.Veg = OrarendiOraLogic.CreateLocalDateTimeBasedOnDateAndTime(model.Datum.Value, model.Veg.Value);
|
||||
|
||||
var customModelState = NemKotottMunkaidoLogic.CheckCustomValidation(ModelState, model);
|
||||
if (!customModelState.IsValid)
|
||||
{
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, customModelState);
|
||||
}
|
||||
|
||||
TanevCO tanevCO;
|
||||
TanevHelper tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
tanevCO = tanevHelper.GetTanevInfo();
|
||||
|
||||
NemKotottMunkaidoCO co = NemKotottMunkaidoLogic.ConvertModelToCO(model);
|
||||
NemKotottMunkaidoHelper helper = new NemKotottMunkaidoHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
if (model.Id.HasValue && model.Id > 0)
|
||||
{
|
||||
var lista = new List<int>();
|
||||
switch (model.ModositasiIdoszakTipus)
|
||||
{
|
||||
case (int)OraModositasiIdoszakTipus.TeljesIdoszak:
|
||||
helper.UpdateNemKotottMunkaIdoByGroupId(co, tanevCO.OraFelvetelKezdete + co.Kezdete.TimeOfDay, tanevCO.UtolsoTanitasiNap + co.Vege.TimeOfDay);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNaptol:
|
||||
helper.UpdateNemKotottMunkaIdoByGroupId(co, co.Kezdete, tanevCO.UtolsoTanitasiNap + co.Vege.TimeOfDay, Guid.NewGuid().ToString());
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNapig:
|
||||
helper.UpdateNemKotottMunkaIdoByGroupId(co, tanevCO.OraFelvetelKezdete + co.Kezdete.TimeOfDay, co.Vege, Guid.NewGuid().ToString());
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.EgyOra:
|
||||
helper.UpdateNemKotottMunkaIdoByGroupId(co, co.Kezdete, co.Vege, Guid.NewGuid().ToString());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
co.GroupId = Guid.NewGuid().ToString();
|
||||
|
||||
var lista = new List<DateTime>();
|
||||
switch (model.ModositasiIdoszakTipus)
|
||||
{
|
||||
case (int)OraModositasiIdoszakTipus.TeljesIdoszak:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoInsert(tanevCO.OraFelvetelKezdete, tanevCO.UtolsoTanitasiNap, co.Kezdete.Date, co.HetirendId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNaptol:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoInsert(co.Kezdete.Date, tanevCO.UtolsoTanitasiNap, co.Kezdete.Date, co.HetirendId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNapig:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoInsert(tanevCO.OraFelvetelKezdete, co.Kezdete.Date, co.Kezdete.Date, co.HetirendId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.EgyOra:
|
||||
helper.Insert(co);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
foreach (var item in lista)
|
||||
{
|
||||
co.Kezdete = item.AddHours(co.Kezdete.Hour).AddMinutes(co.Kezdete.Minute);
|
||||
co.Vege = item.AddHours(co.Vege.Hour).AddMinutes(co.Vege.Minute);
|
||||
|
||||
helper.Insert(co);
|
||||
}
|
||||
}
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (BlException ex)
|
||||
{
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public IHttpActionResult UtkozesValidateNemKotottMunkaido(NemKotottMunkaidoModel model)
|
||||
{
|
||||
var hasUtkozes = Logic.NemKotottMunkaidoLogic.CheckUtkozesValidation(model);
|
||||
int tevekenysegutkozesSystemSetting = Logic.NemKotottMunkaidoLogic.GetTevekenysegUtkozesSystemSetting();
|
||||
|
||||
if (tevekenysegutkozesSystemSetting != (int)TevekenysegUtkozesEnum.UtkozesMegengedett && hasUtkozes)
|
||||
{
|
||||
if (tevekenysegutkozesSystemSetting == (int)TevekenysegUtkozesEnum.UtkozesNemLehetseges)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, OrarendResource.NemKotottMunkaidoFelviteleNemLehetsegesUtkozesMiatt);
|
||||
}
|
||||
|
||||
return Json(new { Valid = false, Text = string.Format(OrarendResource.NemKotottMunkaidoFelviteleNemLehetsegesUtkozesMiattKerdes) });
|
||||
}
|
||||
return Json(new { Valid = true, Text = string.Empty });
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public IHttpActionResult TorlesValidateNemKotottMunkaido(NemKotottMunkaidoModel model)
|
||||
{
|
||||
var naplozottNemkotottMunkaidoSzam = NemKotottMunkaidoLogic.GetNaplozottNemkotottMunkaidoSzamByGroupId(model);
|
||||
if (naplozottNemkotottMunkaidoSzam > 0)
|
||||
{
|
||||
return Json(new { Valid = false, Text = string.Format(OrarendResource.AMuveletSoran0DarabNaplozottNemkotottMunkaido, naplozottNemkotottMunkaidoSzam) });
|
||||
}
|
||||
return Json(new { Valid = true, Text = string.Empty });
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteNemKotottMunkaIdo(NemKotottMunkaidoModel model)
|
||||
{
|
||||
TanevCO tanevCO;
|
||||
TanevHelper tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
tanevCO = tanevHelper.GetTanevInfo();
|
||||
|
||||
model.Kezdet = OrarendiOraLogic.CreateLocalDateTimeBasedOnDateAndTime(model.Datum.Value, model.Kezdet.Value);
|
||||
model.Veg = OrarendiOraLogic.CreateLocalDateTimeBasedOnDateAndTime(model.Datum.Value, model.Veg.Value);
|
||||
|
||||
NemKotottMunkaidoHelper helper = new NemKotottMunkaidoHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
List<int> lista = new List<int>();
|
||||
switch (model.ModositasiIdoszakTipus)
|
||||
{
|
||||
case (int)OraModositasiIdoszakTipus.TeljesIdoszak:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoDelete(tanevCO.OraFelvetelKezdete, tanevCO.UtolsoTanitasiNap, model.GroupId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNaptol:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoDelete(model.Kezdet.Value.Date, tanevCO.UtolsoTanitasiNap, model.GroupId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.AdottNapig:
|
||||
lista = helper.GetNapokForNemKotottMunkaidoDelete(tanevCO.OraFelvetelKezdete, model.Kezdet.Value.AddDays(1).Date, model.GroupId);
|
||||
break;
|
||||
case (int)OraModositasiIdoszakTipus.EgyOra:
|
||||
helper.Delete(model.Id.Value, isAdmin: true);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
foreach (var item in lista)
|
||||
{
|
||||
helper.Delete(item, isAdmin: true);
|
||||
}
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
|
||||
|
||||
public bool IsTanevRendEsemenyNemKotottMunkaido(CalendarModel model)
|
||||
{
|
||||
var helper = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
return helper.GetVanTanevRendjeEsemenyNemKotottMunkaido(model.Start, model.End);
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
public bool EnabledNemKotottMunkaidoRogzitese(DateTime date)
|
||||
{
|
||||
var tanevrendHelper = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
bool enabledNemKotottMunkaidoRogzitese = tanevrendHelper.EnabledNemKotottMunkaidoRogzitese(date);
|
||||
|
||||
return enabledNemKotottMunkaidoRogzitese;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue