| | |
| | | if (TextUtils.isEmpty(value)) { |
| | | return UnitType.noValue + unit; |
| | | } |
| | | if (unit.equals(UnitType.kW)) { |
| | | if (unit.equals(UnitType.kW) || unit.equals(UnitType.kWh)) { |
| | | return divideByOneThousandAndFormat(value).toString() + unit; |
| | | } |
| | | return getBigDecimal(value).toString() + unit; |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * @param value 值 |
| | |
| | | * @return BigDecimal |
| | | */ |
| | | public static BigDecimal divideByOneThousandAndFormat(String value) { |
| | | try { |
| | | double doubleValue = Double.parseDouble(value); |
| | | int val = 1000; |
| | | if (doubleValue > 1000 && doubleValue < 1000 * 1000) { |
| | | val = 1000; |
| | | } else if (doubleValue > 1000 * 1000 && doubleValue < 1000 * 1000 * 1000) { |
| | | val = 1000 * 1000; |
| | | } else if (doubleValue > 1000 * 1000 * 1000) { |
| | | val = 1000 * 1000 * 1000; |
| | | } |
| | | BigDecimal bigDecimal = new BigDecimal(doubleValue); |
| | | return bigDecimal.divide(new BigDecimal(val), 2, RoundingMode.HALF_EVEN); |
| | | } catch (Exception e) { |
| | | BigDecimal bigDecimal = new BigDecimal(0); |
| | | return bigDecimal.divide(new BigDecimal(1000), 2, RoundingMode.HALF_EVEN); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取倍数 |
| | | * |
| | | * @param value 值 |
| | | */ |
| | | public static int val(String value) { |
| | | double doubleValue = Double.parseDouble(value); |
| | | int val = 1000; |
| | | if (doubleValue > 1000 && doubleValue < 1000 * 1000) { |
| | | val = 1000; |
| | | } else if (doubleValue > 1000 * 1000 && doubleValue < 1000 * 1000 * 1000) { |
| | | val = 1000 * 1000; |
| | | } else if (doubleValue > 1000 * 1000 * 1000) { |
| | | val = 1000 * 1000 * 1000; |
| | | } |
| | | return val; |
| | | } |
| | | |
| | | /** |
| | | * 生成二维码 |