using System.ComponentModel.DataAnnotations;
using Dlhis.Entity.Device.Enums;
using Dlhis.Entity.Sys.Enums;
using Dlhis.Sys.DataPermission.Request;
using Dlhis.Sys.DataPermission.Response;
using Dlhis.Sys.DataPermission.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Sys.DataPermission.Controllers;
///
/// 数据权限
///
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class DataPermissionsController : ControllerBase
{
private readonly IDataPermissionService _dataPermissionService;
public DataPermissionsController(IDataPermissionService dataPermissionService)
{
_dataPermissionService = dataPermissionService;
}
[HttpPost("save")]
public async Task SaveAsync(DataPermissionSaveRequest request)
{
await _dataPermissionService.SaveAsync(request);
}
[HttpGet("assignments")]
public async Task> GetAssignmentsAsync(string assignValue,
[EnumDataType(typeof(DataPermissionAssignmentEnumType))] DataPermissionAssignmentEnumType uniqueType,
DeviceTypeEnumType? type)
{
return await _dataPermissionService.GetAssignmentsAsync(assignValue, uniqueType, type);
}
///
/// 获取用户的设备数据权限
///
///
///
[HttpGet("userDevicePermissions")]
public async Task> GetUsersDeviceDataPermissionsAsync(Guid deviceCode)
{
return await _dataPermissionService.GetUsersDeviceDataPermissionsAsync(deviceCode);
}
}