RoleEnum.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. package com.boman.domain;
  2. import java.util.*;
  3. import java.util.stream.Collectors;
  4. /**
  5. * @author tjf
  6. * @Date: 2021/04/22/15:16
  7. */
  8. public enum RoleEnum {
  9. /** 新增 */
  10. A("A","新增"),
  11. /** 修改 */
  12. M("M","修改"),
  13. /** 删除 */
  14. D("D","删除"),
  15. /** 查询 */
  16. Q("Q","查询"),
  17. /** 提交 */
  18. S("S","提交"),
  19. /** 反提交 */
  20. U("U","反提交"),
  21. /** 导入 */
  22. I("I","导入"),
  23. /** 导出 */
  24. E("E","导出");
  25. private final String role;
  26. private final String name;
  27. RoleEnum(String role, String name) {
  28. this.role = role;
  29. this.name = name;
  30. }
  31. public String getRole() {
  32. return role;
  33. }
  34. public String getName() {
  35. return name;
  36. }
  37. /**
  38. *
  39. * @param role
  40. * @return
  41. */
  42. public static String getValue(String role) {
  43. if(null != role){
  44. for(RoleEnum roleEnum : RoleEnum.values()){
  45. if(role.equals(roleEnum.getRole())){
  46. return roleEnum.getName();
  47. }
  48. }
  49. }
  50. return null;
  51. }
  52. /**
  53. * 功能描述: 拿到所有的名称 eg: 新增、修改.....
  54. *
  55. * @param
  56. * @return java.util.List<java.lang.String>
  57. */
  58. public static List<String> names(){
  59. RoleEnum[] values = RoleEnum.values();
  60. return Arrays.stream(values).map(RoleEnum::getName).collect(Collectors.toList());
  61. }
  62. /**
  63. * 功能描述: 拿到所有的roles, 顺序很重要
  64. * eg: A、M.....
  65. *
  66. * @return java.util.List<java.lang.String>
  67. */
  68. public static List<String> roles(){
  69. RoleEnum[] values = RoleEnum.values();
  70. return Arrays.stream(values).map(RoleEnum::getRole).collect(Collectors.toList());
  71. }
  72. /**
  73. * 功能描述: 拿到所有的roles eg: A、M.....
  74. *
  75. * @return java.util.List<java.lang.String>
  76. */
  77. public static List<Map<String, String>> all() {
  78. RoleEnum[] values = RoleEnum.values();
  79. List<Map<String, String>> result = new ArrayList<>(values.length);
  80. for (RoleEnum value : values) {
  81. Map<String, String> map = new HashMap<>(2);
  82. map.put("name", value.name);
  83. map.put("role", value.role);
  84. result.add(map);
  85. }
  86. return result;
  87. }
  88. }