@RequestMapping("download")
  public void download(ReportVo reportVo, HttpServletResponse response, HttpServletRequest request)
      throws IOException {
    if (reportVo != null) {
      String template = "config/templates/" + reportVo.getReportType() + ".html";
      PdfDocumentGenerator pdfGenerator = new PdfDocumentGenerator();
      List<User> users = userService.findAll();
      if (users != null) {
        List<DocumentVo> employeeReportVos = new ArrayList<DocumentVo>();
        for (User user : users) {
          EmployeeReportVo employeeReportVo = new EmployeeReportVo(user, reportVo.getReportType());
          if (employeeReportVo.getIsEmployee() != null && employeeReportVo.getIsEmployee()) {
            employeeReportVos.add(employeeReportVo);
          }
        }
        try {
          if (reportVo.getReportType().equals(ReportType.TimeCardReport.name())
              || reportVo.getReportType().equals(ReportType.ExceptionsReport.name())) {
            try {
              pdfGenerator.generate(
                  createTimeCardReport(reportVo, employeeReportVos), response.getOutputStream());
            } catch (Exception e) {
              e.printStackTrace();
            }
          } else {
            pdfGenerator.generate(template, employeeReportVos, response.getOutputStream());
          }

        } catch (DocumentGeneratingException e) {
          e.printStackTrace();
        }
      }
    }
  }