Implement CheckAndUpdateProductManageInventoryMethodToManageStock to MgEventConsumer; improvements;
This commit is contained in:
parent
9601707396
commit
1e841467ec
|
|
@ -78,6 +78,7 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Areas.Admin.Controllers
|
||||||
[NonAction] public Task<List<OrderDto>> GetAllOrderDtos() => _customOrderSignalREndpoint.GetAllOrderDtos();
|
[NonAction] public Task<List<OrderDto>> GetAllOrderDtos() => _customOrderSignalREndpoint.GetAllOrderDtos();
|
||||||
[NonAction]public Task<OrderDto> GetOrderDtoById(int orderId) => _customOrderSignalREndpoint.GetOrderDtoById(orderId);
|
[NonAction]public Task<OrderDto> GetOrderDtoById(int orderId) => _customOrderSignalREndpoint.GetOrderDtoById(orderId);
|
||||||
[NonAction]public Task<List<OrderDto>> GetPendingOrderDtos() => _customOrderSignalREndpoint.GetPendingOrderDtos();
|
[NonAction]public Task<List<OrderDto>> GetPendingOrderDtos() => _customOrderSignalREndpoint.GetPendingOrderDtos();
|
||||||
|
[NonAction]public Task<List<OrderDto>> GetPendingOrderDtosForMeasuring() => _customOrderSignalREndpoint.GetPendingOrderDtosForMeasuring();
|
||||||
[NonAction] public Task<OrderDto> StartMeasuring(int orderId, int userId) => _customOrderSignalREndpoint.StartMeasuring(orderId, userId);
|
[NonAction] public Task<OrderDto> StartMeasuring(int orderId, int userId) => _customOrderSignalREndpoint.StartMeasuring(orderId, userId);
|
||||||
[NonAction]public Task<OrderDto> SetOrderStatusToComplete(int orderId, int revisorId) => _customOrderSignalREndpoint.SetOrderStatusToComplete(orderId, revisorId);
|
[NonAction]public Task<OrderDto> SetOrderStatusToComplete(int orderId, int revisorId) => _customOrderSignalREndpoint.SetOrderStatusToComplete(orderId, revisorId);
|
||||||
[NonAction] public Task<List<OrderDto>> GetAllOrderDtoByIds(int[] orderIds) => _customOrderSignalREndpoint.GetAllOrderDtoByIds(orderIds);
|
[NonAction] public Task<List<OrderDto>> GetAllOrderDtoByIds(int[] orderIds) => _customOrderSignalREndpoint.GetAllOrderDtoByIds(orderIds);
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,12 @@ public class CustomOrderSignalREndpoint(FruitBankDbContext ctx, IWorkContext wor
|
||||||
return await ctx.OrderDtos.GetAllByOrderStatus(OrderStatus.Pending).ToListAsync();
|
return await ctx.OrderDtos.GetAllByOrderStatus(OrderStatus.Pending).ToListAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[SignalR(SignalRTags.GetPendingOrderDtosForMeasuring)]
|
||||||
|
public async Task<List<OrderDto>> GetPendingOrderDtosForMeasuring()
|
||||||
|
{
|
||||||
|
return await ctx.OrderDtos.GetAllForMeasuring().ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
[SignalR(SignalRTags.GetAllOrderDtoByIds)]
|
[SignalR(SignalRTags.GetAllOrderDtoByIds)]
|
||||||
public async Task<List<OrderDto>> GetAllOrderDtoByIds(int[] orderIds)
|
public async Task<List<OrderDto>> GetAllOrderDtoByIds(int[] orderIds)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,6 @@ public class FruitBankDbContext : MgDbContextBase,
|
||||||
public FilesDbTable Files { get; set; }
|
public FilesDbTable Files { get; set; }
|
||||||
public ShippingDocumentToFilesDbTable ShippingDocumentToFiles { get; set; }
|
public ShippingDocumentToFilesDbTable ShippingDocumentToFiles { get; set; }
|
||||||
|
|
||||||
public IRepository<Product> Products { get; set; }
|
|
||||||
public IRepository<Customer> Customers { get; set; }
|
public IRepository<Customer> Customers { get; set; }
|
||||||
public IRepository<CustomerRole> CustomerRoles { get; set; }
|
public IRepository<CustomerRole> CustomerRoles { get; set; }
|
||||||
public IRepository<CustomerCustomerRoleMapping> CustomerRoleMappings { get; set; }
|
public IRepository<CustomerCustomerRoleMapping> CustomerRoleMappings { get; set; }
|
||||||
|
|
@ -69,7 +68,7 @@ public class FruitBankDbContext : MgDbContextBase,
|
||||||
IRepository<Customer> customerRepository,
|
IRepository<Customer> customerRepository,
|
||||||
IRepository<CustomerCustomerRoleMapping> customerCustomerRoleMappingRepository,
|
IRepository<CustomerCustomerRoleMapping> customerCustomerRoleMappingRepository,
|
||||||
IRepository<CustomerRole> customerRoleRepository,
|
IRepository<CustomerRole> customerRoleRepository,
|
||||||
IEnumerable<IAcLogWriterBase> logWriters) : base(dataProvider, lockService, new Logger<FruitBankDbContext>(logWriters.ToArray()))
|
IEnumerable<IAcLogWriterBase> logWriters) : base(productRepository, dataProvider, lockService, new Logger<FruitBankDbContext>(logWriters.ToArray()))
|
||||||
{
|
{
|
||||||
_storeContext = storeContext;
|
_storeContext = storeContext;
|
||||||
_productService = productService;
|
_productService = productService;
|
||||||
|
|
|
||||||
|
|
@ -33,5 +33,8 @@ public class OrderDtoDbTable : MgDtoDbTableBase<OrderDto, Order>
|
||||||
public IQueryable<OrderDto> GetAllByOrderStatus(OrderStatus orderStatus, bool loadRelations = true)
|
public IQueryable<OrderDto> GetAllByOrderStatus(OrderStatus orderStatus, bool loadRelations = true)
|
||||||
=> GetAll(loadRelations).Where(o => o.OrderStatusId == (int)orderStatus);
|
=> GetAll(loadRelations).Where(o => o.OrderStatusId == (int)orderStatus);
|
||||||
|
|
||||||
|
public IQueryable<OrderDto> GetAllForMeasuring(bool loadRelations = true)
|
||||||
|
=> GetAllByOrderStatus(OrderStatus.Pending, loadRelations).Where(o => o.DateOfReceipt != null);
|
||||||
|
|
||||||
public IQueryable<OrderDto> GetAllByIds(IEnumerable<int> orderIds, bool loadRelations = true) => GetAll(loadRelations).Where(o => orderIds.Contains(o.Id));
|
public IQueryable<OrderDto> GetAllByIds(IEnumerable<int> orderIds, bool loadRelations = true) => GetAll(loadRelations).Where(o => orderIds.Contains(o.Id));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ using Mango.Nop.Core.Extensions;
|
||||||
namespace Nop.Plugin.Misc.FruitBankPlugin.Domains.EventConsumers;
|
namespace Nop.Plugin.Misc.FruitBankPlugin.Domains.EventConsumers;
|
||||||
|
|
||||||
public class FruitBankEventConsumer(IHttpContextAccessor httpContextAcc, FruitBankDbContext ctx, FruitBankAttributeService fruitBankAttributeService, IEnumerable<IAcLogWriterBase> logWriters) :
|
public class FruitBankEventConsumer(IHttpContextAccessor httpContextAcc, FruitBankDbContext ctx, FruitBankAttributeService fruitBankAttributeService, IEnumerable<IAcLogWriterBase> logWriters) :
|
||||||
MgEventConsumer(httpContextAcc, logWriters),
|
MgEventConsumer(ctx, httpContextAcc, logWriters),
|
||||||
IConsumer<EntityDeletedEvent<Shipping>>,
|
IConsumer<EntityDeletedEvent<Shipping>>,
|
||||||
IConsumer<EntityInsertedEvent<ShippingItem>>,
|
IConsumer<EntityInsertedEvent<ShippingItem>>,
|
||||||
IConsumer<EntityUpdatedEvent<ShippingItem>>,
|
IConsumer<EntityUpdatedEvent<ShippingItem>>,
|
||||||
|
|
@ -28,9 +28,9 @@ public class FruitBankEventConsumer(IHttpContextAccessor httpContextAcc, FruitBa
|
||||||
{
|
{
|
||||||
public override async Task HandleEventAsync(EntityUpdatedEvent<Product> eventMessage)
|
public override async Task HandleEventAsync(EntityUpdatedEvent<Product> eventMessage)
|
||||||
{
|
{
|
||||||
var product = eventMessage.Entity;
|
var product = await CheckAndUpdateProductManageInventoryMethodToManageStock(eventMessage.Entity);
|
||||||
|
|
||||||
var saveProductCustomAttributesResult = await SaveProductCustomAttributesAsync(eventMessage.Entity);
|
var saveProductCustomAttributesResult = await SaveProductCustomAttributesAsync(product);
|
||||||
|
|
||||||
//var isMeasurableProduct = await fruitBankAttributeService.IsMeasurableEntityAsync<Product>(product.Id);
|
//var isMeasurableProduct = await fruitBankAttributeService.IsMeasurableEntityAsync<Product>(product.Id);
|
||||||
|
|
||||||
|
|
@ -52,7 +52,9 @@ public class FruitBankEventConsumer(IHttpContextAccessor httpContextAcc, FruitBa
|
||||||
|
|
||||||
public override async Task HandleEventAsync(EntityInsertedEvent<Product> eventMessage)
|
public override async Task HandleEventAsync(EntityInsertedEvent<Product> eventMessage)
|
||||||
{
|
{
|
||||||
await SaveProductCustomAttributesAsync(eventMessage.Entity); //TODO: ez ide miért kell? - J.
|
var product = await CheckAndUpdateProductManageInventoryMethodToManageStock(eventMessage.Entity);
|
||||||
|
|
||||||
|
await SaveProductCustomAttributesAsync(product); //TODO: ez ide miért kell? - J.
|
||||||
await base.HandleEventAsync(eventMessage);
|
await base.HandleEventAsync(eventMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue