fix:89620

This commit is contained in:
梁琦涛
2024-09-05 18:03:22 +08:00
parent 2481445f1b
commit a0b97d70ad
@@ -79,6 +79,7 @@ import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.SpreadsheetVersion;
import org.apache.shiro.SecurityUtils;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
@@ -1083,7 +1084,7 @@ public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowSe
exportList = BeanCopyUtils.copyBeanList(exportList2, ProcessStandardInterpretClauseSublist.class);
}
resetCellMaxTextLength();
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
try {
@@ -1101,6 +1102,23 @@ public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowSe
return mv;
}
public static void resetCellMaxTextLength() {
SpreadsheetVersion excel2007 = SpreadsheetVersion.EXCEL2007;
if (Integer.MAX_VALUE != excel2007.getMaxTextLength()) {
Field field;
try {
// SpreadsheetVersion.EXCEL2007的_maxTextLength变量
field = excel2007.getClass().getDeclaredField("_maxTextLength");
// 关闭反射机制的安全检查,可以提高性能
field.setAccessible(true);
// 重新设置这个变量属性值
field.set(excel2007, Integer.MAX_VALUE);
} catch (Exception e) {
e.printStackTrace();
}
}
}
@Override
public void flowCountersign(String taskId, String userId, String projectId) {
ProcessStandardInterpret processStandardInterpret = processStandardInterpretService.getOne(