ApiResult.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. namespace IMCS.CCS.Model
  2. {
  3. /// <summary>
  4. /// Api 消息返回类
  5. /// </summary>
  6. public class ApiResult
  7. {
  8. public ApiResult(int code, string message, object data)
  9. {
  10. Code = code;
  11. Message = message;
  12. Data = data;
  13. }
  14. public int Code { get; set; }
  15. public string Message { get; set; }
  16. public object Data { get; set; }
  17. /// <summary>
  18. /// 消息返回码
  19. /// </summary>
  20. public enum ApiResultCodeEnum
  21. {
  22. /// <summary>
  23. /// 接口不存在
  24. /// </summary>
  25. NotFount = -3,
  26. /// <summary>
  27. /// 程序错误
  28. /// </summary>
  29. Error,
  30. /// <summary>
  31. /// 未授权
  32. /// </summary>
  33. UnAuth,
  34. /// <summary>
  35. /// 警告
  36. /// </summary>
  37. Warn,
  38. /// <summary>
  39. /// 成功
  40. /// </summary>
  41. Ok,
  42. }
  43. #region result
  44. /// <summary>
  45. /// 返回消息
  46. /// </summary>
  47. /// <param name="apiResultCodeEnum"></param>
  48. /// <param name="message"></param>
  49. /// <returns></returns>
  50. public static ApiResult ResultMessage(ApiResultCodeEnum apiResultCodeEnum, string message)
  51. => new ApiResult((int) apiResultCodeEnum, message, null);
  52. /// <summary>
  53. /// 返回数据
  54. /// </summary>
  55. /// <param name="apiResultCodeEnum"></param>
  56. /// <param name="data"></param>
  57. /// <returns></returns>
  58. public static ApiResult ResultData(ApiResultCodeEnum apiResultCodeEnum, object data)
  59. => new ApiResult((int) apiResultCodeEnum, null, data);
  60. /// <summary>
  61. /// 可返回消息和数据
  62. /// </summary>
  63. /// <param name="apiResultCodeEnum"></param>
  64. /// <param name="message"></param>
  65. /// <param name="data"></param>
  66. /// <returns></returns>
  67. public static ApiResult Result(ApiResultCodeEnum apiResultCodeEnum, string message, object data)
  68. => new ApiResult((int) apiResultCodeEnum, message, data);
  69. #endregion
  70. #region result code 可传入 int
  71. /// <summary>
  72. /// 返回消息
  73. /// </summary>
  74. /// <param name="code"></param>
  75. /// <param name="message"></param>
  76. /// <returns></returns>
  77. public static ApiResult ResultMessage(int code, string message)
  78. => new ApiResult(code, message, null);
  79. /// <summary>
  80. /// 返回数据
  81. /// </summary>
  82. /// <param name="code"></param>
  83. /// <param name="data"></param>
  84. /// <returns></returns>
  85. public static ApiResult ResultData(int code, object data)
  86. => new ApiResult(code, null, data);
  87. /// <summary>
  88. /// 可返回消息和数据
  89. /// </summary>
  90. /// <param name="code"></param>
  91. /// <param name="message"></param>
  92. /// <param name="data"></param>
  93. /// <returns></returns>
  94. public static ApiResult Result(int code, string message, object data)
  95. => new ApiResult(code, message, data);
  96. #endregion
  97. #region Ok
  98. /// <summary>
  99. /// 成功 可返回消息
  100. /// </summary>
  101. /// <param name="message"></param>
  102. /// <returns></returns>
  103. public static ApiResult OkMessage(string message)
  104. => ResultMessage(ApiResultCodeEnum.Ok, message);
  105. /// <summary>
  106. /// 成功 可返回数据
  107. /// </summary>
  108. /// <param name="data"></param>
  109. /// <returns></returns>
  110. public static ApiResult OkData(object data)
  111. => ResultData(ApiResultCodeEnum.Ok, data);
  112. /// <summary>
  113. /// 成功 可返回 消息和数据
  114. /// </summary>
  115. /// <param name="message"></param>
  116. /// <param name="data"></param>
  117. /// <returns></returns>
  118. public static ApiResult Ok(string message, object data)
  119. => Result(ApiResultCodeEnum.Ok, message, data);
  120. #endregion
  121. #region warn
  122. /// <summary>
  123. /// 警告 可返回消息
  124. /// </summary>
  125. /// <param name="message"></param>
  126. /// <returns></returns>
  127. public static ApiResult WarnMessage(string message)
  128. => ResultMessage(ApiResultCodeEnum.Warn, message);
  129. /// <summary>
  130. /// 警告 可返回数据
  131. /// </summary>
  132. /// <param name="data"></param>
  133. /// <returns></returns>
  134. public static ApiResult WarnData(object data)
  135. => ResultData(ApiResultCodeEnum.Warn, data);
  136. /// <summary>
  137. /// 警告 可返回 消息和数据
  138. /// </summary>
  139. /// <param name="message"></param>
  140. /// <param name="data"></param>
  141. /// <returns></returns>
  142. public static ApiResult Warn(string message, object data)
  143. => Result(ApiResultCodeEnum.Warn, message, data);
  144. #endregion
  145. }
  146. }