ImageResolutionRate.java 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package com.fdkanfang.common.enums;
  2. import io.swagger.models.auth.In;
  3. import org.apache.commons.lang3.StringUtils;
  4. /**
  5. * @author abnerhou
  6. * @date 2020/7/23 15:29
  7. * @desciption
  8. */
  9. public enum ImageResolutionRate {
  10. //最长的边不超过了8K=8192
  11. ONE_K(0 ,8192,"1K分辨率" , 1),
  12. //最长的边像素点不超过16K=16384,但是超过了4K=8192
  13. TWO_K(8192 ,16384,"2K分辨率" , 2),
  14. //最长的边像素点超过16K=16384
  15. FOUR_K(16384 , 999999999,"4K分辨率" , 3),
  16. ;
  17. private Integer rateStart;
  18. private Integer rateEnd;
  19. private String desc;
  20. private Integer order;
  21. ImageResolutionRate(Integer rateStart, Integer rateEnd, String desc, Integer order) {
  22. this.rateStart = rateStart;
  23. this.rateEnd = rateEnd;
  24. this.desc = desc;
  25. this.order = order;
  26. }
  27. public static ImageResolutionRate getResolutionRateByRate(Integer rate){
  28. if(null == rate){
  29. return null;
  30. }
  31. if(rate.compareTo(ONE_K.getRateStart()) >= 0 && rate.compareTo(ONE_K.getRateEnd()) < 0){
  32. return ONE_K;
  33. }else if(rate.compareTo(TWO_K.getRateStart()) >= 0 && rate.compareTo(TWO_K.getRateEnd()) < 0){
  34. return TWO_K;
  35. }else if(rate.compareTo(FOUR_K.getRateStart()) >= 0 && rate.compareTo(FOUR_K.getRateEnd()) < 0){
  36. return FOUR_K;
  37. }
  38. return null;
  39. }
  40. public static ImageResolutionRate getResolutionByName(String name){
  41. if(StringUtils.isBlank(name)){
  42. return null;
  43. }
  44. for (ImageResolutionRate resolutionRate : values()){
  45. if(StringUtils.equals(name , resolutionRate.name())){
  46. return resolutionRate;
  47. }
  48. }
  49. return null;
  50. }
  51. public Integer getRateStart() {
  52. return rateStart;
  53. }
  54. public Integer getRateEnd() {
  55. return rateEnd;
  56. }
  57. public String getDesc() {
  58. return desc;
  59. }
  60. public Integer getOrder() {
  61. return order;
  62. }
  63. }