45 lines
1.3 KiB
C#
45 lines
1.3 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
using Seyounth.Hyosung.Data.Entities;
|
|
using Seyounth.Hyosung.Data.Models;
|
|
using Seyounth.Hyosung.Data.Repositories;
|
|
|
|
namespace Seyounth.Hyosung.Data.Services;
|
|
|
|
public class PalletService : IPalletService
|
|
{
|
|
private readonly List<Pallet> _pallets;
|
|
public readonly IRepository<PalletEntity> _palletRepository;
|
|
|
|
public PalletService(IServiceProvider serviceProvider)
|
|
{
|
|
_palletRepository = serviceProvider.CreateScope().ServiceProvider
|
|
.GetRequiredService<IRepository<PalletEntity>>();
|
|
// _palletRepository = serviceProvider.GetService<IRepository<PalletEntity>>();
|
|
_pallets = _palletRepository.GetList().Select(Pallet.FromEntity).ToList();
|
|
}
|
|
|
|
public List<Pallet> GetPallets()
|
|
{
|
|
return _pallets;
|
|
}
|
|
|
|
public async Task<int> AddPalletAsync(Pallet pallet)
|
|
{
|
|
var id = await _palletRepository.InsertReturnIdentityAsync(pallet);
|
|
pallet.Id = id;
|
|
_pallets.Add(pallet);
|
|
return id;
|
|
}
|
|
|
|
public async Task DeletePalletAsync(Pallet pallet)
|
|
{
|
|
await _palletRepository.DeleteAsync(pallet);
|
|
_pallets.Remove(pallet);
|
|
}
|
|
|
|
public async Task UpdatePalletAsync(Pallet pallet)
|
|
{
|
|
await _palletRepository.UpdateAsync(pallet);
|
|
_pallets[_pallets.IndexOf(pallet)] = pallet;
|
|
}
|
|
} |