Files
jinko.yikatong/Src/Dlhis.Basic/Places/Controllers/BusinessPlacePermissionsController.cs

85 lines
2.6 KiB
C#

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;
/// <summary>
/// 营业点权限管理
/// </summary>
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class BusinessPlacePermissionsController
{
private readonly IBusinessPlacePermissionsService _businessPlacePermissionsService;
public BusinessPlacePermissionsController(IBusinessPlacePermissionsService businessPlacePermissionsService)
{
_businessPlacePermissionsService = businessPlacePermissionsService;
}
/// <summary>
/// 分页
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Authorize(Roles = "admin,tenant-admin,businessplace-manager")]
[HttpGet("page")]
public async Task<Pagination<BusinessPlacePermissionPageResponse>> GetPageAsync([FromQuery] BusinessPlacePermissionPageRequest request)
{
return await _businessPlacePermissionsService.GetPageAsync(request);
}
/// <summary>
/// 获取我的营业点
/// </summary>
/// <returns></returns>
[HttpGet("my")]
public async Task<List<BusinessPlaceDto>> GetMy()
{
return await _businessPlacePermissionsService.GetMyAsync();
}
/// <summary>
/// 保存营业点
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Authorize(Roles = "admin,tenant-admin")]
[HttpPost("save")]
public async Task SaveBusinessPlacePermissionAsync(BusinessPlacePermissionSaveRequest request)
{
await _businessPlacePermissionsService.SaveBusinessPlacePermissionAsync(request);
}
/// <summary>
/// 通过userid获取分配的营业点信息
/// </summary>
/// <param name="userId"></param>
/// <returns></returns>
[Authorize(Roles = "admin,tenant-admin")]
[HttpGet("assignments/{userId}")]
public async Task<List<BusinessPlacePermissionPageResponse>> GetBusinessPlacePermissionByUserIdAsyc(int userId)
{
return await _businessPlacePermissionsService.GetBusinessPlacePermissionByUserIdAsyc(userId);
}
/// <summary>
/// 删除记录
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[Authorize(Roles = "admin,tenant-admin")]
[HttpDelete("{id}")]
public async Task DeleteAssignmentAsync(int id)
{
await _businessPlacePermissionsService.DeleteAssignmentAsync(id);
}
}