diff --git a/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs b/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
index d704bfff..66d00009 100644
--- a/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
+++ b/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
@@ -4,6 +4,7 @@ using Dlhis.Basic.Organization.Response;
using Dlhis.Basic.Organization.Services;
using Dlhis.Entity.Device.Enums;
using Kurisu.AspNetCore.DataAccess.Dto;
+using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
@@ -44,6 +45,18 @@ public class GainfoPermissionsController : ControllerBase
return await _gainfoPermissions.GetAssignDeviceCodesAsync(request);
}
+ ///
+ /// 获取用户所有设备权限(all)
+ ///
+ ///
+ ///
+ [HttpGet("assignDeviceCodes-all")]
+ [IgnoreTenant]
+ public async Task> GetAssignDeviceCodesAllAsync([FromQuery] DeviceAssUserCodeRequest request)
+ {
+ return await _gainfoPermissions.GetAssignDeviceCodesAsync(request);
+ }
+
///
/// 权限重置
///
diff --git a/Src/Dlhis.Basic/Organization/Request/DeviceAssRequest.cs b/Src/Dlhis.Basic/Organization/Request/DeviceAssRequest.cs
index d537e60f..32bb9480 100644
--- a/Src/Dlhis.Basic/Organization/Request/DeviceAssRequest.cs
+++ b/Src/Dlhis.Basic/Organization/Request/DeviceAssRequest.cs
@@ -15,3 +15,15 @@ public class DeviceAssRequest : PageDto
[EnumDataType(typeof(DeviceTypeEnumType))]
public DeviceTypeEnumType? DeviceType { get; set; }
}
+
+public class DeviceAssUserCodeRequest : PageDto
+{
+ [Required(ErrorMessage = "工号不能为空")]
+ public string UserCode { get; set; }
+
+ ///
+ /// 设备类型
+ ///
+ [EnumDataType(typeof(DeviceTypeEnumType))]
+ public DeviceTypeEnumType? DeviceType { get; set; }
+}
\ No newline at end of file
diff --git a/Src/Dlhis.Basic/Organization/Services/IGainfoPermissionService.cs b/Src/Dlhis.Basic/Organization/Services/IGainfoPermissionService.cs
index b3729bf3..706d6710 100644
--- a/Src/Dlhis.Basic/Organization/Services/IGainfoPermissionService.cs
+++ b/Src/Dlhis.Basic/Organization/Services/IGainfoPermissionService.cs
@@ -12,6 +12,9 @@ public interface IGainfoPermissionService : IScopeDependency
Task> GetDevicesUnderGroupByUserNoAsync(string userNo, Guid deviceGroupCode);
Task> GetAssignDeviceCodesAsync(DeviceAssRequest request);
+
+ Task> GetAssignDeviceCodesAsync(DeviceAssUserCodeRequest request);
+
Task ResetPermissionsAsync(string userNo, DeviceTaskEnumType type, List deviceCodes, string source);
}
\ No newline at end of file
diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs
index a5e9dad1..66fb4f79 100644
--- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs
+++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs
@@ -77,6 +77,22 @@ public class GainfoPermissionService : IGainfoPermissionService
}).ToList();
}
+ ///
+ public async Task> GetAssignDeviceCodesAsync(DeviceAssUserCodeRequest request)
+ {
+ var gainfo = await _dbContext.Queryable().Where(x => x.Code == request.UserCode).SingleAsync();
+ gainfo.ThrowIfNull($"{request.UserCode}人员不存在");
+ return await GetAssignDeviceCodesAsync(new DeviceAssRequest
+ {
+ PageIndex = request.PageSize,
+ PageSize = request.PageSize,
+ Search = request.Search,
+ UserNo = gainfo.No,
+ DeviceType = request.DeviceType
+ });
+ }
+
+
public async Task> GetAssignDeviceCodesAsync(DeviceAssRequest request)
{
var result = await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(new List { request.UserNo });
@@ -147,6 +163,8 @@ public class GainfoPermissionService : IGainfoPermissionService
return page;
}
+
+
//
// public async Task> GetAllUserAssignDeviceCodesAsync()
// {