Adress und shipping
This commit is contained in:
56
Webshop.Infrastructure/Repositories/AdressRepository.cs
Normal file
56
Webshop.Infrastructure/Repositories/AdressRepository.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
// src/Webshop.Infrastructure/Repositories/AddressRepository.cs
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Webshop.Domain.Entities;
|
||||
using Webshop.Domain.Interfaces;
|
||||
using Webshop.Infrastructure.Data;
|
||||
|
||||
namespace Webshop.Infrastructure.Repositories
|
||||
{
|
||||
public class AddressRepository : IAddressRepository
|
||||
{
|
||||
private readonly ApplicationDbContext _context;
|
||||
|
||||
public AddressRepository(ApplicationDbContext context)
|
||||
{
|
||||
_context = context;
|
||||
}
|
||||
|
||||
public async Task<IEnumerable<Address>> GetAllForCustomerAsync(Guid customerId)
|
||||
{
|
||||
return await _context.Addresses
|
||||
.Where(a => a.CustomerId == customerId)
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
public async Task<Address?> GetByIdAsync(Guid id)
|
||||
{
|
||||
return await _context.Addresses.FindAsync(id);
|
||||
}
|
||||
|
||||
public async Task AddAsync(Address address)
|
||||
{
|
||||
_context.Addresses.Add(address);
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public async Task UpdateAsync(Address address)
|
||||
{
|
||||
_context.Addresses.Update(address);
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public async Task DeleteAsync(Guid id)
|
||||
{
|
||||
var address = await _context.Addresses.FindAsync(id);
|
||||
if (address != null)
|
||||
{
|
||||
_context.Addresses.Remove(address);
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user