예제 #1
0
        public async Task <IActionResult> Fail(OrderFailModel input)
        {
            await this.ordersService.SetOrderFailAsync(input);

            this.notyfService.Error(this.localizer["Order failed!"]);
            if (input.ReturnUrl is not null)
            {
                return(this.Redirect(input.ReturnUrl));
            }

            return(this.RedirectToAction(GlobalConstants.Index));
        }
예제 #2
0
        public async Task <string> SetOrderFailAsync(OrderFailModel input)
        {
            var order = this.orders.All().FirstOrDefault(o => o.Id == input.Id);

            if (order is null)
            {
                return(null);
            }

            order.FailReason = input.FailReason;
            foreach (var orderTo in order.OrderTos)
            {
                orderTo.FailReason = input.FailReason;
            }

            await this.UpdateOrderStatus(input.Id, OrderStatusNames.Fail.ToString());

            return(order.Id);
        }