mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2026-03-22 17:47:21 +08:00
【优化】优化excel导出循环字段硬编码问题,防止中途增加字段导致的排序调整问题。
This commit is contained in:
@@ -333,11 +333,13 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
|||||||
//给sheet1添加第一行的头部标题
|
//给sheet1添加第一行的头部标题
|
||||||
var headerRow = mySheet.CreateRow(0);
|
var headerRow = mySheet.CreateRow(0);
|
||||||
var headerStyle = ExcelHelper.GetHeaderStyle(book);
|
var headerStyle = ExcelHelper.GetHeaderStyle(book);
|
||||||
|
var cellNum = 0;
|
||||||
{% for field in ModelFields %}
|
{% for field in ModelFields %}
|
||||||
var cell{{ forloop.index0 }} = headerRow.CreateCell({{ forloop.index0 }});
|
var cell{{ forloop.index0 }} = headerRow.CreateCell(cellNum);
|
||||||
cell{{ forloop.index0 }}.SetCellValue("{{field.ColumnDescription}}");
|
cell{{ forloop.index0 }}.SetCellValue("{{field.ColumnDescription}}");
|
||||||
cell{{ forloop.index0 }}.CellStyle = headerStyle;
|
cell{{ forloop.index0 }}.CellStyle = headerStyle;
|
||||||
mySheet.SetColumnWidth({{ forloop.index0 }}, 10 * 256);
|
mySheet.SetColumnWidth(cellNum, 10 * 256);
|
||||||
|
cellNum++;
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
headerRow.Height = 30 * 20;
|
headerRow.Height = 30 * 20;
|
||||||
var commonCellStyle = ExcelHelper.GetCommonStyle(book);
|
var commonCellStyle = ExcelHelper.GetCommonStyle(book);
|
||||||
@@ -346,10 +348,12 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
|||||||
for (var i = 0; i < listModel.Count; i++)
|
for (var i = 0; i < listModel.Count; i++)
|
||||||
{
|
{
|
||||||
var rowTemp = mySheet.CreateRow(i + 1);
|
var rowTemp = mySheet.CreateRow(i + 1);
|
||||||
|
var cellNumTemp = 0;
|
||||||
{% for field in ModelFields %}
|
{% for field in ModelFields %}
|
||||||
var rowTemp{{ forloop.index0 }} = rowTemp.CreateCell({{ forloop.index0 }});
|
var rowTemp{{ forloop.index0 }} = rowTemp.CreateCell(cellNumTemp);
|
||||||
rowTemp{{ forloop.index0 }}.SetCellValue(listModel[i].{{field.DbColumnName}}.ToString());
|
rowTemp{{ forloop.index0 }}.SetCellValue(listModel[i].{{field.DbColumnName}}.ToString());
|
||||||
rowTemp{{ forloop.index0 }}.CellStyle = commonCellStyle;
|
rowTemp{{ forloop.index0 }}.CellStyle = commonCellStyle;
|
||||||
|
cellNumTemp++;
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
}
|
}
|
||||||
// 导出excel
|
// 导出excel
|
||||||
@@ -451,11 +455,13 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
|||||||
//给sheet1添加第一行的头部标题
|
//给sheet1添加第一行的头部标题
|
||||||
var headerRow = mySheet.CreateRow(0);
|
var headerRow = mySheet.CreateRow(0);
|
||||||
var headerStyle = ExcelHelper.GetHeaderStyle(book);
|
var headerStyle = ExcelHelper.GetHeaderStyle(book);
|
||||||
|
var cellNum = 0;
|
||||||
{% for field in ModelFields %}
|
{% for field in ModelFields %}
|
||||||
var cell{{ forloop.index0 }} = headerRow.CreateCell({{ forloop.index0 }});
|
var cell{{ forloop.index0 }} = headerRow.CreateCell(cellNum);
|
||||||
cell{{ forloop.index0 }}.SetCellValue("{{field.ColumnDescription}}");
|
cell{{ forloop.index0 }}.SetCellValue("{{field.ColumnDescription}}");
|
||||||
cell{{ forloop.index0 }}.CellStyle = headerStyle;
|
cell{{ forloop.index0 }}.CellStyle = headerStyle;
|
||||||
mySheet.SetColumnWidth({{ forloop.index0 }}, 10 * 256);
|
mySheet.SetColumnWidth(cellNum, 10 * 256);
|
||||||
|
cellNum++;
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
headerRow.Height = 30 * 20;
|
headerRow.Height = 30 * 20;
|
||||||
@@ -465,12 +471,12 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
|||||||
for (var i = 0; i < listModel.Count; i++)
|
for (var i = 0; i < listModel.Count; i++)
|
||||||
{
|
{
|
||||||
var rowTemp = mySheet.CreateRow(i + 1);
|
var rowTemp = mySheet.CreateRow(i + 1);
|
||||||
|
var cellNumTemp = 0;
|
||||||
{% for field in ModelFields %}
|
{% for field in ModelFields %}
|
||||||
|
var rowTemp{{ forloop.index0 }} = rowTemp.CreateCell(cellNumTemp);
|
||||||
var rowTemp{{ forloop.index0 }} = rowTemp.CreateCell({{ forloop.index0 }});
|
|
||||||
rowTemp{{ forloop.index0 }}.SetCellValue(listModel[i].{{field.DbColumnName}}.ToString());
|
rowTemp{{ forloop.index0 }}.SetCellValue(listModel[i].{{field.DbColumnName}}.ToString());
|
||||||
rowTemp{{ forloop.index0 }}.CellStyle = commonCellStyle;
|
rowTemp{{ forloop.index0 }}.CellStyle = commonCellStyle;
|
||||||
|
cellNumTemp++;
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
}
|
}
|
||||||
// 写入到excel
|
// 写入到excel
|
||||||
|
|||||||
Reference in New Issue
Block a user