diff --git a/Back/skydiveLogs-api.Business/GearService.cs b/Back/skydiveLogs-api.Business/GearService.cs index 8668997..53e8928 100644 --- a/Back/skydiveLogs-api.Business/GearService.cs +++ b/Back/skydiveLogs-api.Business/GearService.cs @@ -15,8 +15,10 @@ namespace skydiveLogs_api.Business _gearRepository = gearRepository; } - public void AddNewGear(Gear newGear) + public void AddNewGear(Gear newGear, + User connectedUser) { + newGear.User = connectedUser; _gearRepository.Add(newGear); } @@ -30,9 +32,9 @@ namespace skydiveLogs_api.Business return _gearRepository.GetById(id); } - public IEnumerable GetAllGears() + public IEnumerable GetAllGears(User connectedUser) { - return _gearRepository.GetAll(); + return _gearRepository.GetAll(connectedUser); } public void UpdateGear(int id, Gear Gear) diff --git a/Back/skydiveLogs-api.Business/Interface/IGearService.cs b/Back/skydiveLogs-api.Business/Interface/IGearService.cs index d88c6cc..05aa72a 100644 --- a/Back/skydiveLogs-api.Business/Interface/IGearService.cs +++ b/Back/skydiveLogs-api.Business/Interface/IGearService.cs @@ -7,7 +7,7 @@ namespace skydiveLogs_api.Business.Interface { public interface IGearService { - IEnumerable GetAllGears(); + IEnumerable GetAllGears(User connectedUser); Gear GetGearById(int id); @@ -15,6 +15,6 @@ namespace skydiveLogs_api.Business.Interface void UpdateGear(int id, Gear gear); - void AddNewGear(Gear gear); + void AddNewGear(Gear gear, User connectedUser); } } diff --git a/Back/skydiveLogs-api.Data/GearRepository.cs b/Back/skydiveLogs-api.Data/GearRepository.cs index c580891..cafa289 100644 --- a/Back/skydiveLogs-api.Data/GearRepository.cs +++ b/Back/skydiveLogs-api.Data/GearRepository.cs @@ -19,7 +19,15 @@ namespace skydiveLogs_api.Data public IEnumerable GetAll() { - return _col.FindAll().ToList(); + throw new System.NotImplementedException(); + } + + public IEnumerable GetAll(User connectedUser) + { + return _col.Include(x => x.User) + .Query() + .Where(j => j.User.Id == user.Id) + ToList(); } public Gear GetById(int id) diff --git a/Back/skydiveLogs-api.Data/Interface/IGearRepository.cs b/Back/skydiveLogs-api.Data/Interface/IGearRepository.cs index 96c54b9..82f8fbd 100644 --- a/Back/skydiveLogs-api.Data/Interface/IGearRepository.cs +++ b/Back/skydiveLogs-api.Data/Interface/IGearRepository.cs @@ -1,9 +1,10 @@ using skydiveLogs_api.Model; - +using System.Collections.Generic; namespace skydiveLogs_api.Data.Interface { public interface IGearRepository : IRepository { + IEnumerable GetAll(User connectedUser); } } diff --git a/Back/skydiveLogs-api.Data/Interface/IJumpRepository.cs b/Back/skydiveLogs-api.Data/Interface/IJumpRepository.cs index e3ecd8e..d0c0faa 100644 --- a/Back/skydiveLogs-api.Data/Interface/IJumpRepository.cs +++ b/Back/skydiveLogs-api.Data/Interface/IJumpRepository.cs @@ -6,6 +6,5 @@ namespace skydiveLogs_api.Data.Interface public interface IJumpRepository : IRepository { IEnumerable GetAll(User user); - } } diff --git a/Back/skydiveLogs-api.Data/LiteDbProvider.cs b/Back/skydiveLogs-api.Data/LiteDbProvider.cs index ebfa89d..3e73fc6 100644 --- a/Back/skydiveLogs-api.Data/LiteDbProvider.cs +++ b/Back/skydiveLogs-api.Data/LiteDbProvider.cs @@ -10,6 +10,7 @@ namespace skydiveLogs_api.Data public LiteDbProvider(string connectionString) { _db = new LiteDatabase(connectionString); + BsonMapper.Global.Entity().DbRef(x => x.JumpType, "JumpType"); BsonMapper.Global.Entity().DbRef(x => x.Aircraft, "Aircraft"); BsonMapper.Global.Entity().DbRef(x => x.DropZone, "DropZone"); @@ -17,6 +18,8 @@ namespace skydiveLogs_api.Data BsonMapper.Global.Entity().DbRef(x => x.User, "User"); BsonMapper.Global.Entity().DbRef(x => x.User, "User"); + + BsonMapper.Global.Entity().DbRef(x => x.User, "User"); } public ILiteCollection GetCollection() diff --git a/Back/skydiveLogs-api.Model/Gear.cs b/Back/skydiveLogs-api.Model/Gear.cs index a274a48..a944bb6 100644 --- a/Back/skydiveLogs-api.Model/Gear.cs +++ b/Back/skydiveLogs-api.Model/Gear.cs @@ -17,5 +17,7 @@ public string MainCanopy { get; set; } public string ReserveCanopy { get; set; } + + public User User { get; set; } } } diff --git a/Back/skydiveLogs-api/Controllers/GearController.cs b/Back/skydiveLogs-api/Controllers/GearController.cs index 44995a7..9d73911 100644 --- a/Back/skydiveLogs-api/Controllers/GearController.cs +++ b/Back/skydiveLogs-api/Controllers/GearController.cs @@ -25,7 +25,7 @@ namespace skydiveLogs_api.Controllers [EnableCors] public IEnumerable Get() { - var result = _gearService.GetAllGears(); + var result = _gearService.GetAllGears(ConnectedUser); return _mapper.Map>(result); } @@ -43,7 +43,7 @@ namespace skydiveLogs_api.Controllers [EnableCors] public void Post([FromBody] GearReq value) { - _gearService.AddNewGear(_mapper.Map(value)); + _gearService.AddNewGear(_mapper.Map(value), ConnectedUser); } // PUT: api/Gear/5