From 73b3813c2d110bf446f251350f120bb1e2b51d0c Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 10 Jan 2023 10:45:14 +0800 Subject: [PATCH] 20221227 充值归集 --- src/main/java/cc/mrbird/febs/common/enumerates/StarRatingEnum.java | 63 +++++++++++++++++++++++++++---- 1 files changed, 55 insertions(+), 8 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/StarRatingEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/StarRatingEnum.java index 20c120e..ee66ed0 100644 --- a/src/main/java/cc/mrbird/febs/common/enumerates/StarRatingEnum.java +++ b/src/main/java/cc/mrbird/febs/common/enumerates/StarRatingEnum.java @@ -3,16 +3,17 @@ import lombok.Getter; import java.math.BigDecimal; +//商品星级 @Getter public enum StarRatingEnum { /** * 定级规则 * 大于最小值,小于等于最大值 */ - NORMAL("普通",0,30), - ONE_STAR("一星",30,50), - TWO_STAR("二星",50,100), - THREE_STAR("三星",100,200); + NORMAL("普通",0,30,1), + ONE_STAR("一星",30,50,2), + TWO_STAR("二星",50,100,3), + THREE_STAR("三星",100,200,4); private String name; @@ -20,10 +21,13 @@ private Integer maxValue; - StarRatingEnum(String name,Integer minValue, Integer maxValue) { + private Integer code; + + StarRatingEnum(String name,Integer minValue, Integer maxValue,Integer code) { this.name = name; this.minValue = minValue; this.maxValue = maxValue; + this.code = code; } /** @@ -33,10 +37,10 @@ */ public String belongStarRating(String price){ String name = StarRatingEnum.NORMAL.name; - BigDecimal priceBig = new BigDecimal(price).setScale(BigDecimal.ROUND_DOWN,2); + BigDecimal priceBig = new BigDecimal(price).setScale(2,BigDecimal.ROUND_DOWN); for (StarRatingEnum starRatingEnum : StarRatingEnum.values()) { - BigDecimal minValue = new BigDecimal(starRatingEnum.minValue).setScale(BigDecimal.ROUND_DOWN, 2); - BigDecimal maxValue = new BigDecimal(starRatingEnum.maxValue).setScale(BigDecimal.ROUND_DOWN, 2); + BigDecimal minValue = new BigDecimal(starRatingEnum.minValue).setScale(2, BigDecimal.ROUND_DOWN); + BigDecimal maxValue = new BigDecimal(starRatingEnum.maxValue).setScale(2, BigDecimal.ROUND_DOWN); if(priceBig.compareTo(minValue) > 0 && priceBig.compareTo(maxValue) <= 0){ name = starRatingEnum.name; } @@ -44,6 +48,49 @@ return name; } + /** + * 根据输入的商品星级获取对应的Code + * @param name + * @return + */ + public Integer getGoodsStarCode(String name){ + Integer code = 0; + for(StarRatingEnum starRatingEnum : StarRatingEnum.values()){ + if(starRatingEnum.name.equals(name)){ + code = starRatingEnum.code; + } + } + return code; + } + + /** + * 获取商品可以设置的最小价格 + * @return + */ + public Integer getMinValue(){ + Integer totalMinvalue = 0; + for(StarRatingEnum starRatingEnum : StarRatingEnum.values()){ + if(starRatingEnum.minValue < totalMinvalue){ + totalMinvalue = starRatingEnum.minValue; + } + } + return totalMinvalue; + } + + /** + * 获取商品可以设置的最大价格 + * @return + */ + public Integer getMaxValue(){ + Integer totalMaxValue = 0; + for(StarRatingEnum starRatingEnum : StarRatingEnum.values()){ + if(starRatingEnum.maxValue > totalMaxValue){ + totalMaxValue = starRatingEnum.maxValue; + } + } + return totalMaxValue; + } + public static void main(String[] args) { String s = StarRatingEnum.NORMAL.belongStarRating(String.valueOf(100)); System.out.println(s); -- Gitblit v1.9.1