85 lines
2.6 KiB
C#
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);
|
|
}
|
|
}
|