using System; 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("doctor")] [ApiController, Authorize, ApiExplorerSettings(GroupName = "Reviewer")] public class EducationController : ControllerBase { private readonly IEducationService _doctorEducationService; public EducationController(IEducationService doctorEducationService) { _doctorEducationService = doctorEducationService; } /// /// 根据医生Id获取医生教育经历和继续学习经历列表 /// [HttpGet, Route("getEducation/{doctorId:Guid}")] public IResponseOutput GetDoctorEducationList(Guid doctorId) { return ResponseOutput.Ok(_doctorEducationService.GetEducation(doctorId)) ; } #region 教育经历 /// /// 新增医生教育经历 /// /// /// [HttpPost, Route("addOrUpdateEducationInfo")] public IResponseOutput AddEducationInfo(EducationCommand doctorEducationInfoViewModel) { return _doctorEducationService.AddOrUpdateEducationInfo(doctorEducationInfoViewModel); } /// /// 删除医生教育经历 /// /// 医生Id /// [HttpDelete, Route("deleteEducationInfo/{doctorId:guid}")] public IResponseOutput DeleteEducationInfo(Guid doctorId) { return _doctorEducationService.DeleteEducationInfo(doctorId); } #endregion #region 继续学习经历 /// 添加/更新医生继续学习经历 [HttpPost, Route("addOrUpdatePostgraduateInfo")] public IResponseOutput AddPostgraduateInfo(PostgraduateCommand doctorEducationInfoViewModel) { return _doctorEducationService.AddOrUpdatePostgraduateInfo(doctorEducationInfoViewModel); } /// /// 删除医生继续学习经历 /// /// 医生Id /// [HttpDelete, Route("deletePostgraduateInfo/{doctorId:guid}")] public IResponseOutput DeleteContinueLearningInfo(Guid doctorId) { return _doctorEducationService.DeletePostgraduateInfo(doctorId); } #endregion } }