using EnertechWebAPI.Interfaces; using EnertechWebAPI.Requests; using EnertechWebAPI.Responses; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace EnertechWebAPI.Controllers { [Authorize] [Route("api/[controller]")] [ApiController] public class EMobilityController : BaseApiController { private readonly IEMobilityInterface emobilityService; public EMobilityController(IEMobilityInterface emobilityService) { this.emobilityService = emobilityService; } [HttpGet] public async Task Get(int id) { var getUserEMobilityResponse = await emobilityService.GetUserEMobility(UserID); if (!getUserEMobilityResponse.Success) { return UnprocessableEntity(getUserEMobilityResponse); } var useremobilityResponse = getUserEMobilityResponse.UserEMobilities.ConvertAll(o => new UserEMobilityResponse { EMobilityId = o.EMobilityId, RentPrice = o.RentPrice, EMobilityName = o.EMobilityName, userId = UserID, Rent = o.Rent }); return Ok(useremobilityResponse); } [HttpPut("{emobilityId}")] public async Task Put(int emobilityId) { var putEMobilityResponse = await emobilityService.PutEMobility(emobilityId, UserID); if (!putEMobilityResponse.Success) { return UnprocessableEntity(putEMobilityResponse); } return Ok(putEMobilityResponse); } } }