Add Controller that returns logged characters
This commit is contained in:
parent
11af142a09
commit
bf5604871d
@ -7,6 +7,7 @@ using SessionCompanion.ViewModels.CharacterViewModels;
|
|||||||
|
|
||||||
namespace SessionCompanion.Controllers
|
namespace SessionCompanion.Controllers
|
||||||
{
|
{
|
||||||
|
using SessionCompanion.Hubs;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@ -16,10 +17,12 @@ namespace SessionCompanion.Controllers
|
|||||||
public class CharacterController : Controller
|
public class CharacterController : Controller
|
||||||
{
|
{
|
||||||
private readonly ICharacterService _service;
|
private readonly ICharacterService _service;
|
||||||
|
private readonly SessionHubData _sessionHubData;
|
||||||
|
|
||||||
public CharacterController(ICharacterService service)
|
public CharacterController(ICharacterService service)
|
||||||
{
|
{
|
||||||
this._service = service;
|
this._service = service;
|
||||||
|
this._sessionHubData = new SessionHubData();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -44,7 +47,7 @@ namespace SessionCompanion.Controllers
|
|||||||
/// Metoda zwraca listę postaci przypisanych do danego użytkownika
|
/// Metoda zwraca listę postaci przypisanych do danego użytkownika
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="userId"> Identyfikator użytkownika </param>
|
/// <param name="userId"> Identyfikator użytkownika </param>
|
||||||
/// <returns> Lista postać lub wiadomość błędu </returns>
|
/// <returns> Lista postaci lub wiadomość błędu </returns>
|
||||||
[HttpGet("userCharactersList")]
|
[HttpGet("userCharactersList")]
|
||||||
public async Task<Either<List<CharacterForLoginViewModel>, ErrorResponse>> GetCharacterListForUser([Required] int userId)
|
public async Task<Either<List<CharacterForLoginViewModel>, ErrorResponse>> GetCharacterListForUser([Required] int userId)
|
||||||
{
|
{
|
||||||
@ -61,5 +64,27 @@ namespace SessionCompanion.Controllers
|
|||||||
Message = "No characters with given user id"
|
Message = "No characters with given user id"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Metoda zwraca listę postaci przypisanych do danego użytkownika
|
||||||
|
/// </summary>
|
||||||
|
/// <returns> Lista zalogowanych postaci lub wiadomość błędu </returns>
|
||||||
|
[HttpGet("loggedCharacters")]
|
||||||
|
public async Task<Either<List<CharacterBasicStatsViewModel>, ErrorResponse>> GetLoggedUsersCharacters()
|
||||||
|
{
|
||||||
|
List<CharacterBasicStatsViewModel> characters = new List<CharacterBasicStatsViewModel>();
|
||||||
|
var connectedCharacters = _sessionHubData.ConnectedCharacters_Prop;
|
||||||
|
|
||||||
|
foreach (var characterId in connectedCharacters.Values)
|
||||||
|
characters.Add(await _service.GetBasicCharacterData(characterId));
|
||||||
|
|
||||||
|
if (characters.Any())
|
||||||
|
return characters;
|
||||||
|
|
||||||
|
return new ErrorResponse()
|
||||||
|
{
|
||||||
|
StatusCode = 204,
|
||||||
|
Message = "No logged characters"
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -34,7 +34,7 @@ namespace SessionCompanion.Hubs
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Zwraca lub ustawia listę zalogowanych graczy
|
/// Zwraca lub ustawia listę zalogowanych postaci
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Dictionary<string, int> ConnectedCharacters_Prop
|
public Dictionary<string, int> ConnectedCharacters_Prop
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"iisSettings": {
|
"iisSettings": {
|
||||||
"windowsAuthentication": false,
|
"windowsAuthentication": false,
|
||||||
"anonymousAuthentication": true,
|
"anonymousAuthentication": true,
|
||||||
@ -18,10 +18,10 @@
|
|||||||
"SessionCompanion": {
|
"SessionCompanion": {
|
||||||
"commandName": "Project",
|
"commandName": "Project",
|
||||||
"launchBrowser": true,
|
"launchBrowser": true,
|
||||||
"applicationUrl": "https://localhost:5001;http://localhost:5000",
|
|
||||||
"environmentVariables": {
|
"environmentVariables": {
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
}
|
},
|
||||||
|
"applicationUrl": "https://localhost:5001;http://localhost:5000"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -11,6 +11,19 @@
|
|||||||
<param name="characterId">Identyfikator postaci</param>
|
<param name="characterId">Identyfikator postaci</param>
|
||||||
<returns>ViewModel Postaci/ErrorResponse</returns>
|
<returns>ViewModel Postaci/ErrorResponse</returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:SessionCompanion.Controllers.CharacterController.GetCharacterListForUser(System.Int32)">
|
||||||
|
<summary>
|
||||||
|
Metoda zwraca listę postaci przypisanych do danego użytkownika
|
||||||
|
</summary>
|
||||||
|
<param name="userId"> Identyfikator użytkownika </param>
|
||||||
|
<returns> Lista postaci lub wiadomość błędu </returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:SessionCompanion.Controllers.CharacterController.GetLoggedUsersCharacters">
|
||||||
|
<summary>
|
||||||
|
Metoda zwraca listę postaci przypisanych do danego użytkownika
|
||||||
|
</summary>
|
||||||
|
<returns> Lista zalogowanych postaci lub wiadomość błędu </returns>
|
||||||
|
</member>
|
||||||
<member name="M:SessionCompanion.Controllers.UserController.Login(System.String,System.String)">
|
<member name="M:SessionCompanion.Controllers.UserController.Login(System.String,System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Metoda przyjmuje login oraz hasło i sprawdza czy istnieje użytkownik o podanych parametrach
|
Metoda przyjmuje login oraz hasło i sprawdza czy istnieje użytkownik o podanych parametrach
|
||||||
@ -32,14 +45,9 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<returns>true jesli ktoś jest już zalogowany i false jeśli nie</returns>
|
<returns>true jesli ktoś jest już zalogowany i false jeśli nie</returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:SessionCompanion.Hubs.SessionHub.ConnectedCharacters">
|
<member name="F:SessionCompanion.Hubs.SessionHub.sessionHubData">
|
||||||
<summary>
|
<summary>
|
||||||
Lista zalogowanych graczy i identyfikator wybranej postaci
|
Klasa zawierająca wszystkie dane potrzebne w SignalR odnośnie aktualnej sesji
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:SessionCompanion.Hubs.SessionHub.GameMasterConnected">
|
|
||||||
<summary>
|
|
||||||
Status, czy GM został już zalogowany
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:SessionCompanion.Hubs.SessionHub.OnDisconnectedAsync(System.Exception)">
|
<member name="M:SessionCompanion.Hubs.SessionHub.OnDisconnectedAsync(System.Exception)">
|
||||||
@ -86,7 +94,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="P:SessionCompanion.Hubs.SessionHubData.ConnectedCharacters_Prop">
|
<member name="P:SessionCompanion.Hubs.SessionHubData.ConnectedCharacters_Prop">
|
||||||
<summary>
|
<summary>
|
||||||
Zwraca lub ustawia listę zalogowanych graczy
|
Zwraca lub ustawia listę zalogowanych postaci
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
</members>
|
</members>
|
||||||
|
Loading…
Reference in New Issue
Block a user