aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Web
diff options
context:
space:
mode:
Diffstat (limited to 'src/DevHive.Web')
-rw-r--r--src/DevHive.Web/Controllers/LanguageController.cs3
-rw-r--r--src/DevHive.Web/Controllers/TechnologyController.cs5
-rw-r--r--src/DevHive.Web/Controllers/UserController.cs70
-rw-r--r--src/DevHive.Web/Models/Identity/User/FriendWebModel.cs7
-rw-r--r--src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs9
-rw-r--r--src/DevHive.Web/Models/Identity/User/UserWebModel.cs4
-rw-r--r--src/DevHive.Web/Models/Language/UpdateLanguageWebModel.cs2
-rw-r--r--src/DevHive.Web/Models/Technology/UpdateTechnologyWebModel.cs2
8 files changed, 29 insertions, 73 deletions
diff --git a/src/DevHive.Web/Controllers/LanguageController.cs b/src/DevHive.Web/Controllers/LanguageController.cs
index 5202f16..c503a47 100644
--- a/src/DevHive.Web/Controllers/LanguageController.cs
+++ b/src/DevHive.Web/Controllers/LanguageController.cs
@@ -47,8 +47,9 @@ namespace DevHive.Web.Controllers
public async Task<IActionResult> Update(Guid languageId, [FromBody] UpdateLanguageWebModel updateModel)
{
UpdateLanguageServiceModel updatelanguageServiceModel = this._languageMapper.Map<UpdateLanguageServiceModel>(updateModel);
+ updatelanguageServiceModel.Id = languageId;
- bool result = await this._languageService.UpdateLanguage(languageId, updatelanguageServiceModel);
+ bool result = await this._languageService.UpdateLanguage(updatelanguageServiceModel);
if (!result)
return new BadRequestObjectResult("Could not update Language");
diff --git a/src/DevHive.Web/Controllers/TechnologyController.cs b/src/DevHive.Web/Controllers/TechnologyController.cs
index 3be3b8a..7f2f400 100644
--- a/src/DevHive.Web/Controllers/TechnologyController.cs
+++ b/src/DevHive.Web/Controllers/TechnologyController.cs
@@ -46,9 +46,10 @@ namespace DevHive.Web.Controllers
[HttpPut]
public async Task<IActionResult> Update(Guid technologyId, [FromBody] UpdateTechnologyWebModel updateModel)
{
- UpdateTechnologyServiceModel updateTechnologyWebModel = this._technologyMapper.Map<UpdateTechnologyServiceModel>(updateModel);
+ UpdateTechnologyServiceModel updateTechnologyServiceModel = this._technologyMapper.Map<UpdateTechnologyServiceModel>(updateModel);
+ updateTechnologyServiceModel.Id = technologyId;
- bool result = await this._technologyService.UpdateTechnology(technologyId, updateTechnologyWebModel);
+ bool result = await this._technologyService.UpdateTechnology(updateTechnologyServiceModel);
if (!result)
return new BadRequestObjectResult("Could not update Technology");
diff --git a/src/DevHive.Web/Controllers/UserController.cs b/src/DevHive.Web/Controllers/UserController.cs
index b33c3b9..8d48705 100644
--- a/src/DevHive.Web/Controllers/UserController.cs
+++ b/src/DevHive.Web/Controllers/UserController.cs
@@ -57,40 +57,6 @@ namespace DevHive.Web.Controllers
}
#endregion
- #region Create
-
- [HttpPost]
- [Route("AddAFriend")]
- public async Task<IActionResult> AddAFriend(Guid userId, [FromBody] IdModel friendIdModel)
- {
- return await this._userService.AddFriend(userId, friendIdModel.Id) ?
- new OkResult() :
- new BadRequestResult();
- }
-
- [HttpPost]
- [Route("AddLanguageToUser")]
- public async Task<IActionResult> AddLanguageToUser(Guid userId, [FromBody] LanguageWebModel languageWebModel)
- {
- LanguageServiceModel languageServiceModel = this._userMapper.Map<LanguageServiceModel>(languageWebModel);
-
- return await this._userService.AddLanguageToUser(userId, languageServiceModel) ?
- new OkResult() :
- new BadRequestResult();
- }
-
- [HttpPost]
- [Route("AddTechnologyToUser")]
- public async Task<IActionResult> AddTechnologyToUser(Guid userId, [FromBody] TechnologyWebModel technologyWebModel)
- {
- TechnologyServiceModel technologyServiceModel = this._userMapper.Map<TechnologyServiceModel>(technologyWebModel);
-
- return await this._userService.AddTechnologyToUser(userId, technologyServiceModel) ?
- new OkResult() :
- new BadRequestResult();
- }
- #endregion
-
#region Read
[HttpGet]
@@ -107,9 +73,10 @@ namespace DevHive.Web.Controllers
[HttpGet]
[Route("GetAFriend")]
- public async Task<IActionResult> GetAFriend(Guid friendId)
+ [AllowAnonymous]
+ public async Task<IActionResult> GetAFriend(string username)
{
- UserServiceModel friendServiceModel = await this._userService.GetFriendById(friendId);
+ UserServiceModel friendServiceModel = await this._userService.GetFriend(username);
UserWebModel friend = this._userMapper.Map<UserWebModel>(friendServiceModel);
return new OkObjectResult(friend);
@@ -134,7 +101,6 @@ namespace DevHive.Web.Controllers
#endregion
#region Delete
-
[HttpDelete]
public async Task<IActionResult> Delete(Guid id, [FromHeader] string authorization)
{
@@ -144,36 +110,6 @@ namespace DevHive.Web.Controllers
await this._userService.DeleteUser(id);
return new OkResult();
}
-
- [HttpDelete]
- [Route("RemoveAFriend")]
- public async Task<IActionResult> RemoveAFriend(Guid userId, Guid friendId)
- {
- await this._userService.RemoveFriend(userId, friendId);
- return new OkResult();
- }
-
- [HttpDelete]
- [Route("RemoveLanguageFromUser")]
- public async Task<IActionResult> RemoveLanguageFromUser(Guid userId, [FromBody] LanguageWebModel languageWebModel)
- {
- LanguageServiceModel languageServiceModel = this._userMapper.Map<LanguageServiceModel>(languageWebModel);
-
- return await this._userService.RemoveLanguageFromUser(userId, languageServiceModel) ?
- new OkResult() :
- new BadRequestResult();
- }
-
- [HttpDelete]
- [Route("RemoveTechnologyFromUser")]
- public async Task<IActionResult> RemoveTechnologyFromUser(Guid userId, [FromBody] TechnologyWebModel technologyWebModel)
- {
- TechnologyServiceModel technologyServiceModel = this._userMapper.Map<TechnologyServiceModel>(technologyWebModel);
-
- return await this._userService.RemoveTechnologyFromUser(userId, technologyServiceModel) ?
- new OkResult() :
- new BadRequestResult();
- }
#endregion
}
}
diff --git a/src/DevHive.Web/Models/Identity/User/FriendWebModel.cs b/src/DevHive.Web/Models/Identity/User/FriendWebModel.cs
new file mode 100644
index 0000000..681529a
--- /dev/null
+++ b/src/DevHive.Web/Models/Identity/User/FriendWebModel.cs
@@ -0,0 +1,7 @@
+namespace DevHive.Web.Models.Identity.User
+{
+ public class FriendWebModel
+ {
+ public string Username { get; set; }
+ }
+}
diff --git a/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs b/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs
index 9e41eb6..782c558 100644
--- a/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs
+++ b/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs
@@ -1,5 +1,8 @@
+using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using DevHive.Web.Models.Identity.Validation;
+using DevHive.Web.Models.Language;
+using DevHive.Web.Models.Technology;
namespace DevHive.Web.Models.Identity.User
{
@@ -8,5 +11,11 @@ namespace DevHive.Web.Models.Identity.User
[Required]
[GoodPassword]
public string Password { get; set; }
+
+ public IList<FriendWebModel> Friends { get; set; }
+
+ public IList<UpdateLanguageWebModel> Languages { get; set; }
+
+ public IList<UpdateTechnologyWebModel> Technologies { get; set; }
}
}
diff --git a/src/DevHive.Web/Models/Identity/User/UserWebModel.cs b/src/DevHive.Web/Models/Identity/User/UserWebModel.cs
index 8f7995c..3b243e7 100644
--- a/src/DevHive.Web/Models/Identity/User/UserWebModel.cs
+++ b/src/DevHive.Web/Models/Identity/User/UserWebModel.cs
@@ -1,5 +1,4 @@
using System.Collections.Generic;
-using DevHive.Common.Models.Identity;
using DevHive.Web.Models.Identity.Role;
using DevHive.Web.Models.Language;
using DevHive.Web.Models.Technology;
@@ -9,8 +8,11 @@ namespace DevHive.Web.Models.Identity.User
public class UserWebModel : BaseUserWebModel
{
public IList<RoleWebModel> Roles { get; set; } = new List<RoleWebModel>();
+
public IList<UserWebModel> Friends { get; set; } = new List<UserWebModel>();
+
public IList<LanguageWebModel> Languages { get; set; } = new List<LanguageWebModel>();
+
public IList<TechnologyWebModel> Technologies { get; set; } = new List<TechnologyWebModel>();
}
}
diff --git a/src/DevHive.Web/Models/Language/UpdateLanguageWebModel.cs b/src/DevHive.Web/Models/Language/UpdateLanguageWebModel.cs
index ed3b37c..18d945f 100644
--- a/src/DevHive.Web/Models/Language/UpdateLanguageWebModel.cs
+++ b/src/DevHive.Web/Models/Language/UpdateLanguageWebModel.cs
@@ -2,7 +2,7 @@ using System;
namespace DevHive.Web.Models.Language
{
- public class UpdateLanguageWebModel : LanguageWebModel
+ public class UpdateLanguageWebModel
{
public string Name { get; set; }
}
diff --git a/src/DevHive.Web/Models/Technology/UpdateTechnologyWebModel.cs b/src/DevHive.Web/Models/Technology/UpdateTechnologyWebModel.cs
index 8bf48bf..4651b9e 100644
--- a/src/DevHive.Web/Models/Technology/UpdateTechnologyWebModel.cs
+++ b/src/DevHive.Web/Models/Technology/UpdateTechnologyWebModel.cs
@@ -2,7 +2,7 @@ using System;
namespace DevHive.Web.Models.Technology
{
- public class UpdateTechnologyWebModel : TechnologyWebModel
+ public class UpdateTechnologyWebModel
{
public string Name { get; set; }
}