irc-netcore-api/IRaCIS.Core.Application/Service/Doctor/ResearchPublicationService.cs

41 lines
1.5 KiB
C#

using IRaCIS.Application.Interfaces;
using IRaCIS.Application.Contracts;
using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class ResearchPublicationService : BaseService, IResearchPublicationService
{
private readonly IRepository<ResearchPublication> researchPublicationRepository;
public ResearchPublicationService(IRepository<ResearchPublication> _researchPublicationRepository)
{
researchPublicationRepository = _researchPublicationRepository;
}
/// <summary>
/// 查询-医生科学研究信息
/// </summary>
/// <param name="doctorId">医生Id</param>
/// <returns></returns>
[HttpGet("{doctorId:guid}")]
public async Task<ResearchPublicationDTO> GetResearchPublication(Guid doctorId)
{
var doctorScientificResearchInfo = await researchPublicationRepository.Where(o => o.DoctorId == doctorId)
.ProjectTo<ResearchPublicationDTO>(_mapper.ConfigurationProvider).FirstOrDefaultAsync();
return doctorScientificResearchInfo;
}
[HttpPost]
public async Task<IResponseOutput> AddOrUpdateResearchPublication(ResearchPublicationDTO param)
{
var entity = await _repository.InsertOrUpdateAsync<ResearchPublication, ResearchPublicationDTO>(param, true);
return ResponseOutput.Ok(entity.Id);
}
}
}