From 02acb878dced0cbb2fa71c2bee9cc591176e6f48 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Sat, 3 Aug 2024 11:11:06 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E4=BB=BB=E5=8A=A1=E6=9D=A5=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/IDevicePermissionService.cs | 3 ++- .../Implements/DevicePermissionService.cs | 9 +++++-- .../Implements/DeviceTimePeriodService.cs | 6 ++--- .../Services/Implements/GainfoFaceService.cs | 6 ++--- .../Implements/GainfoPermissionService.cs | 2 +- .../Services/Implements/GainfoService.cs | 4 ++-- Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs | 2 +- .../Device/Enums/DeviceTaskSourceEnumType.cs | 24 +++++++++++++++++++ Src/Dlhis.Message/VisitorAppointmentHub.cs | 3 ++- .../Request/DeviceUploadLogMyRecordRequest.cs | 5 +--- .../Jobs/CreateGetUploadRecordJob.cs | 1 + .../Jobs/CreateSyncServerDateTimeJob.cs | 1 + .../TaskAssignment/Dto/TaskDto.cs | 3 ++- .../Response/UserToDeviceResponse.cs | 8 ++++++- .../Services/Implements/AssignmentService.cs | 2 ++ 15 files changed, 59 insertions(+), 20 deletions(-) diff --git a/Src/Dlhis.Basic/Device/Services/IDevicePermissionService.cs b/Src/Dlhis.Basic/Device/Services/IDevicePermissionService.cs index 62ecea62..ee0d1362 100644 --- a/Src/Dlhis.Basic/Device/Services/IDevicePermissionService.cs +++ b/Src/Dlhis.Basic/Device/Services/IDevicePermissionService.cs @@ -46,8 +46,9 @@ public interface IDevicePermissionService : IScopeDependency /// /// /// + /// /// - Task GenerateDeviceTasksAsync(string userNo, DeviceTaskEnumType taskType); + Task GenerateDeviceTasksAsync(string userNo, DeviceTaskEnumType taskType, DeviceTaskSourceEnumType source); /// /// 获取用户所有设备权限 diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs index 0071d15c..27685a2b 100644 --- a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs +++ b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs @@ -164,7 +164,7 @@ public class DevicePermissionService : IDevicePermissionService public async Task GenerateDeviceTasksAsync(Func func, List userNos) { var tenantId = _currentUser.GetStringTenantId(); - + //获取所有人的权限 if (userNos.IsEmpty()) userNos = await GetPermissionUserNosAsync(); @@ -232,6 +232,7 @@ public class DevicePermissionService : IDevicePermissionService UserNo = userNo, Version = 0, TenantId = tenant, + Source = DeviceTaskSourceEnumType.Manually })); addItems.ForEach(x => waitAddTasks.Add(new DeviceTaskEntity @@ -243,6 +244,7 @@ public class DevicePermissionService : IDevicePermissionService UserNo = userNo, Version = 0, TenantId = tenant, + Source = DeviceTaskSourceEnumType.Manually })); } } @@ -327,6 +329,7 @@ public class DevicePermissionService : IDevicePermissionService UserNo = userNo, Version = 0, TenantId = tenant, + Source = DeviceTaskSourceEnumType.Schedule })); addItems.ForEach(x => waitTasks.Add(new DeviceTaskEntity @@ -338,6 +341,7 @@ public class DevicePermissionService : IDevicePermissionService UserNo = userNo, Version = 0, TenantId = tenant, + Source = DeviceTaskSourceEnumType.Schedule })); } } @@ -441,7 +445,7 @@ public class DevicePermissionService : IDevicePermissionService return page; } - public async Task GenerateDeviceTasksAsync(string userNo, DeviceTaskEnumType taskType) + public async Task GenerateDeviceTasksAsync(string userNo, DeviceTaskEnumType taskType, DeviceTaskSourceEnumType source) { var deviceCodes = await GetAssignDeviceCodesAsync(userNo); if (!deviceCodes.Any()) return; @@ -462,6 +466,7 @@ public class DevicePermissionService : IDevicePermissionService Priority = 0, Version = 0, TenantId = x.TenantId, + Source = source }).ToList(); await _dbContext.InsertAsync(tasks); diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DeviceTimePeriodService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DeviceTimePeriodService.cs index bab3c579..05b39c7c 100644 --- a/Src/Dlhis.Basic/Device/Services/Implements/DeviceTimePeriodService.cs +++ b/Src/Dlhis.Basic/Device/Services/Implements/DeviceTimePeriodService.cs @@ -159,9 +159,9 @@ public class DeviceTimePeriodService : IDeviceTimePeriodService Status = DeviceTaskStatusEnumType.Wait, Version = 0, CancellationId = 0, - Source = null, + Source = DeviceTaskSourceEnumType.Manually, Priority = 90, - TenantId = device.TenantId + TenantId = device.TenantId, }); continue; @@ -192,7 +192,7 @@ public class DeviceTimePeriodService : IDeviceTimePeriodService Status = DeviceTaskStatusEnumType.Wait, Version = 0, CancellationId = 0, - Source = null, + Source = DeviceTaskSourceEnumType.Manually, Priority = 90, TenantId = device.TenantId }); diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs index f38d79b9..9bbc8ee3 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs @@ -124,7 +124,7 @@ public class GainfoFaceService : IGainfoFaceService await _faceDbContext.UpdateAsync(face); } - await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType); + await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType, DeviceTaskSourceEnumType.Photo); } public async Task GetExternalFaceAsync(string idno) @@ -240,7 +240,7 @@ public class GainfoFaceService : IGainfoFaceService // var url = $"https://pay.aizhuhotel.com/{prefix}/api/face"; //生成任务 - await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType); + await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType, DeviceTaskSourceEnumType.Photo); } public async Task UploadFacesAsync(List requests) @@ -285,7 +285,7 @@ public class GainfoFaceService : IGainfoFaceService } //生成任务 - await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType); + await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, taskType, DeviceTaskSourceEnumType.Photo); } } diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs index 51133cf3..36c73063 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoPermissionService.cs @@ -181,7 +181,7 @@ public class GainfoPermissionService : IGainfoPermissionService DeviceType = x.Type, TenantId = gainfo.Factory, Priority = 10, - + Source = DeviceTaskSourceEnumType.Manually }).ToList(); await _dbContext.InsertAsync(tasks); diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs index e24350ad..cc31e439 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs @@ -262,7 +262,7 @@ public class GainfoService : IGainfoService Version = 0, ResultMessage = null, CancellationId = 0, - Source = null, + Source = DeviceTaskSourceEnumType.Manually, Priority = 60, TenantId = x.TenantId }).ToList()); @@ -408,7 +408,7 @@ public class GainfoService : IGainfoService //海宁触发权限下发 if (gainfo.Workplace == "5") { - await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, DeviceTaskEnumType.Add); + await _devicePermissionService.GenerateDeviceTasksAsync(gainfo.No, DeviceTaskEnumType.Add, DeviceTaskSourceEnumType.Migration); } } } diff --git a/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs b/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs index 22edbd5d..3edeb03f 100644 --- a/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs +++ b/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs @@ -28,7 +28,7 @@ public class GainfoEntity : SugarBaseEntity /// 员类型 /// [SugarColumn(ColumnDescription = "人员类型", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))] - public GainfoUserTypeEnumType? Type { get; set; } + public GainfoUserTypeEnumType Type { get; set; } /// /// 姓名 diff --git a/Src/Dlhis.Entity/Device/Enums/DeviceTaskSourceEnumType.cs b/Src/Dlhis.Entity/Device/Enums/DeviceTaskSourceEnumType.cs index 58cab179..af61b9da 100644 --- a/Src/Dlhis.Entity/Device/Enums/DeviceTaskSourceEnumType.cs +++ b/Src/Dlhis.Entity/Device/Enums/DeviceTaskSourceEnumType.cs @@ -8,6 +8,30 @@ namespace Dlhis.Entity.Device.Enums; [Description("设备任务来源")] public enum DeviceTaskSourceEnumType { + /// + /// 手动分配 + /// + [Description("手动分配")] + Manually = 1, + + /// + /// 上传照片 + /// + [Description("上传照片")] + Photo = 2, + + /// + /// 数据迁移 + /// + [Description("数据迁移")] + Migration = 3, + + /// + /// 任务调度 + /// + [Description("任务调度")] + Schedule = 4, + /// /// 预约 /// diff --git a/Src/Dlhis.Message/VisitorAppointmentHub.cs b/Src/Dlhis.Message/VisitorAppointmentHub.cs index 2b1405c5..c7de7b1e 100644 --- a/Src/Dlhis.Message/VisitorAppointmentHub.cs +++ b/Src/Dlhis.Message/VisitorAppointmentHub.cs @@ -15,5 +15,6 @@ public class VisitorAppointmentHub : Hub public override async Task OnConnectedAsync() { _logger.LogInformation("链接"); + await Task.CompletedTask; } -} +} \ No newline at end of file diff --git a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Request/DeviceUploadLogMyRecordRequest.cs b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Request/DeviceUploadLogMyRecordRequest.cs index 3f863015..1193aee0 100644 --- a/Src/Dlhis.ScheduledTask/DeviceUploadLog/Request/DeviceUploadLogMyRecordRequest.cs +++ b/Src/Dlhis.ScheduledTask/DeviceUploadLog/Request/DeviceUploadLogMyRecordRequest.cs @@ -10,10 +10,7 @@ public class DeviceUploadLogMyRecordRequest : IValidatableObject /// public IEnumerable Validate(ValidationContext validationContext) { - if (DateTimePeriod == null) - { - DateTimePeriod = new DateTimePeriod(); - } + DateTimePeriod ??= new DateTimePeriod(); if (DateTimePeriod.Start != null) { diff --git a/Src/Dlhis.ScheduledTask/Jobs/CreateGetUploadRecordJob.cs b/Src/Dlhis.ScheduledTask/Jobs/CreateGetUploadRecordJob.cs index de0f6ee4..b62379be 100644 --- a/Src/Dlhis.ScheduledTask/Jobs/CreateGetUploadRecordJob.cs +++ b/Src/Dlhis.ScheduledTask/Jobs/CreateGetUploadRecordJob.cs @@ -39,6 +39,7 @@ public class CreateGetUploadRecordJob : BaseJob Type = DeviceTaskEnumType.UploadRecord, CancellationId = 0, Priority = 50, + Source = DeviceTaskSourceEnumType.Schedule }).ToList(); await DbContext.InsertAsync(tasks); diff --git a/Src/Dlhis.ScheduledTask/Jobs/CreateSyncServerDateTimeJob.cs b/Src/Dlhis.ScheduledTask/Jobs/CreateSyncServerDateTimeJob.cs index d73ddd51..d6b85b72 100644 --- a/Src/Dlhis.ScheduledTask/Jobs/CreateSyncServerDateTimeJob.cs +++ b/Src/Dlhis.ScheduledTask/Jobs/CreateSyncServerDateTimeJob.cs @@ -40,6 +40,7 @@ public class CreateSyncServerDateTimeJob : BaseJob Type = DeviceTaskEnumType.SyncDateTime, DeviceType = x.Type, Priority = 49, + Source = DeviceTaskSourceEnumType.Schedule }).ToList(); await DbContext.InsertAsync(tasks); diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Dto/TaskDto.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Dto/TaskDto.cs index 71044069..821c198d 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Dto/TaskDto.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Dto/TaskDto.cs @@ -1,4 +1,4 @@ -using Dlhis.Entity.Device.Entities; +using Dlhis.Entity.Basic.Enums; using Dlhis.Entity.Device.Enums; namespace Dlhis.ScheduledTask.TaskAssignment.Dto; @@ -17,6 +17,7 @@ public class TaskDto public string OldUserNo { get; set; } public string UserCode { get; set; } + public GainfoUserTypeEnumType UserType { get; set; } public string UserName { get; set; } public string DepartmentNo { get; set; } public string DepartmentName { get; set; } diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Response/UserToDeviceResponse.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Response/UserToDeviceResponse.cs index ee84c43e..ac5d5957 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Response/UserToDeviceResponse.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Response/UserToDeviceResponse.cs @@ -1,4 +1,5 @@ -using Kurisu.AspNetCore.CustomClass; +using Dlhis.Entity.Basic.Enums; +using Kurisu.AspNetCore.CustomClass; namespace Dlhis.ScheduledTask.TaskAssignment.Response; @@ -24,6 +25,11 @@ public class UserToDeviceResponse /// public string UserCode { get; set; } + /// + /// 人员类型 + /// + public GainfoUserTypeEnumType UserType { get; set; } + /// /// 人员名称 /// diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs index 21d638a7..e31f258f 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs @@ -89,6 +89,7 @@ public class AssignmentService : IAssignmentService UserNo = item.UserNo, OldUserNo = item.OldUserNo, UserCode = item.UserCode, + UserType = item.UserType, UserName = item.UserName, DepartmentNo = item.DepartmentNo, DepartmentName = item.DepartmentName, @@ -276,6 +277,7 @@ public class AssignmentService : IAssignmentService : deviceTask.UserId, TaskId = deviceTask.Id, Type = deviceTask.Type, + UserType = ga.Type, DeviceUniqueNo = deviceTask.DeviceUniqueNo, DeviceConnectionInfo = device.ConnectionInfo, Brand = deviceTemplate.Brand,