namespace Tiobon.Core.Api.Controllers;

/// <summary>
/// 问卷题库(Controller)
/// </summary>
[Route("api/[controller]")]
[ApiController, GlobalActionFilter]
[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghre)]
public class Ghre_SurveyQuestionPoolController : BaseController<IGhre_SurveyQuestionPoolServices, Ghre_SurveyQuestionPool, Ghre_SurveyQuestionPoolDto, InsertGhre_SurveyQuestionPoolInput, EditGhre_SurveyQuestionPoolInput>
{
    public Ghre_SurveyQuestionPoolController(IGhre_SurveyQuestionPoolServices service) : base(service)
    {
    }


    #region 基础接口
    #region 查询

    /// <summary>
    /// 根据Id查询数据
    /// </summary>
    /// <param name="Id"></param>
    /// <returns></returns>
    [HttpPost("QueryForm/{Id}")]
    public async Task<ServiceResult<FromGhre_SurveyQuestionPoolInput>> QueryFrom(long Id)
    {
        return await _service.QueryFrom(Id);
    }
    #endregion

    #region 新增
    /// <summary>
    /// 新增数据
    /// </summary>
    /// <param name="insertModel"></param>
    /// <returns></returns>
    [HttpPost("InsertForm")]
    public async Task<ServiceResult> InsertFrom([FromBody] FromGhre_SurveyQuestionPoolPageData insertModel)
    {
        return await _service.InsertFrom(insertModel);
    }
    #endregion

    #region 更新
    /// <summary>
    /// 更新数据
    /// </summary>
    /// <param name="Id">主键ID</param>
    /// <param name="editModel"></param>
    /// <returns></returns>

    [HttpPost("UpdateForm/{Id}")]
    public async Task<ServiceResult> UpdateFrom(long Id, [FromBody] FromGhre_SurveyQuestionPoolPageData editModel)
    {
        return await _service.UpdateFrom(Id, editModel);
    }
    #endregion

    #endregion

}