diff --git a/backend/src/main/java/io/metersphere/excel/utils/EasyExcelExporter.java b/backend/src/main/java/io/metersphere/excel/utils/EasyExcelExporter.java index be802d3bfb..5a6b39fd20 100644 --- a/backend/src/main/java/io/metersphere/excel/utils/EasyExcelExporter.java +++ b/backend/src/main/java/io/metersphere/excel/utils/EasyExcelExporter.java @@ -1,8 +1,11 @@ package io.metersphere.excel.utils; import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.write.metadata.style.WriteCellStyle; +import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; import io.metersphere.commons.utils.LogUtil; import io.metersphere.exception.ExcelException; +import org.apache.poi.ss.usermodel.IndexedColors; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @@ -29,9 +32,12 @@ public class EasyExcelExporter { public void export(HttpServletResponse response, List data, String fileName, String sheetName) { response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("utf-8"); + WriteCellStyle contentWriteCellStyle = new WriteCellStyle(); + contentWriteCellStyle.setWrapped(true); try { + HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(null, contentWriteCellStyle); response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8") + ".xlsx"); - EasyExcel.write(response.getOutputStream(), this.clazz).sheet(sheetName).doWrite(data); + EasyExcel.write(response.getOutputStream(), this.clazz).registerWriteHandler(horizontalCellStyleStrategy).sheet(sheetName).doWrite(data); } catch (UnsupportedEncodingException e) { LogUtil.error(e.getMessage(), e); throw new ExcelException("Utf-8 encoding is not supported"); diff --git a/frontend/src/business/components/track/case/components/TestCaseEdit.vue b/frontend/src/business/components/track/case/components/TestCaseEdit.vue index d5a9c8b65e..6a289f5443 100644 --- a/frontend/src/business/components/track/case/components/TestCaseEdit.vue +++ b/frontend/src/business/components/track/case/components/TestCaseEdit.vue @@ -5,7 +5,7 @@ + :visible.sync="dialogFormVisible" width="65%"> @@ -352,8 +352,8 @@ export default { handleAddStep(index, data) { let step = {}; step.num = data.num + 1; - step.desc = null; - step.result = null; + step.desc = ""; + step.result = ""; this.form.steps.forEach(step => { if (step.num > data.num) { step.num++;