From 52e9cb7de946d7ab04e43e98733e26531a645bb2 Mon Sep 17 00:00:00 2001 From: "ashutosh.nehete" Date: Wed, 14 May 2025 15:38:47 +0530 Subject: [PATCH] Added Directory controller file --- .../Controllers/DirectoryController.cs | 335 +----------------- 1 file changed, 2 insertions(+), 333 deletions(-) diff --git a/Marco.Pms.Services/Controllers/DirectoryController.cs b/Marco.Pms.Services/Controllers/DirectoryController.cs index 2bf22ea..77a183c 100644 --- a/Marco.Pms.Services/Controllers/DirectoryController.cs +++ b/Marco.Pms.Services/Controllers/DirectoryController.cs @@ -1,341 +1,10 @@ -using Marco.Pms.Model.Dtos.Directory; -using Marco.Pms.Model.Utilities; -using Marco.Pms.Services.Helpers; -using MarcoBMS.Services.Service; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Mvc; namespace Marco.Pms.Services.Controllers { - [ApiController] [Route("api/[controller]")] - [Authorize] - + [ApiController] public class DirectoryController : ControllerBase { - - private readonly DirectoryHelper _directoryHelper; - private readonly ILoggingService _logger; - - - public DirectoryController(DirectoryHelper directoryHelper, ILoggingService logger) - { - _directoryHelper = directoryHelper; - _logger = logger; - } - - [HttpGet] - public async Task GetContactList([FromQuery] string? search, [FromQuery] List? bucketIds, [FromQuery] List? categoryIds, [FromQuery] Guid? projectId, [FromQuery] bool active = true) - { - ContactFilterDto filterDto = new ContactFilterDto - { - BucketIds = bucketIds, - CategoryIds = categoryIds - }; - var response = await _directoryHelper.GetListOfContacts(search, active, filterDto, projectId); - - - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - - } - - [HttpGet("contact-bucket/{bucketId}")] - public async Task GetContactsListByBucketId(Guid bucketId) - { - var response = await _directoryHelper.GetContactsListByBucketId(bucketId); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } - - [HttpPost] - public async Task CreateContact([FromBody] CreateContactDto createContact) - { - if (!ModelState.IsValid) - { - var errors = ModelState.Values - .SelectMany(v => v.Errors) - .Select(e => e.ErrorMessage) - .ToList(); - _logger.LogError("User sent Invalid Date while marking attendance"); - return BadRequest(ApiResponse.ErrorResponse("Invalid data", errors, 400)); - } - var response = await _directoryHelper.CreateContact(createContact); - if (response.StatusCode == 200) - { - return Ok(response); - } - else - { - return BadRequest(response); - } - } - - [HttpPut("{id}")] - public async Task UpdateContact(Guid id, [FromBody] UpdateContactDto updateContact) - { - var response = await _directoryHelper.UpdateContact(id, updateContact); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } - - [HttpGet("profile/{id}")] - public async Task GetContactProfile(Guid id) - { - var response = await _directoryHelper.GetContactProfile(id); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else - { - return BadRequest(response); - } - } - - [HttpGet("organization")] - public async Task GetOrganizationList() - { - var response = await _directoryHelper.GetOrganizationList(); - return Ok(response); - } - - [HttpDelete("{id}")] - public async Task DeleteContact(Guid id, [FromQuery] bool? active) - { - var response = await _directoryHelper.DeleteContact(id, active ?? false); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else - { - return BadRequest(response); - } - } - - // -------------------------------- Contact Notes -------------------------------- - - [HttpPost("note")] - public async Task CreateContactNote([FromBody] CreateContactNoteDto noteDto) - { - - var response = await _directoryHelper.CreateContactNote(noteDto); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else - { - return BadRequest(response); - } - } - - [HttpGet("notes/{ContactId}")] - public async Task GetNoteListByContactId(Guid contactId, [FromQuery] bool active = true) - { - var response = await _directoryHelper.GetNoteListByContactId(contactId, active); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else - { - return BadRequest(response); - } - } - - [HttpPut("note/{id}")] - public async Task UpdateContactNote(Guid id, [FromBody] UpdateContactNoteDto noteDto) - { - var response = await _directoryHelper.UpdateContactNote(id, noteDto); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else - { - return BadRequest(response); - } - } - - [HttpDelete("note/{id}")] - public async Task DeleteContactNote(Guid id, [FromQuery] bool? active) - { - var response = await _directoryHelper.DeleteContactNote(id, active ?? false); - return Ok(response); - } - - // -------------------------------- Bucket -------------------------------- - - [HttpGet("buckets")] - public async Task GetBucketList() - { - var response = await _directoryHelper.GetBucketList(); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } - - [HttpPost("bucket")] - public async Task CreateBucket(CreateBucketDto bucketDto) - { - if (!ModelState.IsValid) - { - var errors = ModelState.Values - .SelectMany(v => v.Errors) - .Select(e => e.ErrorMessage) - .ToList(); - _logger.LogError("User sent Invalid Date while marking attendance"); - return BadRequest(ApiResponse.ErrorResponse("Invalid data", errors, 400)); - } - var response = await _directoryHelper.CreateBucket(bucketDto); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 409) - { - return Conflict(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - - } - - [HttpPut("bucket/{id}")] - public async Task UpdateBucket(Guid id, [FromBody] UpdateBucketDto bucketDto) - { - var response = await _directoryHelper.UpdateBucket(id, bucketDto); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } - - [HttpPost("assign-bucket/{bucketId}")] - public async Task AssignBucket(Guid bucketId, [FromBody] List assignBuckets) - { - var response = await _directoryHelper.AssignBucket(bucketId, assignBuckets); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } - - [HttpDelete("bucket/{id}")] - public async Task DeleteBucket(Guid id) - { - var response = await _directoryHelper.DeleteBucket(id); - if (response.StatusCode == 200) - { - return Ok(response); - } - else if (response.StatusCode == 404) - { - return NotFound(response); - } - else if (response.StatusCode == 401) - { - return Unauthorized(response); - } - else - { - return BadRequest(response); - } - } } }