146 lines
5.7 KiB
C#
146 lines
5.7 KiB
C#
using System.Net;
|
|
using System.Net.Http;
|
|
using System.Web.Http;
|
|
using System.Web.Http.ModelBinding;
|
|
using System.Web.Http.Results;
|
|
using Kendo.Mvc.UI;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.Core.Exceptions;
|
|
using Kreta.Web.Areas.GRModul.Models;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.Error;
|
|
using Kreta.Web.Helpers.Grid;
|
|
using Kreta.Web.Security;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace Kreta.Web.Areas.GRModul.ApiControllers
|
|
{
|
|
[ApiRoleClaimsAuthorize(true)]
|
|
[ApiRolePackageAuthorize("KretaClaimPackages.GazdasagiUgyintezo.ClaimValue")]
|
|
public class BeszerzesiIgenyApiController : ApiController
|
|
{
|
|
public DataSourceResult GetBeszerzesiIgenyGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
|
{
|
|
BeszerzesiIgenySearchModel model = JsonConvert.DeserializeObject<BeszerzesiIgenySearchModel>(data);
|
|
|
|
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
helper.GridParameters = Converter.GridParameter(request);
|
|
var result = helper.BeszerzesiIgenyKereses(model.ConvertModelToCo(ClaimData.SelectedTanevID.Value));
|
|
return result.ToDataSourceResult();
|
|
}
|
|
|
|
public DataSourceResult GetBeszerzesiIgenyDokGrid(int igenylesId)
|
|
{
|
|
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var result = helper.BeszerzesiIgenyDokList(igenylesId);
|
|
return result.ToDataSourceResult();
|
|
}
|
|
|
|
public DataSourceResult GetBeszerzesiIgenyMegjegyzesGrid(int igenylesId)
|
|
{
|
|
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var result = helper.BeszerzesiIgenyMegjegyzesList(igenylesId);
|
|
return result.ToDataSourceResult();
|
|
}
|
|
|
|
public JsonResult<AnyagModel> GetAnyagTorzsAdat(int torzsId)
|
|
{
|
|
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
return Json(ConvertCoToAnyagModel(helper.GetAnyagTorzsAdat(torzsId)));
|
|
}
|
|
|
|
public JsonResult<SzallitoModel> GetSzallitoTorzsAdat(int torzsId)
|
|
{
|
|
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
return Json(ConvertCoToSzallitoModel(helper.GetSzallitoTorzsAdat(torzsId)));
|
|
}
|
|
|
|
[HttpPost]
|
|
[ApiValidateAjaxAntiForgeryToken]
|
|
public HttpResponseMessage SaveBeszerzesiIgeny(BeszerzesiIgenyModel model)
|
|
{
|
|
try
|
|
{
|
|
if (ModelState.IsValid)
|
|
{
|
|
var co = BeszerzesiIgenyModel.ConvertModelToCo(model);
|
|
new BeszerzesiModulHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).SaveBeszerzesiIgeny(co);
|
|
return new HttpResponseMessage(HttpStatusCode.OK);
|
|
}
|
|
|
|
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
|
}
|
|
catch (BlException e)
|
|
{
|
|
StatusError error = new StatusError(HttpStatusCode.BadRequest, e.Message);
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
protected static AnyagModel ConvertCoToAnyagModel(BeszerzesiIgenyCo co)
|
|
{
|
|
return new AnyagModel()
|
|
{
|
|
//AnyagId = co.AnyagId, //TODO
|
|
AnyagMegnevezes = co.AnyagMegnevezes,
|
|
AnyagMennyisegiEgysegId = co.AnyagMennyisegiEgysegId,
|
|
AnyagRovidLeiras = co.AnyagRovidLeiras,
|
|
AnyagTetelMegnevezes = co.AnyagTetelMegnevezes,
|
|
AnyagTetelEgysegar = co.AnyagTetelEgysegar,
|
|
AnyagTetelMennyisegiEgysegId = co.AnyagTetelMennyisegiEgysegId,
|
|
AnyagTetelMennyiseg = co.AnyagTetelMennyiseg
|
|
};
|
|
}
|
|
|
|
protected static SzallitoModel ConvertCoToSzallitoModel(BeszerzesiIgenyCo co)
|
|
{
|
|
return new SzallitoModel()
|
|
{
|
|
//SzallitoId = co.SzallitoId, //TODO
|
|
SzallitoNev = co.SzallitoNev,
|
|
IrSzam = co.Iranyitoszam,
|
|
HelysegNev = co.HelysegNev,
|
|
KozteruletNev = co.KozteruletNev,
|
|
KozteruletJellegId = co.KozteruletJellegeId,
|
|
Hazszam = co.Hazszam,
|
|
Emelet = co.Emelet,
|
|
Ajto = co.Ajto,
|
|
Adoszam = co.Adoszam,
|
|
KepviseloNeve = co.KepviseloNev,
|
|
EmailCim = co.EmailCim,
|
|
Telefonszam = co.Telefonszam,
|
|
FizetesiMod = co.FizetesiMod
|
|
};
|
|
}
|
|
|
|
[HttpPost]
|
|
[ApiValidateAjaxAntiForgeryToken]
|
|
public HttpResponseMessage SaveBeszerzesiIgenyElfogadas(int igenyId)
|
|
{
|
|
//new GRModulHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).BeszerzesiIgenyElfogadas(igenyId);
|
|
return new HttpResponseMessage(HttpStatusCode.OK);
|
|
}
|
|
|
|
[HttpPost]
|
|
[ApiValidateAjaxAntiForgeryToken]
|
|
public HttpResponseMessage SaveBeszerzesiIgenyElutasitas(int igenyId)
|
|
{
|
|
//new GRModulHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).BeszerzesiIgenyElutasitas(igenyId);
|
|
return new HttpResponseMessage(HttpStatusCode.OK);
|
|
}
|
|
|
|
[HttpPost]
|
|
[ApiValidateAjaxAntiForgeryToken]
|
|
public HttpResponseMessage SaveBeszerzesiIgenyHianyPotlas(int igenyId)
|
|
{
|
|
//new GRModulHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).BeszerzesiIgenyHianyPotlas(igenyId);
|
|
return new HttpResponseMessage(HttpStatusCode.OK);
|
|
}
|
|
}
|
|
}
|