| | |
| | | import com.ruoyi.project.domain.FunddetailReqVo; |
| | | import com.ruoyi.project.domain.ServiceFunddetail; |
| | | import com.ruoyi.project.domain.SpStatBonus; |
| | | import com.ruoyi.project.domain.SpStatBonusDept; |
| | | import com.ruoyi.project.domain.SpStatBonusReq; |
| | | import com.ruoyi.project.domain.vo.TaxMoneyByItemEO; |
| | | import com.ruoyi.project.domain.vo.TaxMoneySumEO; |
| | |
| | | // 金额 0.00 不显示 |
| | | for (SpStatBonus row : list) { |
| | | row.setAmount(blankZero(row.getAmount())); |
| | | row.setMamount(blankZero(row.getMamount())); |
| | | row.setSamount(blankZero(row.getSamount())); |
| | | row.setYamount(blankZero(row.getYamount())); |
| | | } |
| | | ExcelUtil<SpStatBonus> util = new ExcelUtil<SpStatBonus>(SpStatBonus.class); |
| | | return util.exportExcel(list, "绩效统计数据"); |
| | | } |
| | | |
| | | /** |
| | | * 导出绩效统计(按业务组) |
| | | */ |
| | | @ApiOperation("导出绩效统计(按业务组)") |
| | | @Log(title = "绩效统计", businessType = BusinessType.EXPORT) |
| | | @GetMapping("/exportBonusDept") |
| | | public AjaxResult exportBonusDept(SpStatBonusReq spStatBonusReq) { |
| | | List<SpStatBonus> list = serviceFunddetailService.getListBySpStatBonus(spStatBonusReq); |
| | | Map<String, SpStatBonusDept> grouped = new LinkedHashMap<String, SpStatBonusDept>(); |
| | | for (SpStatBonus row : list) { |
| | | String key = row.getDeptId() != null ? String.valueOf(row.getDeptId()) : row.getDeptName(); |
| | | if (key == null) { |
| | | key = ""; |
| | | } |
| | | SpStatBonusDept dept = grouped.get(key); |
| | | if (dept == null) { |
| | | dept = new SpStatBonusDept(); |
| | | dept.setDeptname(row.getDeptName() == null ? "未分组" : row.getDeptName()); |
| | | dept.setAmount(BigDecimal.ZERO); |
| | | dept.setMamount(BigDecimal.ZERO); |
| | | dept.setSamount(BigDecimal.ZERO); |
| | | dept.setYamount(BigDecimal.ZERO); |
| | | grouped.put(key, dept); |
| | | } |
| | | dept.setAmount(dept.getAmount().add(nz(row.getAmount()))); |
| | | dept.setMamount(dept.getMamount().add(nz(row.getMamount()))); |
| | | dept.setSamount(dept.getSamount().add(nz(row.getSamount()))); |
| | | dept.setYamount(dept.getYamount().add(nz(row.getYamount()))); |
| | | } |
| | | List<SpStatBonusDept> result = new ArrayList<SpStatBonusDept>(grouped.values()); |
| | | for (SpStatBonusDept dept : result) { |
| | | dept.setAmount(blankZero(dept.getAmount())); |
| | | dept.setMamount(blankZero(dept.getMamount())); |
| | | dept.setSamount(blankZero(dept.getSamount())); |
| | | dept.setYamount(blankZero(dept.getYamount())); |
| | | } |
| | | ExcelUtil<SpStatBonusDept> util = new ExcelUtil<SpStatBonusDept>(SpStatBonusDept.class); |
| | | return util.exportExcel(result, "绩效统计(按业务组)"); |
| | | } |
| | | |
| | | private BigDecimal nz(BigDecimal value) { |
| | | return value == null ? BigDecimal.ZERO : value; |
| | | } |
| | | |
| | | private BigDecimal blankZero(BigDecimal value) { |
| | | return (value == null || value.compareTo(BigDecimal.ZERO) == 0) ? null : value; |
| | | } |