Files
Gatedge.NewOrientLandMark.BOS/Gatedge.ScanCode/Common/AjaxResult.cs

185 lines
5.1 KiB
C#
Raw Normal View History

2025-11-18 17:43:12 +08:00
namespace Gatedge.ScanCode.Common
{
/// <summary>
/// 通用返回类
/// </summary>
public class AjaxResult : Dictionary<string, object>
{
/// <summary>
/// 状态码
/// </summary>
public static string CODE_TAG = "code";
/// <summary>
/// 返回内容
/// </summary>
public static string MSG_TAG = "msg";
/// <summary>
/// 数据对象
/// </summary>
public static string DATA_TAG = "data";
/// <summary>
/// 单据类型Id
/// </summary>
public static string BILLID_TAG = "billId";
/// <summary>
/// 初始化一个新创建的 AjaxResult 对象,使其表示一个空消息。
/// </summary>
public AjaxResult()
{
}
/// <summary>
/// 初始化一个新创建的 AjaxResult 对象
/// </summary>
/// <param name="code"></param>
/// <param name="msg"></param>
public AjaxResult(int code, string msg)
{
Add(CODE_TAG, code);
Add(MSG_TAG, msg);
}
/// <summary>
/// 初始化一个新的带数据的 AjaxResult 对象
/// </summary>
/// <param name="code"></param>
/// <param name="msg"></param>
/// <param name="data"></param>
public AjaxResult(int code, string msg, object? data)
{
Add(CODE_TAG, code);
Add(MSG_TAG, msg);
Add(DATA_TAG, data);
}
/// <summary>
/// 返回一个成功响应对象
/// </summary>
/// <returns></returns>
public static AjaxResult Success()
{
return Success("操作成功");
}
/// <summary>
/// 返回一个带消息成功响应对象
/// </summary>
/// <returns></returns>
public static AjaxResult Success(object data)
{
return Success("操作成功", data);
}
/// <summary>
/// 返回一个带消息和数据的响应对象
/// </summary>
/// <param name="msg"></param>
/// <param name="data"></param>
/// <returns></returns>
public static AjaxResult Success(string msg, object data)
{
return new AjaxResult(HttpStatus.SUCCESS, msg, data);
}
/// <summary>
/// 返回一个带消息的警告响应对象
/// </summary>
/// <param name="msg"></param>
/// <returns></returns>
public static AjaxResult Warn(string msg)
{
return Warn(msg, null);
}
/// <summary>
/// 返回一个带消息和数据的警告响应对象
/// </summary>
/// <param name="msg"></param>
/// <param name="data"></param>
/// <returns></returns>
public static AjaxResult Warn(string msg, object? data)
{
return new AjaxResult(HttpStatus.WARN, msg, data);
}
/// <summary>
/// 返回一个错误响应对象
/// </summary>
/// <returns></returns>
public static AjaxResult Error()
{
return Error("操作失败");
}
/// <summary>
/// 返回一个带消息的错误响应对象
/// </summary>
/// <param name="msg"></param>
/// <returns></returns>
public static AjaxResult Error(string msg)
{
return Error(msg, null);
}
/// <summary>
/// 返回一个带消息和数据的响应对象
/// </summary>
/// <param name="msg"></param>
/// <param name="data"></param>
/// <returns></returns>
public static AjaxResult Error(string msg, object? data)
{
return new AjaxResult(HttpStatus.ERROR, msg, data);
}
/// <summary>
/// 返回一个带错误代码和消息的错误响应对象
/// </summary>
/// <param name="code"></param>
/// <param name="msg"></param>
/// <returns></returns>
public static AjaxResult Error(int code, string msg)
{
return new AjaxResult(code, msg, null);
}
/// <summary>
/// 检查是否成功
/// </summary>
/// <returns></returns>
public bool IsSuccess()
{
return HttpStatus.SUCCESS == Convert.ToInt32(this[CODE_TAG]);
}
/// <summary>
/// 检查是否警告
/// </summary>
/// <returns></returns>
public bool IsWarn()
{
return HttpStatus.WARN == Convert.ToInt32(this[CODE_TAG]);
}
/// <summary>
/// 检查是否错误
/// </summary>
/// <returns></returns>
public bool IsError()
{
return HttpStatus.ERROR == Convert.ToInt32(this[CODE_TAG]);
}
/// <summary>
/// 添加BillId
/// </summary>
public AjaxResult AddBillId(string billId)
{
Add(BILLID_TAG, billId);
return this;
}
}
}