using BMA.EHR.Recurit.Exam.Service.Response; using BMA.EHR.Recurit.Exam.Service.Services; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; namespace BMA.EHR.Recurit.Exam.Service.Controllers { [Route("api/v{version:apiVersion}/province")] [ApiVersion("1.0")] [ApiController] [Produces("application/json")] [Authorize] [SwaggerTag("จัดการข้อมูลจังหวัด เพื่อนำไปใช้งานในระบบ")] public class ProvinceController : BaseController { #region " Fields " private readonly ProvinceService _provinceService; #endregion #region " Constructor and Destructor " public ProvinceController(ProvinceService provinceService) { _provinceService = provinceService; } #endregion #region " Methods " /// /// อ่านข้อมูลจาก Relational Db โดยแสดงเฉพาะข้อมูลที่ Active เท่านั้น /// /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetsAsync() { try { var items = await _provinceService.GetsAsync(showAll: false); return Success(items); } catch (Exception ex) { return Error(ex); } } #endregion } }