diff --git a/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs b/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs
index dba09fd2..7b1ab8ce 100644
--- a/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs
+++ b/Src/Dlhis.Basic/Device/Controllers/DevicePermissionsController.cs
@@ -69,6 +69,10 @@ public class DevicePermissionsController : ControllerBase
return await _devicePermissionService.GetCanteenDeviceUniqueNosByUserNoAsync(userNo);
}
+ ///
+ /// 获取当前所有人的权限code
+ ///
+ ///
[AllowAnonymous]
[HttpGet("all-permission")]
[IgnoreTenant]
@@ -77,6 +81,11 @@ public class DevicePermissionsController : ControllerBase
return await _devicePermissionService.GetPermissionUsersInfoAsync();
}
+ ///
+ /// 根据权限code生成下发任务
+ ///
+ ///
+ ///
[AllowAnonymous]
[IgnoreTenant]
[HttpPost("re-permission")]
diff --git a/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs b/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
index 7725e521..58045b3e 100644
--- a/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
+++ b/Src/Dlhis.Basic/Organization/Controllers/GainfoPermissionsController.cs
@@ -1,34 +1,31 @@
-using Dlhis.Basic.Organization.Request;
-using Dlhis.Basic.Organization.Response;
+using Dlhis.Basic.Organization.Response;
using Dlhis.Basic.Organization.Services;
using Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
-namespace Dlhis.Basic.Organization.Controllers
+namespace Dlhis.Basic.Organization.Controllers;
+
+[Authorize]
+[Route("api/[controller]")]
+[ApiController]
+public class GainfoPermissionsController : ControllerBase
{
- [Authorize]
- [Route("api/[controller]")]
- [ApiController]
- public class GainfoPermissionsController : ControllerBase
+ private readonly IGainfoPermissions _gainfoPermissions;
+
+
+ public GainfoPermissionsController(IGainfoPermissions gainfoPermissions)
{
- private readonly IGainfoPermissions _gainfoPermissions;
+ _gainfoPermissions = gainfoPermissions;
+ }
-
- public GainfoPermissionsController(IGainfoPermissions gainfoPermissions)
- {
- _gainfoPermissions = gainfoPermissions;
- }
-
- ///
- /// 根据用户查看餐饮点
- ///
- ///
- ///
- [HttpGet("placesByGainfo")]
- public async Task> GetPlaceByGainfoAsync([FromQuery]GetPlaceByGainfoRequest request)
- {
- return await _gainfoPermissions.GetPlaceByGainfoAsync(request);
- }
+ ///
+ /// 根据用户查看餐饮点
+ ///
+ ///
+ ///
+ [HttpGet("placesByGainfo")]
+ public async Task> GetPlaceByGainfoAsync(string userNo)
+ {
+ return await _gainfoPermissions.GetPlaceByGainfoAsync(userNo);
}
}
diff --git a/Src/Dlhis.Basic/Organization/Request/GetPlaceByGainfoRequest.cs b/Src/Dlhis.Basic/Organization/Request/GetPlaceByGainfoRequest.cs
deleted file mode 100644
index 234deffe..00000000
--- a/Src/Dlhis.Basic/Organization/Request/GetPlaceByGainfoRequest.cs
+++ /dev/null
@@ -1,8 +0,0 @@
-using Kurisu.Core.DataAccess.Dto;
-
-namespace Dlhis.Basic.Organization.Request
-{
- public class GetPlaceByGainfoRequest : PageDto
- {
- }
-}
diff --git a/Src/Dlhis.Basic/Organization/Services/IGainfoPermissions.cs b/Src/Dlhis.Basic/Organization/Services/IGainfoPermissions.cs
index a98b07c1..91ab4316 100644
--- a/Src/Dlhis.Basic/Organization/Services/IGainfoPermissions.cs
+++ b/Src/Dlhis.Basic/Organization/Services/IGainfoPermissions.cs
@@ -1,10 +1,10 @@
-using Dlhis.Basic.Organization.Request;
-using Dlhis.Basic.Organization.Response;
+using Dlhis.Basic.Organization.Response;
-namespace Dlhis.Basic.Organization.Services
+namespace Dlhis.Basic.Organization.Services;
+
+public interface IGainfoPermissions : IScopeDependency
{
- public interface IGainfoPermissions : IScopeDependency
- {
- Task> GetPlaceByGainfoAsync(GetPlaceByGainfoRequest request);
- }
+ Task> GetPlaceByGainfoAsync(string userNo);
+
+ //Task GetDevicesUnderGroupByUserNoAsync(string userNo, string deviceGroupCode);
}
diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissions.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissions.cs
index cef76f14..e8c8589e 100644
--- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissions.cs
+++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissions.cs
@@ -1,78 +1,52 @@
-using Dlhis.Basic.Device.Request;
-using Dlhis.Basic.Device.Services;
-using Dlhis.Basic.Organization.Request;
+using Dlhis.Basic.Device.Services;
using Dlhis.Basic.Organization.Response;
using Dlhis.Entity.Basic.Entity;
-using Dlhis.Entity.Basic.Enums;
using Dlhis.Entity.Device.Entities;
using Dlhis.Entity.Device.Enums;
-using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.SqlSugar.Services;
-namespace Dlhis.Basic.Organization.Services.Implements
+namespace Dlhis.Basic.Organization.Services.Implements;
+
+public class GainfoPermissions : IGainfoPermissions
{
- public class GainfoPermissions : IGainfoPermissions
+ private readonly IGainfoStore _gainfoStore;
+ private readonly IDevicePermissionService _devicePermissionService;
+ private readonly IDbContext _dbContext;
+
+ public GainfoPermissions(IGainfoStore gainfoStore, IDevicePermissionService devicePermissionService, IDbContext dbContext)
{
- private readonly IGainfoStore _gainfoStore;
- private readonly IDevicePermissionService _devicePermissionService;
- private readonly IDbContext _dbContext;
+ _gainfoStore = gainfoStore;
+ _devicePermissionService = devicePermissionService;
+ _dbContext = dbContext;
+ }
- public GainfoPermissions(IGainfoStore gainfoStore, IDevicePermissionService devicePermissionService, IDbContext dbContext)
+ public async Task> GetPlaceByGainfoAsync(string userNo)
+ {
+ var gainfo = await _gainfoStore.Queryable()
+ .Where(x => x.No == userNo)
+ .FirstAsync();
+
+ if (gainfo == null)
{
- _gainfoStore = gainfoStore;
- _devicePermissionService = devicePermissionService;
- _dbContext = dbContext;
+ return new List();
}
- public async Task> GetPlaceByGainfoAsync(GetPlaceByGainfoRequest request)
- {
- var lst = new List();
- var gainfo = await _gainfoStore.Queryable(GainfoStatusEnumType.Working)
- .Where(x => x.No == request.Search || x.Code == request.Search)
- .FirstAsync();
- gainfo.ThrowIfNull($"用户不存在!");
+ //用户所有deviceCode权限
+ var deviceCodes = await _devicePermissionService.GetAssignDeviceCodesAsync(gainfo.No);
- var req = new AssigmentByCodeRequest
+ return await _dbContext.Queryable()
+ .LeftJoin((x, dr) => x.UniqueNo == dr.DeviceUniqueNo)
+ .LeftJoin((x, dr, place) => dr.BusinessPlaceCode == place.Code)
+ .Where(x => x.Type == DeviceTypeEnumType.Meal)
+ .Where(x => deviceCodes.Contains(x.Code))
+ .Where((x, dr) => !string.IsNullOrEmpty(dr.BusinessPlaceCustomCode))
+ .Select((x, dr, place) => new GetPlaceByGainfoResponse
{
- No = gainfo.No
- };
- var devices = await _devicePermissionService.GetAssigmentByCodeAsync(req);
- if (devices != null)
- {
- //用户权限设备
- var unids = new List();
- foreach (var item in devices.Data)
- {
- unids.Add(item.UniqueNo);
- }
- //餐饮设备
- var ids = await _dbContext.Queryable()
- .Where(x => unids.Contains(x.UniqueNo))
- .Where(x => x.Type == DeviceTypeEnumType.Meal)
- .Select(x => x.UniqueNo)
- .ToListAsync();
+ PlaceCode = place.Code,
+ PlaceName = place.Name
+ })
+ .Distinct()
+ .ToListAsync();
- var places = await _dbContext.Queryable()
- .Where(x => ids.Contains(x.DeviceUniqueNo))
- .Select(x => x.BusinessPlaceCode)
- .ToListAsync();
- var bplaces = await _dbContext.Queryable().ToListAsync();
- foreach (var code in places)
- {
- if(code == null)
- {
- continue;
- }
- var res = new GetPlaceByGainfoResponse();
- res.PlaceCode = (Guid)code;
- res.PlaceName = bplaces.Where(x => x.Code == code).Select(x => x.Name).FirstOrDefault();
- lst.Add(res);
- }
- }
-
- return lst;
- }
-
-
}
}
diff --git a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Response/DeviceUploadLogResponse.cs b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Response/DeviceUploadLogResponse.cs
index d3955ba0..de4a7a64 100644
--- a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Response/DeviceUploadLogResponse.cs
+++ b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Response/DeviceUploadLogResponse.cs
@@ -12,9 +12,9 @@ public class DeviceUploadLogResponse
public string DeviceUniqueNo { get; set; }
///
- /// 设备名称
+ /// 设备供应商
///
- public string DeviceName { get; set; }
+ public string Supplier { get; set; }
///
/// 用户档案号
diff --git a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Services/Implements/DeviceUploadLogService.cs b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Services/Implements/DeviceUploadLogService.cs
index 55fe6498..ce149e14 100644
--- a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Services/Implements/DeviceUploadLogService.cs
+++ b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Services/Implements/DeviceUploadLogService.cs
@@ -38,7 +38,7 @@ public class DeviceUploadLogService : IDeviceUploadLogService
.Select((deviceUp, device, ga) => new DeviceUploadLogResponse
{
OriginUserUniqueNo = deviceUp.UserUniqueNo,
- DeviceName = device.Supplier,
+ Supplier = device.Supplier,
DeviceUniqueNo = deviceUp.DeviceUniqueNo,
Id = deviceUp.Id,
RaiseDateTime = deviceUp.RaiseDateTime,