using Dlhis.Basic.Device.Response;
using Dlhis.Basic.Organization.Request;
using Dlhis.Basic.Organization.Response;
using Dlhis.Basic.Organization.Services;
using Dlhis.Basic.Places.Response;
using Dlhis.Entity.Device.Enums;
using Kurisu.AspNetCore.DataAccess.Dto;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Basic.Organization.Controllers;
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class GainfoPermissionsController : ControllerBase
{
private readonly IGainfoPermissionService _gainfoPermissions;
public GainfoPermissionsController(IGainfoPermissionService gainfoPermissions)
{
_gainfoPermissions = gainfoPermissions;
}
///
/// 根据档案号 设备组查询设备
///
///
///
///
[HttpGet("devicesUnderGroupByUserNo")]
public async Task> GetDevicesUnderGroupByUserNoAsync(string userNo, Guid deviceGroupCode)
{
return await _gainfoPermissions.GetDevicesUnderGroupByUserNoAsync(userNo, deviceGroupCode);
}
///
/// 获取用户所有设备权限
///
///
///
[HttpGet("assignDeviceCodes")]
public async Task> GetAssignDeviceCodesAsync([FromQuery] DeviceAssRequest request)
{
return await _gainfoPermissions.GetAssignDeviceCodesAsync(request);
}
///
/// 权限重置
///
///
///
[Authorize(Roles = "admin")]
[HttpPost("reset")]
public async Task ResetPermissionsAsync(GainfoPermissionResetRequest request)
{
return await _gainfoPermissions.ResetPermissionsAsync(request.UserNo, request.Status ? DeviceTaskEnumType.Add : DeviceTaskEnumType.Delete, null);
}
}