diff --git a/.vs/AlfaPrentice/v16/.suo b/.vs/AlfaPrentice/v16/.suo index ea0cf8d..900fef7 100644 Binary files a/.vs/AlfaPrentice/v16/.suo and b/.vs/AlfaPrentice/v16/.suo differ diff --git a/AlfaPrentice/Controllers/BedrijfController.cs b/AlfaPrentice/Controllers/BedrijfController.cs index 1cfea8a..0bf6b50 100644 --- a/AlfaPrentice/Controllers/BedrijfController.cs +++ b/AlfaPrentice/Controllers/BedrijfController.cs @@ -17,48 +17,40 @@ namespace AlfaPrentice.Controllers public class BedrijfController : ControllerBase { //constructor - public readonly AlfaPrenticeContext _context; public IBedrijfRepository bedrijfRepo; - public BedrijfController(AlfaPrenticeContext context, IBedrijfRepository bedrijfRepo) + public BedrijfController(IBedrijfRepository bedrijfRepo) { this.bedrijfRepo = bedrijfRepo; - _context = context; } - [HttpGet("{Bedrijf_ID}")] - public IEnumerable GetBedrijf(int Bedrijf_ID) + [HttpGet] + public IEnumerable GetBedrijf() { - var bedrijf =bedrijfRepo.GetBedrijf(Bedrijf_ID); + var bedrijven =bedrijfRepo.GetBedrijven(); + return bedrijven; + + } + + //get bedrijf by ID + [HttpGet("{Bedrijf_ID}")] + public Bedrijf GetBedrijf(int Bedrijf_ID) + { + var bedrijf = bedrijfRepo.GetBedrijf(Bedrijf_ID); return bedrijf; - } -/* //getbedrijf - [HttpGet("{Bedrijf_ID}")] - public async Task> GetBedrijf(int Bedrijf_ID) + //add geheel bedrijf + [HttpPost] + public void AddBedrijf([FromBody] Bedrijf bedrijf) { - return await _context.Bedrijf.Where(B => B.Bedrijf_ID == Bedrijf_ID).ToListAsync(); - // return getBedrijf; - }*/ + bedrijfRepo.AddBedrijf(bedrijf); + } - // GET: api/ - /* [HttpGet] - public IEnumerable Get() - { - return new string[] { "value1", "value2" }; - } - - // GET api//5 - [HttpGet("{id}")] - public string Get(int id) - { - return "value"; - } - - // POST api/ - [HttpPost] - public void Post([FromBody] string value) - { - }*/ + //update een volledig bedrijf + [HttpPost] + public void UpdateBedrijf([FromBody] Bedrijf bedrijf) + { + bedrijfRepo.UpdateBedrijf(bedrijf); + } } } diff --git a/AlfaPrentice/Controllers/SollicitatieController.cs b/AlfaPrentice/Controllers/SollicitatieController.cs new file mode 100644 index 0000000..1f834f7 --- /dev/null +++ b/AlfaPrentice/Controllers/SollicitatieController.cs @@ -0,0 +1,49 @@ +using AlfaPrentice.Data; +using AlfaPrentice.Models; +using AlfaPrentice.Repositorys.Interfaces; +using Microsoft.AspNetCore.Mvc; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860 + +namespace AlfaPrentice.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class SollicitatieController : ControllerBase + { + //constructor + public ISollicitatieRepository sollicitatieRepo; + public SollicitatieController(ISollicitatieRepository sollicitatieRepo) + { + this.sollicitatieRepo = sollicitatieRepo; + } + + //get list sollicitaties + [HttpGet] + public IEnumerable GetSollicitaties() + { + var sollicitaties = sollicitatieRepo.GetSollicitaties(); + return sollicitaties; + } + + //get sollicitatie by student_ID + [HttpGet("{Student_ID}")] + public Sollicitatie GetSollicitatie(int Student_ID) + { + var sollicitatie = sollicitatieRepo.GetSollicitatie(Student_ID); + return sollicitatie; + } + + // POST api/ + [HttpPost] + public void Post([FromBody] Sollicitatie sollicitatie) + { + sollicitatieRepo.AddSollicitatie(sollicitatie); + } + + } +} diff --git a/AlfaPrentice/Repositorys/Interfaces/IBedrijfRepository.cs b/AlfaPrentice/Repositorys/Interfaces/IBedrijfRepository.cs index b572025..044b7cf 100644 --- a/AlfaPrentice/Repositorys/Interfaces/IBedrijfRepository.cs +++ b/AlfaPrentice/Repositorys/Interfaces/IBedrijfRepository.cs @@ -8,7 +8,9 @@ namespace AlfaPrentice.Repositorys.Interfaces { public interface IBedrijfRepository { + List GetBedrijven(); Bedrijf GetBedrijf(int Bedrijf_ID); - //drijf GetBedrijf(int Bedrijf_ID); + Bedrijf AddBedrijf(Bedrijf bedrijf); + Bedrijf UpdateBedrijf(Bedrijf bedrijf); } } diff --git a/AlfaPrentice/Repositorys/Interfaces/ISollicitatieRepository.cs b/AlfaPrentice/Repositorys/Interfaces/ISollicitatieRepository.cs new file mode 100644 index 0000000..79cff41 --- /dev/null +++ b/AlfaPrentice/Repositorys/Interfaces/ISollicitatieRepository.cs @@ -0,0 +1,15 @@ +using AlfaPrentice.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace AlfaPrentice.Repositorys.Interfaces +{ + public interface ISollicitatieRepository + { + List GetSollicitaties(); + Sollicitatie GetSollicitatie(int Student_ID); + Sollicitatie AddSollicitatie(Sollicitatie Sollicitatie); + } +} diff --git a/AlfaPrentice/Repositorys/implementaties/BedrijfRepository.cs b/AlfaPrentice/Repositorys/implementaties/BedrijfRepository.cs index 1109b01..aa75627 100644 --- a/AlfaPrentice/Repositorys/implementaties/BedrijfRepository.cs +++ b/AlfaPrentice/Repositorys/implementaties/BedrijfRepository.cs @@ -16,10 +16,35 @@ namespace AlfaPrentice.Repositorys.implementaties this.db = db; } + //get list of bedrijfven + public List GetBedrijven() + { + return db.Bedrijf.ToList(); + } + + //get bedrijf by ID public Bedrijf GetBedrijf(int Bedrijf_ID) { return db.Bedrijf.Where(B => B.Bedrijf_ID == Bedrijf_ID).FirstOrDefault(); } + + //add geheel bedrijf + public Bedrijf AddBedrijf(Bedrijf bedrijf) + { + db.Bedrijf.Add(bedrijf); + db.SaveChanges(); + + return bedrijf; + } + + //update a complete bedrijf + public Bedrijf UpdateBedrijf(Bedrijf bedrijf) + { + db.Bedrijf.Update(bedrijf); + db.SaveChanges(); + + return bedrijf; + } } } diff --git a/AlfaPrentice/Repositorys/implementaties/SollicitatieRepository.cs b/AlfaPrentice/Repositorys/implementaties/SollicitatieRepository.cs new file mode 100644 index 0000000..7f04071 --- /dev/null +++ b/AlfaPrentice/Repositorys/implementaties/SollicitatieRepository.cs @@ -0,0 +1,39 @@ +using AlfaPrentice.Data; +using AlfaPrentice.Models; +using AlfaPrentice.Repositorys.Interfaces; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace AlfaPrentice.Repositorys.implementaties +{ + public class SollicitatieRepository : ISollicitatieRepository + { + AlfaPrenticeContext db; + public SollicitatieRepository(AlfaPrenticeContext db) + { + this.db = db; + } + //get list of sollicitaties + public List GetSollicitaties() + { + return db.Sollicitatie.ToList(); + } + + //get sollicitatie by Student_ID + public Sollicitatie GetSollicitatie(int Student_ID) + { + return db.Sollicitatie.Where(S => S.Student_ID == Student_ID).FirstOrDefault(); + } + + //Add complete sollicitatie + public Sollicitatie AddSollicitatie(Sollicitatie sollicitatie) + { + db.Sollicitatie.Add(sollicitatie); + db.SaveChanges(); + + return null; + } + } +} diff --git a/AlfaPrentice/Startup.cs b/AlfaPrentice/Startup.cs index e8b3832..d924e64 100644 --- a/AlfaPrentice/Startup.cs +++ b/AlfaPrentice/Startup.cs @@ -33,7 +33,9 @@ namespace AlfaPrentice services.Configure(Configuration); services.AddDbContext(options => options.UseMySQL(Configuration.GetConnectionString("AlfaPrentice"))); + //depencies for interface and repos services.AddTransient(); + services.AddTransient(); services.AddControllers(); services.AddSwaggerGen(c => diff --git a/AlfaPrentice/obj/Debug/net5.0/AlfaPrentice.csprojAssemblyReference.cache b/AlfaPrentice/obj/Debug/net5.0/AlfaPrentice.csprojAssemblyReference.cache index 7f588b9..4641ed7 100644 Binary files a/AlfaPrentice/obj/Debug/net5.0/AlfaPrentice.csprojAssemblyReference.cache and b/AlfaPrentice/obj/Debug/net5.0/AlfaPrentice.csprojAssemblyReference.cache differ