Implement base controller for shared functionality; update existing controllers to inherit from BaseController and adjust user ID handling. Add JWT authentication support and modify item retrieval methods in GameDataController.
This commit is contained in:
13
Controllers/BaseController.cs
Normal file
13
Controllers/BaseController.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace PetCompanion.Controllers
|
||||
{
|
||||
[Authorize]
|
||||
[ApiController]
|
||||
[Route("api/v1/[controller]")]
|
||||
public class BaseController : Controller
|
||||
{
|
||||
protected string userId => User.Claims.FirstOrDefault(c => c.Type == "user_id").Value;
|
||||
}
|
||||
}
|
@@ -3,13 +3,10 @@ using PetCompanion.Repositories;
|
||||
|
||||
namespace PetCompanion.Controllers
|
||||
{
|
||||
[ApiController]
|
||||
[Route("api/v1/[controller]")]
|
||||
public class GameDataController : Controller
|
||||
public class GameDataController : BaseController
|
||||
{
|
||||
private readonly GameItemsRepository gameItemsRepository;
|
||||
private readonly ILogger<InventoryController> logger;
|
||||
private readonly Guid userId = Guid.Parse("f5f4b3b3-3b7b-4b7b-8b7b-7b7b7b7b7b7b");
|
||||
|
||||
public GameDataController(
|
||||
ILogger<InventoryController> logger,
|
||||
@@ -19,7 +16,20 @@ namespace PetCompanion.Controllers
|
||||
this.gameItemsRepository = gameItemsRepository;
|
||||
}
|
||||
|
||||
[HttpGet("item/icon/{itemId}")]
|
||||
[HttpGet("item/{itemId}")]
|
||||
public IActionResult GetItemInfo(int itemId)
|
||||
{
|
||||
try
|
||||
{
|
||||
return Ok(gameItemsRepository.GetById(itemId));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return BadRequest(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
[HttpGet("item/{itemId}/icon")]
|
||||
public IActionResult GetItemIcon(int itemId)
|
||||
{
|
||||
try
|
||||
|
@@ -1,16 +1,14 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using PetCompanion.Models;
|
||||
using PetCompanion.Services;
|
||||
|
||||
namespace PetCompanion.Controllers
|
||||
{
|
||||
[ApiController]
|
||||
[Route("api/v1/[controller]")]
|
||||
public class InventoryController : ControllerBase
|
||||
public class InventoryController : BaseController
|
||||
{
|
||||
private readonly PetInventoryService inventoryService;
|
||||
private readonly ILogger<InventoryController> logger;
|
||||
private readonly Guid userId = Guid.Parse("f5f4b3b3-3b7b-4b7b-8b7b-7b7b7b7b7b7b");
|
||||
|
||||
public InventoryController(
|
||||
ILogger<InventoryController> logger,
|
||||
|
@@ -4,14 +4,11 @@ using PetCompanion.Services;
|
||||
|
||||
namespace PetCompanion.Controllers
|
||||
{
|
||||
[ApiController]
|
||||
[Route("api/v1/[controller]")]
|
||||
public class PetController : ControllerBase
|
||||
public class PetController : BaseController
|
||||
{
|
||||
private readonly PetService petService;
|
||||
private readonly PetClassService petClassService;
|
||||
private readonly ILogger<PetController> logger;
|
||||
private Guid userId = Guid.Parse("f5f4b3b3-3b7b-4b7b-8b7b-7b7b7b7b7b7b");
|
||||
|
||||
public PetController(
|
||||
ILogger<PetController> logger,
|
||||
|
@@ -3,14 +3,11 @@ using PetCompanion.Services;
|
||||
|
||||
namespace PetCompanion.Controllers
|
||||
{
|
||||
[ApiController]
|
||||
[Route("api/v1/[controller]")]
|
||||
public class SkillController : ControllerBase
|
||||
public class SkillController : BaseController
|
||||
{
|
||||
private readonly SkillService _skillService;
|
||||
private readonly PetSkillService _petSkillService;
|
||||
private readonly ILogger<SkillController> _logger;
|
||||
private Guid userId = Guid.Parse("f5f4b3b3-3b7b-4b7b-8b7b-7b7b7b7b7b7b");
|
||||
|
||||
public SkillController(
|
||||
ILogger<SkillController> logger,
|
||||
@@ -34,7 +31,7 @@ namespace PetCompanion.Controllers
|
||||
{
|
||||
try
|
||||
{
|
||||
var skills = _petSkillService.GetPetSkills(petId, userId.ToString());
|
||||
var skills = _petSkillService.GetPetSkills(petId, userId);
|
||||
return Ok(skills);
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -48,7 +45,7 @@ namespace PetCompanion.Controllers
|
||||
{
|
||||
try
|
||||
{
|
||||
var result = _petSkillService.UpgradeSkill(petId, userId.ToString(), skillId);
|
||||
var result = _petSkillService.UpgradeSkill(petId, userId, skillId);
|
||||
return Ok(result);
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
Reference in New Issue
Block a user