From 5ae0f55c67f990f2921a603fa6a9e772cc15d7b8 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Tue, 8 Apr 2025 10:01:27 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=A0=B9=E6=8D=AE=E5=8E=82=E5=8C=BA?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E4=BA=BA=E5=91=98=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OpenApi/Controllers/GainfosController.cs | 11 ++++++++++ .../OpenApi/Services/IGainfoService.cs | 4 +++- .../Services/Implements/GainfoService.cs | 21 +++++++++++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/Src/Dlhis.External/OpenApi/Controllers/GainfosController.cs b/Src/Dlhis.External/OpenApi/Controllers/GainfosController.cs index b0338270..0d4d6840 100644 --- a/Src/Dlhis.External/OpenApi/Controllers/GainfosController.cs +++ b/Src/Dlhis.External/OpenApi/Controllers/GainfosController.cs @@ -36,6 +36,17 @@ public class GainfosController : ControllerBase return await _gainfoService.GetAllGainfosAsync(); } + /// + /// 根据厂区获取人员 + /// + /// + /// + [HttpGet("list")] + public async Task> GetGainfosAsync(string factory) + { + return await _gainfoService.GetGainfosAsync(factory); + } + /// /// 获取考勤数据 /// diff --git a/Src/Dlhis.External/OpenApi/Services/IGainfoService.cs b/Src/Dlhis.External/OpenApi/Services/IGainfoService.cs index 5385b488..1da9ed40 100644 --- a/Src/Dlhis.External/OpenApi/Services/IGainfoService.cs +++ b/Src/Dlhis.External/OpenApi/Services/IGainfoService.cs @@ -8,8 +8,10 @@ public interface IGainfoService : IScopeDependency { Task> GetAllGainfosAsync(); + Task> GetGainfosAsync(string factory); + Task> GetDepartmentsAsync(); Task> GetAttendanceRecordPageAsync(DeviceUploadLogMyRecordRequest request); -} +} \ No newline at end of file diff --git a/Src/Dlhis.External/OpenApi/Services/Implements/GainfoService.cs b/Src/Dlhis.External/OpenApi/Services/Implements/GainfoService.cs index e580e4e5..b154d303 100644 --- a/Src/Dlhis.External/OpenApi/Services/Implements/GainfoService.cs +++ b/Src/Dlhis.External/OpenApi/Services/Implements/GainfoService.cs @@ -57,6 +57,27 @@ public class GainfoService : IGainfoService return gainfos.Concat(gainfoLeaves).ToList(); } + /// + public async Task> GetGainfosAsync(string factory) + { + var gainfos = await _dbContext.Queryable() + .LeftJoin((x, d) => x.DepartmentNo == d.No) + .Where(x => x.Factory == factory) + .Select((x, d) => new GainfoOpenResponse + { + Code = x.Code, + DepartmentNo = x.DepartmentNo, + DepartmentName = d.Name, + Name = x.Name, + Gender = x.Gender, + Factory = x.Factory, + Status = GainfoStatusEnumType.Working, + }) + .ToListAsync(); + + return gainfos; + } + public async Task> GetDepartmentsAsync() { return await _dbContext.Queryable()