1.数据库中的数据为BigDecimal 类型,小数点保留两位,在前端显示不需要小数点,并且进行千分位计算
2. 在后端代码中,我是使用string类型的字段接收金鸽,在过程中需要用到截取下小数点前的数据,小数点之后的数据不要了
3. 废话不多说,上代码
@Override
public Page<IaAppointListVo> getAppointList(Integer pageNum, Integer pageSize, String userId,String managementRightName) {
PageHelper.startPage(pageNum,pageSize);
Page<IaAppointListVo>page = iaAppointmentMapper.getAppointList(managementRightName);
for (int i = 0; i < page.size(); i++) {
String pricePreMu = page.get(i).getPricePreMu();
if (pricePreMu ==null){
page.get(i).setPricePreMu("");
}else {
String [] str = pricePreMu.split("[.]");
BigDecimal num = NumberUtils.createBigDecimal(str[0]);
page.get(i).setPricePreMu(ConvertUpMoney.micrometer(num));
page.get(i).setPricePreMu(String.valueOf(num));
}
}
return page;
}
public static String micrometer(BigDecimal num){
NumberFormat numberFormat1 = NumberFormat.getNumberInstance();
String price = numberFormat1.format(num);
return price;
}
最终千分位之后的效果