diff --git a/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs b/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs index 887b11ea..c040d3bf 100644 --- a/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs +++ b/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs @@ -100,4 +100,11 @@ public class DevicePermissionsController : ControllerBase { await _devicePermissionService.ResetGainfoPageByDeviceAsync(request.Code); } + + [HttpGet("userPermissionCodes")] + [IgnoreTenant] + public async Task> GetAssignDeviceCodesAsync(string userCode) + { + return await _devicePermissionService.GetUserDeviceCodesByNoAsync(userCode); + } } \ No newline at end of file diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs index dc79662d..6c574e78 100644 --- a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs +++ b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs @@ -441,7 +441,8 @@ public class DevicePermissionService : IDevicePermissionService /// public async Task> GetUserDeviceCodesByNoAsync(string userNo) { - var result = await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(new List { userNo }); + var no = await _dbContext.Queryable().Where(x => x.No == userNo || x.Code == userNo).Select(x => x.No).SingleAsync(); + var result = await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(new List { no }); return result.First().Value.SelectMany(x => x.AssignTypes.SelectMany(p => p.Codes)).Distinct().ToList(); } } \ No newline at end of file