public async Task <BaseApiResponse> ApplyReturnAndRefund(ApplyRefundRequest request) { request.CheckNotNull(nameof(request)); var command = new ApplyReturnAndRefundCommand(request.Reason, request.RefundAmount) { AggregateRootId = request.Id }; var result = await ExecuteCommandAsync(command); if (!result.IsSuccess()) { return(new BaseApiResponse { Code = 400, Message = "命令没有执行成功:{0}".FormatWith(result.GetErrorMessage()) }); } return(new BaseApiResponse()); }
public void Handle(ICommandContext context, ApplyReturnAndRefundCommand command) { context.Get <StoreOrder>(command.AggregateRootId).ApplyReturnAndRefund(new Domain.Models.Stores.StoreOrders.RefundApplyInfo(command.Reason, command.RefundAmount)); }