57 lines
1.9 KiB
C#
57 lines
1.9 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using IRaCIS.Application.Interfaces;
|
||
using IRaCIS.Application.ViewModels;
|
||
using IRaCIS.Core.Application.Contracts.RequestAndResponse;
|
||
using Microsoft.AspNetCore.Authorization;
|
||
using Microsoft.AspNetCore.Mvc;
|
||
|
||
namespace IRaCIS.Api.Controllers
|
||
{
|
||
[Route("cro")]
|
||
[ApiController, Authorize, ApiExplorerSettings(GroupName = "Institution")]
|
||
public class CROController : ControllerBase
|
||
{
|
||
private readonly ICroService _croService;
|
||
|
||
public CROController(ICroService croCompanyService)
|
||
{
|
||
_croService = croCompanyService;
|
||
}
|
||
|
||
/// <summary> 分页获取CRO列表 </summary>
|
||
|
||
[HttpPost, Route("getCROPageList")]
|
||
public IResponseOutput<PageOutput<CROCompanyDTO>> GetCROCompanyList(CROCompanyQueryDTO croCompanySearchModel)
|
||
{
|
||
return ResponseOutput.Ok(_croService.GetCroList(croCompanySearchModel));
|
||
}
|
||
|
||
/// <summary> 获取所有CRO列表,可根据名称搜索[AUTH] </summary>
|
||
|
||
|
||
[HttpPost, Route("getAllCROList")]
|
||
public IResponseOutput<IEnumerable<CroSelectDTO>> GetCROCompanySearchList()
|
||
{
|
||
return ResponseOutput.Ok(_croService.GetCroSearchList());
|
||
|
||
}
|
||
|
||
/// <summary> 添加CRO[AUTH] </summary>
|
||
|
||
[HttpPost, Route("addOrUpdateCro")]
|
||
public IResponseOutput AddCROCompany(CROCompanyDTO addCroCompanyViewModel)
|
||
{
|
||
var userId = User.FindFirst("id").Value;
|
||
return _croService.AddOrUpdateCro(addCroCompanyViewModel, Guid.Parse(userId));
|
||
}
|
||
/// <summary> 删除CRO </summary>
|
||
|
||
[HttpDelete, Route("deleteCROCompany/{croCompanyId:guid}")]
|
||
public IResponseOutput DeleteCROCompany(Guid croCompanyId)
|
||
{
|
||
return _croService.DeleteCro(croCompanyId);
|
||
}
|
||
}
|
||
}
|