using DealerSelection.Api.Interface; using DealerSelection.WebApi.Models; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; using Model = DealerSelection.Api.Models; namespace DealerSelection.WebApi.Controllers; [ApiController] [Route("")] public class YellowController : ControllerBase { private IYellowAIApi Api { get; } public YellowController(IYellowAIApi api) { Api = api; } /// /// Update Yellow AI response of Selected Dealer data in DB /// /// [Authorize] [HttpPost] [ProducesResponseType(StatusCodes.Status200OK)] [SwaggerOperation(Tags = new[] { "YellowAI" })] [Route("updateselecteddealer")] public async Task UpdateSelectedDealer(CustomerDealerInfoRequest customerDealerInfoRequest) { Api.Models.CustomerDealerInfoRequest request = MapperConfig.MapCustomerDealerInfoRequest(customerDealerInfoRequest); await Api.UpdateSelectedDealer(request); } /// /// Get Model Code against Mobile Number and BU Code /// /// [Authorize] [HttpGet] [ProducesResponseType(StatusCodes.Status200OK)] [SwaggerOperation(Tags = new[] { "YellowAI" })] [Route("getmodelcode")] public async Task GetModelDetails(string buCode,string buSubType,string mobileNumber) { Model.ModelDetail apiResponse = await Api.GetModelDetails(mobileNumber, buCode,buSubType); ModelDetail response = MapperConfig.MapModelDetails(apiResponse); return response; } }