implemented basic crud logic; NB: CONNECTION STRING IN PROGRAM.CS IS EMPTY

This commit is contained in:
2022-11-19 11:10:00 +03:00
parent 400f717f97
commit 32b5d16c44
14 changed files with 313 additions and 58 deletions

View File

@@ -0,0 +1,14 @@
using Microsoft.EntityFrameworkCore;
namespace Backend.Api.Data
{
public class DataContext : DbContext
{
public DataContext(DbContextOptions<DataContext> options) : base(options)
{
}
public DbSet<User> Users { get; set; }
public DbSet<Vehicle> Vehicles { get; set; }
}
}

View File

@@ -0,0 +1,47 @@
namespace Backend.Api.Data.Services
{
public class UserService
{
private readonly DataContext _context;
public UserService(DataContext context)
{
_context = context;
}
public void Add(User user)
{
_context.Users.Add(user);
_context.SaveChanges();
}
public void Remove(long id)
{
var user = _context.Users.FirstOrDefault(x => x.Id == id);
if (user != null)
{
_context.Users.Remove(user);
_context.SaveChanges();
}
}
public void Update(long id, User newUser)
{
var oldUser = _context.Users.FirstOrDefault(x =>x.Id == id);
oldUser = newUser;
_context.SaveChanges();
}
public User? Get(long id)
{
var user = _context.Users.FirstOrDefault(x => x.Id == id);
return user;
}
public List<Vehicle> GetVehicles(long id)
{
var userId = _context.Users.FirstOrDefault(x => x.Id == id).Id;
var vehicles = _context.Vehicles.Where(x => x.OwnerId == userId).ToList<Vehicle>();
return vehicles;
}
}
}

View File

@@ -0,0 +1,45 @@
namespace Backend.Api.Data.Services
{
public class VehicleService
{
private readonly DataContext _context;
public VehicleService(DataContext context)
{
_context = context;
}
public void Add(Vehicle vehicle)
{
_context.Vehicles.Add(vehicle);
_context.SaveChanges();
}
public void Remove(long id)
{
var vehicle = _context.Vehicles.FirstOrDefault(x => x.Id == id);
if (vehicle != null)
{
_context.Vehicles.Remove(vehicle);
_context.SaveChanges();
}
}
public void Update(long id, Vehicle newVehicle)
{
var oldVehicle = _context.Vehicles.FirstOrDefault(x => x.Id == id);
oldVehicle = newVehicle;
_context.SaveChanges();
}
public Vehicle? Get(long id)
{
var vehicle = _context.Vehicles.FirstOrDefault(x => x.Id == id);
return vehicle;
}
public User? GetOwner(long id)
{
var ownerId = _context.Vehicles.FirstOrDefault(x => x.Id == id).OwnerId;
return _context.Users.FirstOrDefault(x => x.Id == ownerId);
}
}

9
Backend.Api/Data/User.cs Normal file
View File

@@ -0,0 +1,9 @@
namespace Backend.Api.Data
{
public class User
{
public long Id { get; set; }
public string Name { get; set; } = "Undefined name";
public string Surname { get; set; } = "Undefined surname";
}
}

View File

@@ -0,0 +1,9 @@
namespace Backend.Api.Data
{
public class Vehicle
{
public long Id { get; set; }
public long OwnerId { get; set; }
public string PlateNumber { get; set; } = "Undefined plate number";
}
}