53 lines
1.4 KiB
C#
53 lines
1.4 KiB
C#
using _0_Framework.Application;
|
|
using CompanyManagment.App.Contracts.Reward;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using ServiceHost.BaseControllers;
|
|
|
|
namespace ServiceHost.Areas.Client.Controllers;
|
|
|
|
public class RewardController:ClientBaseController
|
|
{
|
|
private readonly IRewardApplication _rewardApplication;
|
|
private readonly long _workshopId;
|
|
|
|
public RewardController(IRewardApplication rewardApplication, IAuthHelper authHelper)
|
|
{
|
|
_rewardApplication = rewardApplication;
|
|
_workshopId = authHelper.GetWorkshopId();
|
|
}
|
|
|
|
[HttpGet]
|
|
public ActionResult<RewardsGroupedViewModel> GetList(RewardSearchModel searchModel)
|
|
{
|
|
searchModel.WorkshopId = _workshopId;
|
|
var res = _rewardApplication.GetSearchListAsGrouped(searchModel);
|
|
return res;
|
|
}
|
|
|
|
[HttpPost]
|
|
public ActionResult<OperationResult> Create(CreateRewardViewModel create)
|
|
{
|
|
create.WorkshopId = _workshopId;
|
|
return _rewardApplication.Create(create);
|
|
}
|
|
|
|
[HttpPut]
|
|
public ActionResult<OperationResult> Edit(EditRewardViewModel edit)
|
|
{
|
|
edit.WorkshopId = _workshopId;
|
|
return _rewardApplication.Edit(edit);
|
|
}
|
|
|
|
[HttpDelete]
|
|
public ActionResult<OperationResult> Delete(long id)
|
|
{
|
|
return _rewardApplication.Remove(id);
|
|
}
|
|
|
|
[HttpGet("{id:long}")]
|
|
public ActionResult<EditRewardViewModel> Details(long id)
|
|
{
|
|
return _rewardApplication.GetDetails(id);
|
|
}
|
|
|
|
} |