diff options
Diffstat (limited to 'Backend/Api/Api/Services/UserService.cs')
-rw-r--r-- | Backend/Api/Api/Services/UserService.cs | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/Backend/Api/Api/Services/UserService.cs b/Backend/Api/Api/Services/UserService.cs index 787cf6a..264085c 100644 --- a/Backend/Api/Api/Services/UserService.cs +++ b/Backend/Api/Api/Services/UserService.cs @@ -14,45 +14,48 @@ namespace Api.Services } - public User createUser(User user) + public async Task createUser(User user) { - _users.InsertOne(user); - return user; + await _users.InsertOneAsync(user); + } - public bool deleteUser(string email) + public async Task<User> deleteUser(string email) { - _users.FindOneAndDelete(x => x.email == email); - return true; + return await _users.FindOneAndDeleteAsync(x => x.email == email); } - public User getUserByEmail(string email) + public async Task<User> getUserByEmail(string email) { - return _users.Find(x => x.email == email).First(); + return await _users.Find(x => x.email == email).SingleAsync(); } - public User getUserByUsername(string username) + public async Task<User> getUserByUsername(string username) { - return _users.Find(x => x.username == username).First(); + return await _users.Find(x => x.username == username).SingleAsync(); } - public List<User> getUsers() + public async Task<List<User>> getUsers() { - return _users.Find(_=>true).ToList(); + return await _users.Find(_=>true).ToListAsync(); } - public User updateUser(User user) + public async Task<long> updateUser(User user) { - /* + /* vraca broj izmenjenih korisnika * ovako je odradjeno da bi radilo i kada se posalje potpuno novi objekat User-a bez generisanog _id polja */ - User foundUser = _users.Find(x => x.email == user.email).First(); + User foundUser = await _users.Find(x => x.email == user.email).SingleAsync(); if (foundUser!=null && user._id==null) { user._id = foundUser._id; } - _users.ReplaceOne(x => x.email == user.email, user); - return user; + ReplaceOneResult res=await _users.ReplaceOneAsync(x => x.email == user.email, user); + if(res.IsAcknowledged) + return res.ModifiedCount; + return 0; } + + } } |