diff --git a/OpenAuth.App/ServiceApp/FireManagement/FireGridApp.cs b/OpenAuth.App/ServiceApp/FireManagement/FireGridApp.cs index 8537671..023d0ce 100644 --- a/OpenAuth.App/ServiceApp/FireManagement/FireGridApp.cs +++ b/OpenAuth.App/ServiceApp/FireManagement/FireGridApp.cs @@ -409,6 +409,51 @@ namespace OpenAuth.App.ServiceApp.FireManagement } } + + //app根据登录用户获取打卡点 + public async Task>>> GetCheckPointByUserId(string userid) + { + using (SugarDbContext db = base.UnitWork.CreateContext()) + { + var list = await db.FmCheckPointUser.AsQueryable() + .LeftJoin((a, b) => a.PointId == b.Id) + .Where((a, b) => b.IsDelete == false || b.IsDelete == null) + .Select((a, b) => new + { + id = b.Id, + pointname = b.PointName, + lat = b.Lat, + lng = b.Lng, + ischecked = false + }).ToListAsync(); + var clockon = await db.FmCheckClockOn.AsQueryable() + .Where(r => r.UserId.ToString() == userid) + .GroupBy(r => r.PointId) + .Select(r => new + { + pointid = r.PointId, + time = SqlFunc.AggregateMax(r.ClockonTime) + }).ToListAsync(); + if (clockon.Count > 0) + { + foreach (var item in list) + { + var data = clockon.Where(r => r.pointid == item.id).ToList(); + if (data.Count > 0 && (DateTime.Now - data[0].time).Days < 1) + { + item.ischecked = true; + } + } + } + return new Response>> + { + Result = new PageInfo> { Items = list, Total = list.Count } + }; + } + + + } + //导出统计 //public async MemoryStream ExportStatistics(long areaid, DateTime begintime, DateTime endtime) //{ diff --git a/OpenAuth.WebApi/Controllers/ServiceControllers/FireManagement/FireGridController.cs b/OpenAuth.WebApi/Controllers/ServiceControllers/FireManagement/FireGridController.cs index 44b4523..62932ce 100644 --- a/OpenAuth.WebApi/Controllers/ServiceControllers/FireManagement/FireGridController.cs +++ b/OpenAuth.WebApi/Controllers/ServiceControllers/FireManagement/FireGridController.cs @@ -2,6 +2,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json.Linq; +using OpenAuth.App.Response; using OpenAuth.App.ServiceApp.FireManagement; using OpenAuth.App.ServiceApp.FireManagement.Request; using OpenAuth.App.ServiceApp.FireManagement.Response; @@ -50,12 +51,12 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement /// /// [HttpGet] - public async Task>>> GetCheckPointList(long areaid,string pointName, int page, int limit) + public async Task>>> GetCheckPointList(long areaid, string pointName, int page, int limit) { Response>> response = new Response>>(); try { - return await _app.GetCheckPointList(areaid,pointName, page, limit); + return await _app.GetCheckPointList(areaid, pointName, page, limit); } catch (Exception ex) { @@ -213,6 +214,17 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement return response; } /// + /// app根据登录用户获取打卡点 + /// + /// 用户id + /// + [HttpGet] + [AllowAnonymous] + public async Task>>> GetCheckPointByUserId(string userid) + { + return await _app.GetCheckPointByUserId(userid); + } + /// /// 数据总览 /// /// diff --git a/OpenAuth.WebApi/temp-keys/key-f7f79039-af47-471a-998d-a8819b680267.xml b/OpenAuth.WebApi/temp-keys/key-f7f79039-af47-471a-998d-a8819b680267.xml new file mode 100644 index 0000000..2ee6b5f --- /dev/null +++ b/OpenAuth.WebApi/temp-keys/key-f7f79039-af47-471a-998d-a8819b680267.xml @@ -0,0 +1,16 @@ + + + 2025-11-03T01:16:49.1065756Z + 2025-11-03T01:16:49.075783Z + 2026-02-01T01:16:49.075783Z + + + + + + + J9+AC6LMlIPct5snU2v9+p0ZACCG7YKEHc9CwlDurPcMVNT76hangAJp1c7a8QPO2tu6MntfZbVpdYgLiH/ATA== + + + + \ No newline at end of file