Files
zszq-trs/Framework/SharedWebApi/BaseApiController.cs
T
2024-05-09 14:06:26 +08:00

111 lines
3.0 KiB
C#

using System.Collections;
using System.Data;
using YLErp;
namespace YLWebAPI.ApiModule
{
[ApiController]
public abstract class BaseApiController : ControllerBase
{
OptUserInfo _userInfo;
protected OptUserInfo CurUser
{
get
{
if (_userInfo != null)
{
return _userInfo;
}
if (User.Identity is OptUserInfo userInfo)
{
return _userInfo = userInfo;
}
return OptUserInfo.SystemUser;
}
}
#region----JSON消息处理----
/// <summary>
/// 处理成功后返回的json消息
/// </summary>
protected ApiResponseModel JsonSuccessInfo(string message)
{
return new ApiResponseModel { errcode = 0, errmsg = message };
}
/// <summary>
/// 处理成功后返回的json数据
/// </summary>
protected ApiResponseModel JsonSuccess()
{
return new ApiResponseModel { errcode = 0, errmsg = string.Empty };
}
/// <summary>
/// 处理成功后返回的json数据
/// </summary>
protected ApiResponseModel JsonSuccess(object data, string message = null)
{
return new ApiResponseModel { errcode = 0, errmsg = message, data = data };
}
/// <summary>
/// 处理错误时返回的json消息
/// </summary>
protected ApiResponseModel JsonError(string errmsg)
{
return new ApiResponseModel { errcode = 1, errmsg = errmsg };
}
/// <summary>
/// 处理错误时返回的json消息
/// </summary>
protected ApiResponseModel JsonError(int errcode, string errmsg)
{
return new ApiResponseModel { errcode = errcode, errmsg = errmsg };
}
/// <summary>
/// 处理错误时返回的json消息
/// </summary>
protected ApiResponseModel JsonError(Exception ex)
{
return new ApiResponseModel { errcode = 1, errmsg = "发生错误!" + ex.Message };
}
/// <summary>
/// 返回的分页json数据
/// </summary>
protected ApiResponseModel JsonPagedList(int pageIndex, int totalCount, IEnumerable rows)
{
return new ApiResponseModel
{
data = new { page = pageIndex, total = totalCount, rows }
};
}
/// <summary>
/// 返回的分页json数据
/// </summary>
protected ApiResponseModel JsonPagedList<T>(IPagedList<T> pagedList)
{
return new ApiResponseModel
{
data = new
{
page = pagedList.PageIndex,
total = pagedList.TotalCount,
rows = pagedList.Items,
totalPages = pagedList.TotalPages()
}
};
}
#endregion
}
}