前台传来参数,查询得到list。
获取第一个日期:lists.get(0).getNy(),通过SimpleDateFormat格式化日期。
统计Decimal类型的合计
统计Integer类型的合计
人民币大写转换
@GetMapping("/printview")
public String printview(Jm_bzd_ffhz jmBzdFfhz, Model model) {
List<Jm_bzd_ffhz> lists =jm_bzd_ffhz.printview(jmBzdFfhz);
//发放年月,日期的转换与格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月");
Date ffny=lists.get(0).getNy();
System.out.println(lists.get(0).getNy());
String ny=sdf.format(ffny);
// 使用stream流将list集合中BigDecimal字段过滤null并计算
//发放金额合计
BigDecimal total = lists.stream().filter(item -> item.getJe() != null).map(Jm_bzd_ffhz::getJe).reduce(BigDecimal.ZERO, BigDecimal::add);
System.out.println("求合计:" + total);
//人次数合计
long sumrc = lists.stream().filter(item -> item.getRc() != null).map(Jm_bzd_ffhz::getRc).reduce(Integer::sum).orElse(0);
//大写人民币
String s =MoneyNumberToCN.number2CNMontrayUnit(total);
model.addAttribute("lists", lists);
model.addAttribute("sumje",total);
model.addAttribute("sumrc",sumrc);
model.addAttribute("ffny",ny);
model.addAttribute("rmbcn",s);
return "admin/jm/bzd/printview";
}
文章转载自云自由,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




