## 支付大于1元才随机减;随机减金额最大为0.3元;
This commit is contained in:
		
							parent
							
								
									3b178ca160
								
							
						
					
					
						commit
						bd03ec538d
					
				|  | @ -12,20 +12,24 @@ import java.util.TreeMap; | ||||||
|  */ |  */ | ||||||
| public class PayUtil { | public class PayUtil { | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * 支付大于1元才能进行随机减 | ||||||
|  |      */ | ||||||
|  |     final static BigDecimal RANDOM_LIMIT = new BigDecimal("1"); | ||||||
|     /** |     /** | ||||||
|      * 随机减金额 |      * 随机减金额 | ||||||
|      */ |      */ | ||||||
|     final static BigDecimal RANDOM = new BigDecimal("0.5"); |     final static BigDecimal RANDOM = new BigDecimal("0.3"); | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * 计算随机金额,0.2元进行随机生成 |      * 计算随机金额,0.3元进行随机生成 | ||||||
|      * |      * | ||||||
|      * @param amount |      * @param amount | ||||||
|      * @return |      * @return | ||||||
|      */ |      */ | ||||||
|     public static BigDecimal handleAmountRandom(BigDecimal amount) { |     public static BigDecimal handleAmountRandom(BigDecimal amount) { | ||||||
|         if (amount.compareTo(RANDOM) > 0) { |         if (amount.compareTo(RANDOM_LIMIT) > 0) { | ||||||
|             // 订单金额大于0.99元才进行处理 |             // 订单金额大于1元才进行处理 | ||||||
|             return amount.subtract(RANDOM).add(RandomUtil.randomBigDecimal(new BigDecimal("0.01"), RANDOM).setScale(2, BigDecimal.ROUND_HALF_UP)); |             return amount.subtract(RANDOM).add(RandomUtil.randomBigDecimal(new BigDecimal("0.01"), RANDOM).setScale(2, BigDecimal.ROUND_HALF_UP)); | ||||||
|         } |         } | ||||||
|         return amount; |         return amount; | ||||||
|  | @ -39,7 +43,7 @@ public class PayUtil { | ||||||
|      * @return |      * @return | ||||||
|      */ |      */ | ||||||
|     public static boolean checkAmount(BigDecimal amount, BigDecimal payAmount) { |     public static boolean checkAmount(BigDecimal amount, BigDecimal payAmount) { | ||||||
|         // 实际订单金额 - 支付金额 <= 0.2 则为正常处理 |         // 实际订单金额 - 支付金额 <= 0.3 则为正常处理 | ||||||
|         return amount.subtract(payAmount).compareTo(RANDOM) <= 0; |         return amount.subtract(payAmount).compareTo(RANDOM) <= 0; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue