using Newtonsoft.Json;
namespace Admin.Core.Model.Output
{
///
/// 输出数据
///
public class ResponseOutput : IResponseOutput
{
///
/// 是否成功标记
///
[JsonIgnore]
public bool Success { get; private set; }
///
/// 状态码
///
public int Code => Success ? 1 : 0;
///
/// 消息
///
public string Msg { get; private set; }
///
/// 数据
///
public T Data { get; private set; }
///
/// 成功
///
/// 数据
/// 消息
public ResponseOutput Ok(T data, string msg = null)
{
Success = true;
Data = data;
Msg = msg;
return this;
}
///
/// 失败
///
/// 消息
/// 数据
///
public ResponseOutput NotOk(string msg = null, T data = default(T))
{
Success = false;
Msg = msg;
Data = data;
return this;
}
}
///
/// 输出数据静态类
///
public static partial class ResponseOutput
{
///
/// 成功
///
/// 数据
/// 消息
///
public static IResponseOutput Ok(T data = default(T), string msg = null)
{
return new ResponseOutput().Ok(data, msg);
}
///
/// 成功
///
///
public static IResponseOutput Ok()
{
return Ok();
}
///
/// 失败
///
/// 消息
/// 数据
///
public static IResponseOutput NotOk(string msg = null,T data = default(T))
{
return new ResponseOutput().NotOk(msg, data);
}
///
/// 失败
///
/// 消息
///
public static IResponseOutput NotOk(string msg = null)
{
return new ResponseOutput().NotOk(msg);
}
///
/// 根据布尔值返回结果
///
///
///
public static IResponseOutput Result(bool success)
{
return success ? Ok() : NotOk();
}
///
/// 根据布尔值返回结果
///
///
///
public static IResponseOutput Result(bool success)
{
return success ? Ok() : NotOk();
}
}
}