Merge pull request #2769 from dataease/pr@dev@fix_email_task_without_view

fix(系统管理-定时报告): 定时报告不带视图数据发送报错
This commit is contained in:
fit2cloud-chenyw 2022-08-02 21:56:24 +08:00 committed by GitHub
commit feae7153ef
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 5 deletions

View File

@ -168,12 +168,15 @@ public class EmailTaskHandler extends TaskHandler implements Job {
contentStr = new String(content, "UTF-8"); contentStr = new String(content, "UTF-8");
} }
List<File> files = null;
String viewIds = emailTemplateDTO.getViewIds(); String viewIds = emailTemplateDTO.getViewIds();
List<String> viewIdList = Arrays.asList(viewIds.split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); if (StringUtils.isNotBlank(viewIds)) {
List<String> viewIdList = Arrays.asList(viewIds.split(",")).stream().filter(StringUtils::isNotBlank).map(s -> (s.trim())).collect(Collectors.toList());
PermissionProxy proxy = new PermissionProxy(); PermissionProxy proxy = new PermissionProxy();
proxy.setUserId(user.getUserId()); proxy.setUserId(user.getUserId());
List<File> files = viewExportExcel.export(panelId, viewIdList, proxy); files = viewExportExcel.export(panelId, viewIdList, proxy);
}
emailService.sendWithImageAndFiles(recipients, emailTemplateDTO.getTitle(), contentStr, bytes, files); emailService.sendWithImageAndFiles(recipients, emailTemplateDTO.getTitle(), contentStr, bytes, files);
success(taskInstance); success(taskInstance);

View File

@ -1,5 +1,6 @@
package io.dataease.service.chart; package io.dataease.service.chart;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -39,6 +40,9 @@ public class ViewExportExcel {
@DePermissionProxy(paramIndex = 2) @DePermissionProxy(paramIndex = 2)
public List<File> export(String panelId, List<String> viewIds, PermissionProxy proxy) throws Exception { public List<File> export(String panelId, List<String> viewIds, PermissionProxy proxy) throws Exception {
if (CollectionUtils.isEmpty(viewIds)) {
return null;
}
PanelGroupService panelGroupService = SpringContextUtil.getBean(PanelGroupService.class); PanelGroupService panelGroupService = SpringContextUtil.getBean(PanelGroupService.class);
PanelGroupDTO panelDto = panelGroupService.findOne(panelId); PanelGroupDTO panelDto = panelGroupService.findOne(panelId);