using Dlhis.Basic.Places.Dto;
using Dlhis.Basic.Places.Request;
using Dlhis.Basic.Places.Response;
using Dlhis.Basic.Places.Services;
using Kurisu.AspNetCore.DataAccess.Dto;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Basic.Places.Controllers;
///
/// 营业点权限管理
///
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class BusinessPlacePermissionsController
{
private readonly IBusinessPlacePermissionsService _businessPlacePermissionsService;
public BusinessPlacePermissionsController(IBusinessPlacePermissionsService businessPlacePermissionsService)
{
_businessPlacePermissionsService = businessPlacePermissionsService;
}
///
/// 分页
///
///
///
[Authorize(Roles = "admin,tenant-admin,businessplace-manager")]
[HttpGet("page")]
public async Task> GetPageAsync([FromQuery] BusinessPlacePermissionPageRequest request)
{
return await _businessPlacePermissionsService.GetPageAsync(request);
}
///
/// 获取我的营业点
///
///
[HttpGet("my")]
public async Task> GetMy()
{
return await _businessPlacePermissionsService.GetMyAsync();
}
///
/// 保存营业点
///
///
///
[Authorize(Roles = "admin,tenant-admin")]
[HttpPost("save")]
public async Task SaveBusinessPlacePermissionAsync(BusinessPlacePermissionSaveRequest request)
{
await _businessPlacePermissionsService.SaveBusinessPlacePermissionAsync(request);
}
///
/// 通过userid获取分配的营业点信息
///
///
///
[Authorize(Roles = "admin,tenant-admin")]
[HttpGet("assignments/{userId}")]
public async Task> GetBusinessPlacePermissionByUserIdAsyc(int userId)
{
return await _businessPlacePermissionsService.GetBusinessPlacePermissionByUserIdAsyc(userId);
}
///
/// 删除记录
///
///
///
[Authorize(Roles = "admin,tenant-admin")]
[HttpDelete("{id}")]
public async Task DeleteAssignmentAsync(int id)
{
await _businessPlacePermissionsService.DeleteAssignmentAsync(id);
}
}