Files
constructdemo/ConstructorAppApi/Controllers/TestimonialController.cs
2025-05-01 15:18:30 +03:00

91 lines
2.9 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using AutoMapper;
using ConstructorApp.BusinessLayer.Abstract;
using ConstructorApp.DtoLayer.TestimonialDto;
using ConstructorApp.EntityLayer.Entities;
using Microsoft.AspNetCore.Mvc;
namespace ConstructorAppApi.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class TestimonialController : ControllerBase
{
private readonly ITestimonialService _testimonialService;
private readonly IMapper _mapper;
public TestimonialController(ITestimonialService testimonialService, IMapper mapper)
{
_testimonialService = testimonialService;
_mapper = mapper;
}
[HttpGet]
public IActionResult TestimonialList()
{
var value = _testimonialService.TGetListAll();
var result = _mapper.Map<List<ResultTestimonialDto>>(value);
return Ok(result);
}
[HttpPost]
public IActionResult CreateTestimonial(CreateTestimonialDto createTestimonialDto)
{
var value = _mapper.Map<Testimonial>(createTestimonialDto);
_testimonialService.TAdd(value);
return Ok("Yorum Bilgisi Eklendi");
}
[HttpDelete("{id}")]
public IActionResult DeleteTestimonial(int id)
{
var value = _testimonialService.TGetByID(id);
if (value != null)
{
_testimonialService.TDelete(value);
return Ok("Yorum Bilgisi Silindi");
}
return NotFound("Yorum Bilgisi Bulunamadı");
}
[HttpPut]
public IActionResult UpdateTestimonial(UpdateTestimonialDto updateTestimonialDto)
{
var value = _mapper.Map<Testimonial>(updateTestimonialDto);
_testimonialService.TUpdate(value);
return Ok("Yorum Alanı Güncellendi");
}
[HttpGet("{id}")]
public IActionResult GetTestimonial(int id)
{
var value = _testimonialService.TGetByID(id);
if (value != null)
{
var result = _mapper.Map<ResultTestimonialDto>(value);
return Ok(result);
}
return NotFound("Yorum Bilgisi Bulunamadı");
}
[HttpGet("TestimonialStatusActive/{id}")]
public IActionResult TestimonialStatusActive(int id)
{
_testimonialService.TTestimonialStatusActive(id);
return Ok("Ürün Kategorisi Aktif Hale Getirildi");
}
[HttpGet("TestimonialStatusPassive/{id}")]
public IActionResult TestimonialStatusPassive(int id)
{
_testimonialService.TTestimonialStatusPassive(id);
return Ok("Ürün Kategorisi Pasif Hale Getirildi");
}
[HttpGet("CountAll")]
public IActionResult CountAll()
{
return Ok(_testimonialService.TCountAll());
}
}
}