using LFlow.Base.Utils;
using Microsoft.AspNetCore.Mvc;
namespace LFlow.Base.Interfaces;
///
/// 基础控制器
///
/// Route("api/[controller]/[action]") ApiController
[Route("api/[controller]/[action]")]
[ApiController]
public abstract class BaseController : ControllerBase, IController
{
///
/// 成功返回
///
///
///
///
protected virtual ApiResult Success(T? data) where T : class, new()
{
return ApiResult.SuccessResult(data);
}
///
/// 成功返回(分页)
///
///
///
///
///
///
///
protected virtual PagedApiResult Success(T? data, int totalCount, int pageIndex, int pageSize) where T : class, new()
{
return PagedApiResult.SuccessResult(data, totalCount, pageIndex, pageSize);
}
///
/// 失败返回
///
///
///
///
///
///
protected virtual ApiResult Fail(T? data, string errorMsg, int errCode) where T : class, new()
{
return ApiResult.FailResult(errorMsg, errCode);
}
///
/// 失败返回(分页)
///
///
///
///
///
///
protected virtual PagedApiResult? PagedFail(T? data, string errorMsg, int errCode) where T : class, new()
{
return PagedApiResult.FailResult(errorMsg, errCode);
}
}