From 2ac842869cbb5b3f6e99802f5fd8c276d6594f17 Mon Sep 17 00:00:00 2001
From: cheche <717840555@qq.com>
Date: Tue, 19 Mar 2024 15:26:40 +0800
Subject: [PATCH] =?UTF-8?q?feat=20=20=E9=85=8D=E9=80=81=E7=82=B9=E7=AE=A1?=
=?UTF-8?q?=E7=90=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/BookingAddresController.cs | 47 +++++++++++++++++++
.../MealUser/Request/GetAddresPageRequest.cs | 8 ++++
.../MealUser/Request/SaveAddresRequest.cs | 16 +++++++
.../Response/GetAddresPageResponse.cs | 15 ++++++
.../Services/IBookingAddresService.cs | 12 +++++
.../Implements/BookingAddresService.cs | 47 +++++++++++++++++++
.../Basic/Entity/BookingAddresEntity.cs | 28 +++++++++++
Src/Dlhis.Entity/Common/ApiLogEntity.cs | 2 +-
.../CommonJobs/DelApiLogTaskJob.cs | 10 ++--
9 files changed, 179 insertions(+), 6 deletions(-)
create mode 100644 Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs
create mode 100644 Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs
create mode 100644 Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs
create mode 100644 Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs
create mode 100644 Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs
create mode 100644 Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs
create mode 100644 Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs
diff --git a/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs b/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs
new file mode 100644
index 00000000..481ea041
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs
@@ -0,0 +1,47 @@
+using Dlhis.Basic.MealUser.Request;
+using Dlhis.Basic.MealUser.Response;
+using Dlhis.Basic.MealUser.Services;
+using Kurisu.Core.DataAccess.Dto;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Dlhis.Basic.MealUser.Controllers
+{
+ ///
+ /// 订餐地址
+ ///
+ [Authorize]
+ [Route("api/[controller]")]
+ [ApiController]
+ public class BookingAddresController : ControllerBase
+ {
+ private readonly IBookingAddresService _bookingAddresService;
+
+ public BookingAddresController(IBookingAddresService bookingAddresService)
+ {
+ _bookingAddresService = bookingAddresService;
+ }
+
+ ///
+ /// 地址分页
+ ///
+ ///
+ ///
+ [HttpGet("pageAddres")]
+ public async Task> GetAddresPageAsync([FromQuery] GetAddresPageRequest request)
+ {
+ return await _bookingAddresService.GetAddresPageRequest(request);
+ }
+
+ ///
+ /// 地址保存
+ ///
+ ///
+ ///
+ [HttpPost("saveAddres")]
+ public async Task SaveAddresAsync(SaveAddresRequest request)
+ {
+ await _bookingAddresService.SaveAddresAsync(request);
+ }
+ }
+}
diff --git a/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs b/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs
new file mode 100644
index 00000000..4f290222
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs
@@ -0,0 +1,8 @@
+using Kurisu.Core.DataAccess.Dto;
+
+namespace Dlhis.Basic.MealUser.Request
+{
+ public class GetAddresPageRequest : PageDto
+ {
+ }
+}
diff --git a/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs b/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs
new file mode 100644
index 00000000..c40c413f
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs
@@ -0,0 +1,16 @@
+using SqlSugar;
+
+namespace Dlhis.Basic.MealUser.Request
+{
+ public class SaveAddresRequest
+ {
+
+ public long? Id { get; set; }
+
+ ///
+ /// 订餐地址
+ ///
+ [SugarColumn(ColumnDescription = "订餐地址")]
+ public string Addres { get; set; }
+ }
+}
diff --git a/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs b/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs
new file mode 100644
index 00000000..ff35ae8b
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs
@@ -0,0 +1,15 @@
+using SqlSugar;
+
+namespace Dlhis.Basic.MealUser.Response
+{
+ public class GetAddresPageResponse
+ {
+ public long Id { get; set; }
+
+ ///
+ /// 订餐地址
+ ///
+ public string Addres { get; set; }
+
+ }
+}
diff --git a/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs b/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs
new file mode 100644
index 00000000..a8ed76e5
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs
@@ -0,0 +1,12 @@
+using Dlhis.Basic.MealUser.Request;
+using Dlhis.Basic.MealUser.Response;
+using Kurisu.Core.DataAccess.Dto;
+
+namespace Dlhis.Basic.MealUser.Services
+{
+ public interface IBookingAddresService : IScopeDependency
+ {
+ Task> GetAddresPageRequest(GetAddresPageRequest request);
+ Task SaveAddresAsync(SaveAddresRequest request);
+ }
+}
diff --git a/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs b/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs
new file mode 100644
index 00000000..d70bee81
--- /dev/null
+++ b/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs
@@ -0,0 +1,47 @@
+using Dlhis.Basic.MealUser.Request;
+using Dlhis.Basic.MealUser.Response;
+using Dlhis.Entity.Basic.Entity;
+using Kurisu.AspNetCore.Utils.Extensions;
+using Kurisu.Core.DataAccess.Dto;
+using Kurisu.SqlSugar.Extensions;
+using Kurisu.SqlSugar.Services;
+using Mapster;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Dlhis.Basic.MealUser.Services.Implements
+{
+ public class BookingAddresService : IBookingAddresService
+ {
+ private readonly IDbContext _dbContext;
+
+ public BookingAddresService(IDbContext dbContext)
+ {
+ _dbContext = dbContext;
+ }
+
+ public async Task> GetAddresPageRequest(GetAddresPageRequest request)
+ {
+ return await _dbContext.Queryable()
+ .WhereIF(request.Search.IsPresent(),x=>x.Addres.Contains(request.Search))
+ .Select()
+ .ToPageListAsync(request);
+ }
+
+ public async Task SaveAddresAsync(SaveAddresRequest request)
+ {
+ if (!request.Id.HasValue)
+ {
+ var entity = request.Adapt();
+ await _dbContext.InsertAsync(entity);
+ }
+ else
+ {
+ var entity = await _dbContext.Queryable()
+ .Where(x => x.Id == request.Id)
+ .FirstAsync();
+ request.Adapt(entity);
+ await _dbContext.UpdateAsync(entity);
+ }
+ }
+ }
+}
diff --git a/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs b/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs
new file mode 100644
index 00000000..cb39c6a4
--- /dev/null
+++ b/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs
@@ -0,0 +1,28 @@
+using Kurisu.Core.DataAccess.Entity;
+using Kurisu.SqlSugar;
+using SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Dlhis.Entity.Basic.Entity
+{
+ ///
+ /// 就餐地址
+ ///
+ [SugarTable(TableName = "BookingAddres", TableDescription = "就餐地址")]
+ public class BookingAddresEntity : SugarBaseEntity, ITenantId
+ {
+
+
+ ///
+ /// 订餐地址
+ ///
+ [SugarColumn(ColumnDescription = "订餐地址")]
+ public string Addres { get; set; }
+
+ public string TenantId { get; set; }
+ }
+}
diff --git a/Src/Dlhis.Entity/Common/ApiLogEntity.cs b/Src/Dlhis.Entity/Common/ApiLogEntity.cs
index 2f8fd03a..e2005b72 100644
--- a/Src/Dlhis.Entity/Common/ApiLogEntity.cs
+++ b/Src/Dlhis.Entity/Common/ApiLogEntity.cs
@@ -9,7 +9,7 @@ namespace Dlhis.Entity.Common;
/// api日志表
///
[SugarTable(TableName = "Logs", TableDescription = "api日志表")]
-public class ApiLogEntity : SugarBaseEntity
+public class ApiLogEntity
{
///
/// 时间
diff --git a/Src/Dlhis.ScheduledTask/CommonJobs/DelApiLogTaskJob.cs b/Src/Dlhis.ScheduledTask/CommonJobs/DelApiLogTaskJob.cs
index 4fcde1c1..bcb6720d 100644
--- a/Src/Dlhis.ScheduledTask/CommonJobs/DelApiLogTaskJob.cs
+++ b/Src/Dlhis.ScheduledTask/CommonJobs/DelApiLogTaskJob.cs
@@ -19,15 +19,15 @@ namespace Dlhis.ScheduledTask.CommonJobs;
{
try
{
- DateTime now = DateTime.Now;
- DateTime todayStart = now.Date;
+ DateTime now = DateTime.Now;
+ DateTime todayStart = now.Date;
DateTime threeDaysAgoStart = todayStart.AddDays(-7);
- var logs = await _dbContext.ChangeDb("log")
- .Queryable()
+ var logs = await _dbContext.ChangeDb("log")
+ .Queryable()
.Where(x => x._ts >= threeDaysAgoStart && x._ts <= now)
.Select(x => x.Id)
- .ToListAsync();
+ .ToListAsync();
var lst = new List();
foreach (var id in logs)