ApiResult.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Threading.Tasks;
  5. namespace Ropin.Inspection.Api.Common
  6. {
  7. public enum ReturnCode
  8. {
  9. ArgsError = -1001,
  10. LoginError = -1002,
  11. GeneralError = -1003,
  12. LoginPriv = -1004,
  13. TokenError = 401,
  14. ResultError = 402,
  15. PasswordLogin = 2,
  16. ProcedureSuccess = 1,
  17. Success = 0,
  18. DataError = -1,
  19. }
  20. public class ApiResult
  21. {
  22. private static readonly Dictionary<ReturnCode, string> codeMessageDict = new Dictionary<ReturnCode, string>() { { ReturnCode.Success, "操作成功。" },
  23. { ReturnCode.ArgsError, "参数错误。" },
  24. { ReturnCode.GeneralError, "操作错误。" },
  25. { ReturnCode.LoginError, "用户名或密码错误。" },
  26. { ReturnCode.PasswordLogin, "后台未绑定,手机密码登录。" },
  27. { ReturnCode.DataError, "返回数据为空。" },
  28. { ReturnCode.LoginPriv, "用户没有权限。" } };
  29. public ApiResult(ReturnCode returnCode = ReturnCode.Success, string msg = null)
  30. {
  31. Code = returnCode;
  32. Message = msg ?? (codeMessageDict[returnCode] ?? "未知错误。");
  33. }
  34. public ReturnCode Code { get; set; }
  35. public string Message { get; set; }
  36. }
  37. public class ApiResult<T> : ApiResult
  38. {
  39. public ApiResult(T data, ReturnCode returnCode = ReturnCode.Success, string msg = null) : base(returnCode, msg)
  40. {
  41. Data = data;
  42. }
  43. public T Data { get; set; }
  44. }
  45. }