From 6997d7169605f5041aef04628c339a070045b55d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=86=9B?= <2357729423@qq.com> Date: Tue, 2 Apr 2024 19:02:15 +0800 Subject: [PATCH] =?UTF-8?q?com=EF=BC=9A=E6=8F=90=E4=BE=9B=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=AE=8C=E6=88=90=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Dtos/ProvideServices/UpdateOrderStatusInput.cs | 11 +++++++++++ .../Services/TrackOrders/TrackOrderService.cs | 14 ++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpdateOrderStatusInput.cs diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpdateOrderStatusInput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpdateOrderStatusInput.cs new file mode 100644 index 00000000..c05d79ee --- /dev/null +++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpdateOrderStatusInput.cs @@ -0,0 +1,11 @@ +namespace SJZY.Track.Application.Contract.Dtos.ProvideServices; + +public class UpdateOrderStatusInput +{ + public int OrderId { get; set; } + + /// + /// 订单是否完成 + /// + public bool IsCompleted { get; set; } +} \ No newline at end of file diff --git a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs index 335adde3..54cc534d 100644 --- a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs +++ b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs @@ -1,6 +1,7 @@ using System.Diagnostics; using SJZY.Track.Application.Contract.Dtos.ProvideServices; using SJZY.Track.Application.Contract.Dtos.TrackOrder; +using SJZY.Track.Domain.Aggregates.OrderAggregate; using SJZY.Track.Domain.Aggregates.TrackContentAggregate; using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate; using SJZY.Track.Domain.Aggregates.TrackPushAggregate; @@ -15,18 +16,21 @@ namespace SJZY.Track.Application.Services.TrackOrders; [Route("/Track/Order")] public class TrackOrderService : ApplicationService { + private readonly IOrderRepository _orderRepository; private readonly ITrackOrderQueries _trackOrderQueries; private readonly ITrackDetailsRepository _trackDetailsRepository; private readonly ITrackContentRepository _trackContentRepository; private readonly ITrackPushRecordsRepository _trackPushRecordsRepository; public TrackOrderService( + IOrderRepository orderRepository, ITrackOrderQueries trackOrderQueries, ITrackDetailsRepository trackDetailsRepository, ITrackContentRepository trackContentRepository, ITrackPushRecordsRepository trackPushRecordsRepository ) { + _orderRepository = orderRepository; _trackOrderQueries = trackOrderQueries; _trackDetailsRepository = trackDetailsRepository; _trackContentRepository = trackContentRepository; @@ -121,6 +125,16 @@ public class TrackOrderService : ApplicationService #endregion + [HttpPost("UpdateOrderStatus")] + public async Task UpdateOrderStatus(UpdateOrderStatusInput input) + { + var order = await _orderRepository.GetFirstAsync(x => x.Id == input.OrderId); + + if (order == default) throw new BusinessException(message: "订单不存在"); + + return await _orderRepository.UpdateColumnAsync(order, x => x.IsCompleted == input.IsCompleted); + } + /// /// 获取轨迹计数器 ///