| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using Diligent.WebAPI.Contracts.DTOs.Pattern;
-
- namespace Diligent.WebAPI.Host.Controllers.V1
- {
- [ApiVersion("1.0")]
- [Route("v{version:apiVersion}/patterns")]
- [ApiController]
- public class PatternsController : ControllerBase
- {
- private readonly IPatternService _patternService;
-
- public PatternsController(IPatternService patternService)
- {
- _patternService = patternService;
- }
-
- [HttpGet]
- public async Task<IActionResult> GetAll() =>
- Ok(await _patternService.GetAllAsync());
-
- [HttpGet("{id}")]
- public async Task<IActionResult> GetById([FromRoute] int id) =>
- Ok(await _patternService.GetByIdAsync(id));
-
- [HttpGet("filter")]
- public async Task<IActionResult> GetFilteredPatterns([FromQuery] FilterPatternDto request) =>
- Ok(await _patternService.GetFilteredPatternsAsync(request));
-
- [HttpGet("corresponding-pattern-applicants/{id}")]
- public async Task<IActionResult> GetFilteredPatterns([FromRoute] int id) =>
- Ok(await _patternService.GetCorrespondingPatternApplicants(id));
-
-
- [HttpPost]
- public async Task<IActionResult> Create([FromBody] PatternCreateDto request)
- {
- await _patternService.CreateAsync(request);
- return StatusCode((int)HttpStatusCode.Created);
- }
-
- [HttpPost("schedule-interview")]
- public async Task<IActionResult> ScheduleInterview([FromBody] ScheduleInterviewDto request)
- {
- var result = await _patternService.ScheduleIntrviewAsync(request);
-
- return Ok(result);
- }
-
- [HttpPut("{id}")]
- public async Task<IActionResult> Update([FromBody]PatternUpdateDto request, [FromRoute]int id)
- {
- await _patternService.UpdateAsync(request, id);
- return Ok();
- }
-
- [HttpDelete("{id}")]
- public async Task<IActionResult> DeletePattern([FromRoute] int id)
- {
- await _patternService.DeleteAsync(id);
- return NoContent();
- }
- }
- }
|