OrderState.java 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package com.goafanti.common.enums;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import org.apache.commons.lang3.StringUtils;
  5. public enum OrderState {
  6. UNPAYED(0, "未支付"), PAYED(1, "已支付");
  7. private OrderState(Integer code, String desc) {
  8. this.code = code;
  9. this.desc = desc;
  10. }
  11. private static Map<Integer, OrderState> status = new HashMap<Integer, OrderState>();
  12. static {
  13. for (OrderState value : OrderState.values()) {
  14. status.put(value.getCode(), value);
  15. }
  16. }
  17. public static OrderState getStatus(Integer code) {
  18. if (containsType(code)) {
  19. return status.get(code);
  20. }
  21. return null;
  22. }
  23. public static OrderState getStatus(String code) {
  24. if (StringUtils.isNumeric(code)) {
  25. return getStatus(Integer.parseInt(code));
  26. }
  27. return null;
  28. }
  29. public static boolean containsType(Integer code) {
  30. return status.containsKey(code);
  31. }
  32. private Integer code;
  33. private String desc;
  34. public Integer getCode() {
  35. return code;
  36. }
  37. public String getDesc() {
  38. return desc;
  39. }
  40. }