All checks were successful
CI/CD Pipeline / Build and Deploy with Docker Compose (push) Successful in 2m55s
47 lines
1.4 KiB
C#
47 lines
1.4 KiB
C#
using Core.Interfaces;
|
|
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System.Reflection;
|
|
|
|
namespace phronCare.API.Controllers.Sales
|
|
{
|
|
[Route("api/[controller]")]
|
|
[ApiController]
|
|
public class CustomerController : ControllerBase
|
|
{
|
|
private readonly ICustomerDom _customerService;
|
|
public CustomerController(ICustomerDom customerService)
|
|
{
|
|
_customerService = customerService ?? throw new ArgumentNullException(nameof(customerService));
|
|
}
|
|
[HttpGet("GetAll")]
|
|
public async Task<IActionResult> GetAll()
|
|
{
|
|
try
|
|
{
|
|
var result = await _customerService.GetAllAsync();
|
|
return Ok(result);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return BadRequest(ex.Message);
|
|
}
|
|
}
|
|
[HttpGet("search")]
|
|
public async Task<IActionResult> Search([FromQuery] string? name, [FromQuery] string? email, [FromQuery] string? document)
|
|
{
|
|
try
|
|
{
|
|
var result = await _customerService.SearchAsync(name, email, document);
|
|
return Ok(result);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
var methodName = MethodBase.GetCurrentMethod()?.Name ?? "UnknownMethod";
|
|
return StatusCode(500, $"{methodName} Message: {ex.Message}");
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|