package com.sf._02_bigdecmail;

import java.math.BigDecimal;

public class Test1 {
    public static void main(String[] args) {
        //商品单价  商品数量
        BigDecimal price = new BigDecimal(100);
        BigDecimal count = new BigDecimal(3);
        // 计算商品总价
        BigDecimal totalPrice = price.multiply(count);
        System.out.println("商品总价为:"+totalPrice);
        // 折扣率 0.9
        BigDecimal discount = new BigDecimal("0.8");
        //折扣金额
        BigDecimal discountPrice = totalPrice.multiply(discount);
//                .setScale(2,BigDecimal.ROUND_HALF_UP);
        System.out.println(discountPrice);
        // 满减金额
        /**
         * bigdecimal 比较方式有两种方式
         * 一种把bigdecmail 转成基本数据类型进行比较  intValue  longValue
         *
         * bigDecimal当中compareTo(bigDecimail) 方法进行比较
         */
        BigDecimal finalPrice = new BigDecimal(0);
        if(discountPrice.intValue() >= 100 && discountPrice.intValue() < 200){
            finalPrice = discountPrice.subtract(new BigDecimal(10));
        }else if(discountPrice.intValue() >= 200 && discountPrice.intValue() < 500){
            finalPrice = discountPrice.subtract(new BigDecimal(30));
        }else if(discountPrice.intValue() >= 500){
            finalPrice = discountPrice.subtract(new BigDecimal(100));
        }
        System.out.println("最终金额:"+ finalPrice);
        // 税费计算  最终金额 * 税率
        BigDecimal taxPrice = finalPrice.multiply(new BigDecimal(0.09)).
                setScale(2,BigDecimal.ROUND_HALF_UP);
        System.out.println("税费"+ taxPrice);

        // 总金额 = 最终金额 + 税费
        System.out.println("订单总金额"+finalPrice.add(taxPrice));
    }
}
