Возникли проблемы с моим шаблоном JXLS ... интересно, могу ли я вообще это сделать или это просто неправильный синтаксис.Мне нужно создать условный оператор, который проверяет ячейку C2 и в зависимости от ответа добавляет еще одно динамическое поле.
В настоящее время у меня есть это в комментарии в строке D2.jx: if ("C2" = "Лицензия", "$ {docs.broker.licenseEffective}", "$ {docs.broker.eoEffectiveDate}" lastCell = "D2")
Я также пыталсяпоместив в ячейку D2 следующее значение: $ [IF (C2 = "License", "$ {docs.broker.licenseEffective}", "$ {docs.broker.eoEffectiveDate}")] Но Excel не удалось обработатьэто ... пробовал это несколькими разными способами.
Я думаю, что то, что я хочу сделать, возможно, просто не могу найти правильный способ написать это.
Если лучше сделать эту логику в моем контроллере, может кто-нибудь сказать мне, как получить определенную ячейку?Не уверен, как относиться к этому.
Если бы кто-нибудь мог помочь, это было бы очень признательно!
Контроллер:
@RequestMapping(value="/report/expirationReport")
public void expirationReport(HttpServletResponse response){
List <ComplianceDocument> docs = documentRepository.findAll();
List <SupportingDocument> supDocs = supportingDocRepository.findSupDocs2YrExpired();
try {
response.addHeader("Content-disposition", "attachment; filename=ExpirationReport.xlsx");
response.setContentType("application/vnd.ms-excel");
InputStream is= new ClassPathResource("static/reports/ExpirationReport.xlsx").getInputStream();
Context context= new Context();
context.putVar("docs", docs);
context.putVar("supDocs", supDocs);
JxlsHelper.getInstance().processTemplate(is,response.getOutputStream(),context);
response.flushBuffer();
} catch (IOException e) {
e.printStackTrace();
}
}