diff --git a/Nop.Plugin.Misc.AIPlugin/Areas/Admin/Controllers/CustomOrderController.cs b/Nop.Plugin.Misc.AIPlugin/Areas/Admin/Controllers/CustomOrderController.cs index 8a44025..c5b8a4a 100644 --- a/Nop.Plugin.Misc.AIPlugin/Areas/Admin/Controllers/CustomOrderController.cs +++ b/Nop.Plugin.Misc.AIPlugin/Areas/Admin/Controllers/CustomOrderController.cs @@ -1,4 +1,6 @@ -using AyCode.Core.Loggers; +using AyCode.Core.Extensions; +using AyCode.Core.Loggers; +using AyCode.Services.Server.SignalRs; using AyCode.Services.SignalRs; using FruitBank.Common.Dtos; using FruitBank.Common.Entities; @@ -8,6 +10,7 @@ using FruitBank.Common.Server.Services.SignalRs; using FruitBank.Common.SignalRs; using Mango.Nop.Core.Extensions; using Mango.Nop.Core.Loggers; +using MessagePack.Resolvers; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SignalR; @@ -23,6 +26,7 @@ using Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Models.Order; using Nop.Plugin.Misc.FruitBankPlugin.Domains.DataLayer; using Nop.Plugin.Misc.FruitBankPlugin.Factories; using Nop.Plugin.Misc.FruitBankPlugin.Models.Orders; +using Nop.Plugin.Misc.FruitBankPlugin.Services; using Nop.Services.Catalog; using Nop.Services.Common; using Nop.Services.Customers; @@ -35,6 +39,7 @@ using Nop.Services.Orders; using Nop.Services.Payments; using Nop.Services.Plugins; using Nop.Services.Security; +using Nop.Services.Tax; using Nop.Web.Areas.Admin.Controllers; using Nop.Web.Areas.Admin.Factories; using Nop.Web.Areas.Admin.Models.Orders; @@ -45,10 +50,6 @@ using System.Text; using System.Text.Json.Serialization; using System.Xml; using System.Xml.Serialization; -using AyCode.Services.Server.SignalRs; -using AyCode.Core.Extensions; -using MessagePack.Resolvers; -using Nop.Services.Tax; namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers { @@ -78,6 +79,7 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers protected readonly IImportManager _importManager; protected readonly IDateTimeHelper _dateTimeHelper; protected readonly ITaxService _taxService; + protected readonly MeasurementService _measurementService; private static readonly char[] _separator = [',']; // ... other dependencies @@ -124,7 +126,8 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers IGiftCardService giftCardService, IImportManager importManager, IDateTimeHelper dateTimeHelper, - ITaxService taxService) + ITaxService taxService, + MeasurementService measurementService) { _logger = new Logger(logWriters.ToArray()); @@ -151,6 +154,7 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers _importManager = importManager; _dateTimeHelper = dateTimeHelper; _taxService = taxService; + _measurementService = measurementService; // ... initialize other deps } @@ -408,6 +412,30 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers return RedirectToAction("Edit", "Order", new { id = model.OrderId }); } + [HttpPost] + [ValidateAntiForgeryToken] + public async Task AllowRevision(OrderRevisionModel model) + { + if (!ModelState.IsValid) + { + // reload order page with errors + return RedirectToAction("Edit", "Order", new { id = model.OrderId }); + } + + var order = await _orderService.GetOrderByIdAsync(model.OrderId); + if (order == null) + return RedirectToAction("List", "Order"); + + + //MeasurementService.OrderItemMeasuringReset + //Todo: ezt orderitiemnként kéne kirakni?? - Á. + var valami = await _measurementService.OrderItemMeasuringReset(model.OrderItemId); + + return RedirectToAction("Edit", "Order", new { id = model.OrderId }); + } + + + [HttpPost] //[CheckPermission(StandardPermission.Orders.ORDERS_CREATE)] public virtual async Task Create(int customerId, string orderProductsJson) diff --git a/Nop.Plugin.Misc.AIPlugin/Components/OrderAttributesViewComponent.cs b/Nop.Plugin.Misc.AIPlugin/Components/OrderAttributesViewComponent.cs index 7133647..a832c88 100644 --- a/Nop.Plugin.Misc.AIPlugin/Components/OrderAttributesViewComponent.cs +++ b/Nop.Plugin.Misc.AIPlugin/Components/OrderAttributesViewComponent.cs @@ -44,7 +44,7 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Components model.IsMeasurable = orderDto.IsMeasurable; model.DateOfReceipt = orderDto.DateOfReceipt; - + model.OrderDto = orderDto; //var orderPickupAttributeValue = await _fruitBankAttributeService.GetGenericAttributeValueAsync(model.OrderId, nameof(IOrderDto.DateOfReceipt)); //if (orderPickupAttributeValue.HasValue && orderPickupAttributeValue.Value != DateTime.MinValue) diff --git a/Nop.Plugin.Misc.AIPlugin/Infrastructure/RouteProvider.cs b/Nop.Plugin.Misc.AIPlugin/Infrastructure/RouteProvider.cs index 5c0f27b..4b35c8a 100644 --- a/Nop.Plugin.Misc.AIPlugin/Infrastructure/RouteProvider.cs +++ b/Nop.Plugin.Misc.AIPlugin/Infrastructure/RouteProvider.cs @@ -132,6 +132,11 @@ public class RouteProvider : IRouteProvider pattern: "Admin/CustomOrder/SaveOrderAttributes", defaults: new { controller = "CustomOrder", action = "SaveOrderAttributes", area = AreaNames.ADMIN }); + endpointRouteBuilder.MapControllerRoute( + name: "Plugin.FruitBank.Admin.Orders.AllowRevision", + pattern: "Admin/CustomOrder/AllowRevision", + defaults: new { controller = "CustomOrder", action = "AllowRevision", area = AreaNames.ADMIN }); + endpointRouteBuilder.MapControllerRoute( name: "Plugin.FruitBank.Admin.Orders.CustomerSearchAutoComplete", pattern: "Admin/CustomOrder/CustomerSearchAutoComplete", diff --git a/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderAttributesModel.cs b/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderAttributesModel.cs index 0fec549..49cf5cc 100644 --- a/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderAttributesModel.cs +++ b/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderAttributesModel.cs @@ -1,4 +1,5 @@ -using FruitBank.Common.Interfaces; +using FruitBank.Common.Dtos; +using FruitBank.Common.Interfaces; using Nop.Web.Framework.Models; using Nop.Web.Framework.Mvc.ModelBinding; @@ -14,5 +15,7 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Models.Orders [NopResourceDisplayName("Plugins.YourCompany.ProductAttributes.Fields.DateOfReceipt")] public DateTime? DateOfReceipt { get; set; } + public OrderDto OrderDto { get; set; } + } } \ No newline at end of file diff --git a/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderRevisionModel.cs b/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderRevisionModel.cs new file mode 100644 index 0000000..84a5111 --- /dev/null +++ b/Nop.Plugin.Misc.AIPlugin/Models/Orders/OrderRevisionModel.cs @@ -0,0 +1,15 @@ +using FruitBank.Common.Dtos; +using FruitBank.Common.Interfaces; +using Nop.Web.Framework.Models; +using Nop.Web.Framework.Mvc.ModelBinding; + +namespace Nop.Plugin.Misc.FruitBankPlugin.Models.Orders +{ + public record OrderRevisionModel : BaseNopModel + { + public int OrderId { get; set; } + + public int OrderItemId { get; set; } + + } +} \ No newline at end of file diff --git a/Nop.Plugin.Misc.AIPlugin/Views/OrderAttributes.cshtml b/Nop.Plugin.Misc.AIPlugin/Views/OrderAttributes.cshtml index e271ef6..652506f 100644 --- a/Nop.Plugin.Misc.AIPlugin/Views/OrderAttributes.cshtml +++ b/Nop.Plugin.Misc.AIPlugin/Views/OrderAttributes.cshtml @@ -9,7 +9,7 @@
-
+
@@ -17,53 +17,34 @@
-
- Mérés információ -
-
- @(Model.IsMeasurable ? "Mérendő" : "Nem mérendő") + +
+ @(Model.IsMeasurable ? "Mérendő termék!" : "Nem mérendő termék")
+
-
+
-
-
-
-
+
+
-
-
-
-
-
-
-

Üzenet küldése

-
-
+
-
- - +
+
-
-
-
- -
-
-
-
-
@@ -71,15 +52,15 @@
-
+
- InnVoice Management + Megrendelés beküldése Innvoice-ba
-
Megrendelés beküldése Innvoice-ba
+ @@ -96,7 +77,7 @@
- - @*
-
Invoice
- - -
*@ - - @*
- - -
*@
+ + + + + \ No newline at end of file +