Skip to content
Snippets Groups Projects
Commit aceae806 authored by Enzo Santangelo Dodera's avatar Enzo Santangelo Dodera
Browse files

Merge branch 'feature/Activity-GetById' into 'develop'

add endpoint activity GetById

See merge request !48
parents 331c39d1 acebb09e
No related branches found
No related tags found
1 merge request!48add endpoint activity GetById
Pipeline #10667 passed
......@@ -36,6 +36,20 @@ namespace Tsi1.Api.Controllers
return Ok(result.Data);
}
[Authorize(Roles = UserTypes.FacultyAdmin + ", " + UserTypes.Professor + ", " + UserTypes.Student)]
[HttpGet("GetById/{activityId}")]
public async Task<IActionResult> GetById(int activityId)
{
var result = await _activityService.GetById(activityId);
if (result.HasError)
{
return BadRequest(result.Message);
}
return Ok(result.Data);
}
[Authorize(Roles = UserTypes.FacultyAdmin + ", " + UserTypes.Professor)]
[HttpPost("Create")]
public async Task<IActionResult> Create(ActivityCreateDto newActivity)
......
......@@ -15,5 +15,7 @@ namespace Tsi1.BusinessLayer.Dtos
public bool IsVideoConference { get; set; }
public int EvaluationId { get; set; }
public EvaluationDetailDto Evaluation { get; set; }
}
}
......@@ -15,6 +15,7 @@ namespace Tsi1.BusinessLayer.Interfaces
Task<ServiceResult<int>> Modify(int activityId, ActivityModifyDto activityDto, int userId);
Task<ServiceResult<int>> Delete(int activityId, int userId);
Task<ServiceResult<int>> ActivityValidation(int activityId, int userId);
Task<ServiceResult<int>> ActivityValidation(int activityId, int userId);
Task<ServiceResult<ActivityDto>> GetById(int activityId);
}
}
......@@ -266,5 +266,24 @@ namespace Tsi1.BusinessLayer.Services
return result;
}
public async Task<ServiceResult<ActivityDto>> GetById(int activityId)
{
var result = new ServiceResult<ActivityDto>();
var activity = await _context.Activities
.AsNoTracking()
.Include(x => x.Evaluation)
.FirstOrDefaultAsync(x => x.Id == activityId);
if (activity == null)
{
result.HasError = true;
result.AddMessage(string.Format(ErrorMessages.ActivityDoesNotExist, activityId));
return result;
}
result.Data = _mapper.Map<ActivityDto>(activity);
return result;
}
}
}
......@@ -337,7 +337,7 @@ namespace Tsi1.BusinessLayer.Services
return result;
}
if (evaluation.IsCompleted)
if (evaluation.Activity.Date < DateTime.Now)
{
result.HasError = true;
result.AddMessage(string.Format(ErrorMessages.EvaluationIsCompleted, evaluationId));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment