using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
|
namespace IStation.Dto
|
{
|
/// <summary>
|
/// 执行返回的通用类,该类带有详细的业务数据,除了告诉用户此次调用是否成功与否,以及一个表示提示信息的字符串外,还带的详细的业务数据
|
/// </summary>
|
/// <typeparam name="T">业务数据的类型</typeparam>
|
public class ApiResult_PageList<T> : ApiResult
|
{
|
/// <summary>
|
/// 业务数据
|
/// </summary>
|
public List<T> Data { get; set; }
|
|
/// <summary>
|
/// 总条数
|
/// </summary>
|
public long Count { get; set; }
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public ApiResult_PageList() { }
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="type">状态标识</param>
|
/// <param name="message">提示信息</param>
|
public ApiResult_PageList(IEnumerable<T> data, ApiResultCode type, string message)
|
: base(type, message)
|
{
|
this.Data = data.ToList();
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
/// <summary>
|
/// /
|
/// </summary>
|
/// <param name="data"></param>
|
public ApiResult_PageList(IEnumerable<T> data)
|
: base(ApiResultCode.Success, "")
|
{
|
this.Data = data.ToList();
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="data"></param>
|
public ApiResult_PageList(T data)
|
: base(ApiResultCode.Success, "")
|
{
|
this.Data = new List<T> { data };
|
this.Count = 1;
|
}
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="message">提示信息</param>
|
public ApiResult_PageList(IEnumerable<T> data, string message)
|
{
|
this.Data = data.ToList();
|
this.Code = string.IsNullOrEmpty(message) ? ApiResultCode.Success : ApiResultCode.Error;
|
this.Message = message;
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="count">总长 可能和data的数据长度不一样</param>
|
public ApiResult_PageList(IEnumerable<T> data, int count)
|
{
|
this.Count = count;
|
if (data == null)
|
return;
|
this.Data = data.ToList();
|
}
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="count">总长 可能和data的数据长度不一样</param>
|
public ApiResult_PageList(IEnumerable<T> data, long count)
|
{
|
this.Count = count;
|
if (data == null)
|
return;
|
this.Data = data.ToList();
|
}
|
}
|
|
|
|
}
|