From d09e62b3c1eb140367bd6715685ebce186ff2de7 Mon Sep 17 00:00:00 2001 From: gdlcf88 Date: Tue, 22 Mar 2022 19:32:08 +0800 Subject: [PATCH] New method: IOrderAppService.UpdateStaffRemarkAsync --- .../Orders/Orders/Dtos/UpdateStaffRemarkInput.cs | 10 ++++++++++ .../EShop/Orders/Orders/IOrderAppService.cs | 2 ++ .../EasyAbp/EShop/Orders/Orders/OrderAppService.cs | 14 +++++++++++++- .../EasyAbp/EShop/Orders/Orders/Order.cs | 5 +++++ .../EasyAbp/EShop/Orders/Orders/OrderController.cs | 7 +++++++ 5 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/UpdateStaffRemarkInput.cs diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/UpdateStaffRemarkInput.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/UpdateStaffRemarkInput.cs new file mode 100644 index 00000000..53c5a346 --- /dev/null +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/UpdateStaffRemarkInput.cs @@ -0,0 +1,10 @@ +using System; + +namespace EasyAbp.EShop.Orders.Orders.Dtos +{ + [Serializable] + public class UpdateStaffRemarkInput + { + public string StaffRemark { get; set; } + } +} \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/IOrderAppService.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/IOrderAppService.cs index 3ea9ba11..5c6ae2cc 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/IOrderAppService.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/IOrderAppService.cs @@ -17,5 +17,7 @@ namespace EasyAbp.EShop.Orders.Orders Task CompleteAsync(Guid id); Task CancelAsync(Guid id, CancelOrderInput input); + + Task UpdateStaffRemarkAsync(Guid id, UpdateStaffRemarkInput input); } } \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs index c63969f8..90f9c5c8 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs @@ -8,7 +8,6 @@ using EasyAbp.EShop.Products.Products; using EasyAbp.EShop.Products.Products.Dtos; using EasyAbp.EShop.Stores.Stores; using Microsoft.AspNetCore.Authorization; -using Microsoft.Extensions.DependencyInjection; using Volo.Abp; using Volo.Abp.Application.Dtos; using Volo.Abp.Users; @@ -179,5 +178,18 @@ namespace EasyAbp.EShop.Orders.Orders return await MapToGetOutputDtoAsync(order); } + + public virtual async Task UpdateStaffRemarkAsync(Guid id, UpdateStaffRemarkInput input) + { + var order = await GetEntityByIdAsync(id); + + await CheckMultiStorePolicyAsync(order.StoreId, OrdersPermissions.Orders.Manage); + + order.SetStaffRemark(input.StaffRemark); + + await Repository.UpdateAsync(order, true); + + return await MapToGetOutputDtoAsync(order); + } } } \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs index 317a16dc..edd69f01 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs @@ -214,5 +214,10 @@ namespace EasyAbp.EShop.Orders.Orders TotalPrice += extraFee; ActualTotalPrice += extraFee; } + + public void SetStaffRemark(string staffRemark) + { + StaffRemark = staffRemark; + } } } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.HttpApi/EasyAbp/EShop/Orders/Orders/OrderController.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.HttpApi/EasyAbp/EShop/Orders/Orders/OrderController.cs index 7e38bc60..b109f3af 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.HttpApi/EasyAbp/EShop/Orders/Orders/OrderController.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.HttpApi/EasyAbp/EShop/Orders/Orders/OrderController.cs @@ -74,5 +74,12 @@ namespace EasyAbp.EShop.Orders.Orders return _service.CancelAsync(id, input); } + + [HttpPut] + [Route("{id}/staff-remark")] + public virtual Task UpdateStaffRemarkAsync(Guid id, UpdateStaffRemarkInput input) + { + return _service.UpdateStaffRemarkAsync(id, input); + } } }