using IRaCIS.Application.Interfaces; using IRaCIS.Application.ViewModels; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using IRaCIS.Core.Application.Contracts.RequestAndResponse; namespace IRaCIS.Api.Controllers { /// /// 访视计划 /// [Route("visitPlan")] [ApiController, Authorize, ApiExplorerSettings(GroupName = "Trial")] public class VisitPlanController : ControllerBase { private readonly IVisitPlanService _visitPlanService; public VisitPlanController(IVisitPlanService visitPlanService) { _visitPlanService = visitPlanService; } /// 分页获取项目访视计划[New] [HttpPost, Route("getTrialVisitStageList")] [ApiExplorerSettings(IgnoreApi = true)] public IResponseOutput> GetTrialVisitStageList(VisitPlanQueryDTO param) { return ResponseOutput.Ok(_visitPlanService.GetTrialVisitStageList(param)); } /// 根据项目Id,获取项目访视计划(不分页)[New] [HttpGet, Route("getVisitStageList/{trialId:guid}")] public IResponseOutput> GetVisitStageList(Guid trialId) { return ResponseOutput.Ok(_visitPlanService.GetVisitStageList(trialId)) ; } /// /// 获取访视计划下拉框列表 /// /// /// [HttpGet, Route("getTrialVisitStageSelect/{trialId:guid}")] public IResponseOutput> GetTrialVisitStageSelect(Guid trialId) { return ResponseOutput.Ok(_visitPlanService.GetTrialVisitStageSelect(trialId)); } /// 添加或更新访视计划某项[New] [HttpPost, Route("addOrUpdateVisitStage")] public IResponseOutput AddOrUpdateVisitStage(VisitPlanCommand param) { return _visitPlanService.AddOrUpdateVisitStage(param); } /// 删除项目计划某一项[New] [HttpDelete, Route("deleteVisitStage/{id:guid}")] public IResponseOutput DeleteVisitStage(Guid id) { return _visitPlanService.DeleteVisitStage(id); } } }