Mango.Nop.Plugins/Nop.Plugin.Misc.AIPlugin/Controllers/FruitBankDataController.cs

85 lines
2.7 KiB
C#

using AyCode.Core.Loggers;
using AyCode.Services.SignalRs;
using DocumentFormat.OpenXml.Office2010.Excel;
using FruitBank.Common.Entities;
using FruitBank.Common.Interfaces;
using FruitBank.Common.Loggers;
using FruitBank.Common.Models;
using FruitBank.Common.SignalRs;
using Microsoft.AspNetCore.Mvc;
using Nop.Plugin.Misc.FruitBankPlugin.Domains.DataLayer;
namespace Nop.Plugin.Misc.FruitBankPlugin.Controllers
{
//https://linq2db.github.io/articles/sql/Join-Operators.html
public class FruitBankDataController(FruitBankDbContext ctx, IEnumerable<IAcLogWriterBase> logWriters): Controller, IFruitBankDataControllerServer
{
private readonly ILogger _logger = new Logger<FruitBankDataController>(logWriters.ToArray());
[SignalR(SignalRTags.GetMeasuringModels)]
public async Task<List<MeasuringModel>> GetMeasuringModels()
{
throw new NotImplementedException("GetMeasuringModels");
}
[SignalR(SignalRTags.GetMeasuringModelByShippingId)]
public async Task<MeasuringModel> GetMeasuringModelByShippingId(int shippingId)
{
return await ctx.GetMeasuringModelByShippingId(shippingId);
}
[SignalR(SignalRTags.GetPartners)]
public async Task<List<Partner>> GetPartners()
{
_logger.Detail($"GetPartners invoked");
return await ctx.Partners.Table.ToListAsync();
}
[SignalR(SignalRTags.GetPartnerById)]
public async Task<Partner> GetPartnerById(int id)
{
_logger.Detail($"GetPartnerById invoked; id: {id}");
return await ctx.Partners.GetByIdAsync(id);
}
[SignalR(SignalRTags.GetShippings)]
public async Task<List<Shipping>> GetShippings()
{
_logger.Detail($"GetShippings invoked");
return await ctx.Shippings.Table.ToListAsync();
}
[SignalR(SignalRTags.GetShippingById)]
public async Task<Shipping> GetShippingById(int id)
{
_logger.Detail($"GetShippingById invoked; id: {id}");
return await ctx.Shippings.GetByIdAsync(id);
}
public async Task<List<ShippingItem>> GetShippingItem()
{
throw new NotImplementedException();
}
public async Task<ShippingItem> GetShippingItemById(int id)
{
throw new NotImplementedException();
}
public async Task<List<ShippingDocument>> GetShippingDocuments()
{
throw new NotImplementedException();
}
public async Task<ShippingDocument> GetShippingDocumentById(int id)
{
throw new NotImplementedException();
}
}
}