69 lines
2.5 KiB
C#
69 lines
2.5 KiB
C#
using IRaCIS.Application.Interfaces;
|
|
using IRaCIS.Application.ViewModels;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using IRaCIS.Core.Application.Contracts.RequestAndResponse;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using IRaCIS.Core.Application.Contracts.Trial;
|
|
|
|
namespace IRaCIS.Api.Controllers
|
|
{
|
|
/// <summary>
|
|
/// 受试者访视
|
|
/// </summary>
|
|
[Route("subjectVisit")]
|
|
[ApiController, Authorize, ApiExplorerSettings(GroupName = "Trial")]
|
|
public class SubjectVisitController : ControllerBase
|
|
{
|
|
private readonly ISubjectVisitService _subjectvisitService;
|
|
public SubjectVisitController(ISubjectVisitService subjectvisitService)
|
|
{
|
|
_subjectvisitService = subjectvisitService;
|
|
}
|
|
|
|
[HttpPost, Route("getVisitList")]
|
|
public IResponseOutput<PageOutput<SubjectVisitNewDTO>> GetVisitList(SubjectVisitSearchDTO subjectVisitSearch)
|
|
{
|
|
return ResponseOutput.Ok(_subjectvisitService.GetVisitList(subjectVisitSearch));
|
|
}
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("addOrUpdate")]
|
|
public IResponseOutput AddOrUpdateSV(SubjectVisitCommand model)
|
|
{
|
|
return ResponseOutput.Ok(_subjectvisitService.AddOrUpdateSV(model));
|
|
}
|
|
|
|
/// <summary> 删除受试者访视</summary>
|
|
[HttpDelete, Route("delete/{id:guid}")]
|
|
public IResponseOutput DeleteSV(Guid id)
|
|
{
|
|
return _subjectvisitService.DeleteSV(id);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 上传影像时 需要选择是属于 受试者访视那个阶段
|
|
/// </summary>
|
|
/// <param name="trialId"></param>
|
|
/// <param name="siteId"></param>
|
|
/// <param name="subjectId"></param>
|
|
/// <returns></returns>
|
|
[HttpGet, Route("getSubjectVisitSelectList/{trialId:guid}/{siteId:guid}/{subjectId:guid}")]
|
|
public IResponseOutput<List<SubjectVisitSelectDTO>> GetSubjectVisitSelectList(Guid trialId, Guid siteId, Guid subjectId)
|
|
{
|
|
return ResponseOutput.Ok(_subjectvisitService.GetSubjectVisitSelectList(trialId, siteId,subjectId));
|
|
}
|
|
|
|
[HttpGet, Route("getSubjectVisitList/{trialId:guid}/{subjectId:guid}")]
|
|
public IResponseOutput<IEnumerable<SubjectVisitDTO>> GetSubjectVisitList(Guid trialId, Guid subjectId)
|
|
{
|
|
return ResponseOutput.Ok(_subjectvisitService.GetSubjectVisitList(trialId, subjectId));
|
|
}
|
|
|
|
}
|
|
}
|