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)