From 61bdd325c8324c24c7092ae1f4e2194fc049457c Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 17 Jan 2023 21:12:03 +0800
Subject: [PATCH] 1
---
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