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