|
@@ -462,23 +462,21 @@ func handleTableDataList(tableDataList [][]LuckySheetDataValue, luckySheetDataCo
|
|
|
flag = false
|
|
|
//尾部
|
|
|
deleteBottomRowIndexList := make([]int, 0)
|
|
|
- if len(tableDataList) > 1 {
|
|
|
- for rowIndex := lenRow - 1; rowIndex >= 0; rowIndex-- {
|
|
|
- isDelete := true
|
|
|
- for _, v := range tableDataList[rowIndex] {
|
|
|
- if v.Monitor != `` {
|
|
|
- isDelete = false
|
|
|
- flag = true
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- if flag {
|
|
|
+ for rowIndex := lenRow - 1; rowIndex > removeTopRow; rowIndex-- {
|
|
|
+ isDelete := true
|
|
|
+ for _, v := range tableDataList[rowIndex] {
|
|
|
+ if v.Monitor != `` {
|
|
|
+ isDelete = false
|
|
|
+ flag = true
|
|
|
break
|
|
|
}
|
|
|
- if isDelete {
|
|
|
- deleteBottomRowIndexList = append(deleteBottomRowIndexList, rowIndex)
|
|
|
- removeBottomRow++
|
|
|
- }
|
|
|
+ }
|
|
|
+ if flag {
|
|
|
+ break
|
|
|
+ }
|
|
|
+ if isDelete {
|
|
|
+ deleteBottomRowIndexList = append(deleteBottomRowIndexList, rowIndex)
|
|
|
+ removeBottomRow++
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -530,28 +528,26 @@ func handleTableDataList(tableDataList [][]LuckySheetDataValue, luckySheetDataCo
|
|
|
flag = false
|
|
|
//右边
|
|
|
deleteTailColumnIndexList := make([]int, 0)
|
|
|
- // 数据要大于1列才会处理
|
|
|
- if lenColumn > 1 {
|
|
|
- for columnIndex := lenColumn - 1; columnIndex >= 0; columnIndex-- {
|
|
|
- isDelete := true
|
|
|
- for _, v := range tableDataList {
|
|
|
- //如果一列都没有,说明是上面几行是空行,没有数据
|
|
|
- if len(v) <= 0 {
|
|
|
- continue
|
|
|
- }
|
|
|
- if v[columnIndex].Monitor != `` || (v[columnIndex].MergeCell.Column != columnIndex && v[columnIndex].MergeCell.Column != 0) {
|
|
|
- isDelete = false
|
|
|
- flag = true
|
|
|
- break
|
|
|
- }
|
|
|
+ // 数据第1列不处理
|
|
|
+ for columnIndex := lenColumn - 1; columnIndex > removeLeftColumn; columnIndex-- {
|
|
|
+ isDelete := true
|
|
|
+ for _, v := range tableDataList {
|
|
|
+ //如果一列都没有,说明是上面几行是空行,没有数据
|
|
|
+ if len(v) <= 0 {
|
|
|
+ continue
|
|
|
}
|
|
|
- if flag {
|
|
|
+ if v[columnIndex].Monitor != `` || (v[columnIndex].MergeCell.Column != columnIndex && v[columnIndex].MergeCell.Column != 0) {
|
|
|
+ isDelete = false
|
|
|
+ flag = true
|
|
|
break
|
|
|
}
|
|
|
- if isDelete {
|
|
|
- deleteTailColumnIndexList = append(deleteTailColumnIndexList, columnIndex)
|
|
|
- removeRightColumn++
|
|
|
- }
|
|
|
+ }
|
|
|
+ if flag {
|
|
|
+ break
|
|
|
+ }
|
|
|
+ if isDelete {
|
|
|
+ deleteTailColumnIndexList = append(deleteTailColumnIndexList, columnIndex)
|
|
|
+ removeRightColumn++
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1034,12 +1030,16 @@ func GetTableDataByCustomData(excelType int, data request.TableDataReq, lang str
|
|
|
if v.Data[i].DataType == 5 {
|
|
|
background = "#ffefdd"
|
|
|
}
|
|
|
- dataCol = append(dataCol, LuckySheetDataValue{
|
|
|
+ tmpCol := LuckySheetDataValue{
|
|
|
Value: v.Data[i].Value,
|
|
|
Monitor: v.Data[i].ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
Background: background,
|
|
|
- })
|
|
|
+ }
|
|
|
+ if tmpCol.Monitor == `` {
|
|
|
+ tmpCol.Monitor = "-"
|
|
|
+ }
|
|
|
+ dataCol = append(dataCol, tmpCol)
|
|
|
}
|
|
|
|
|
|
tableDataList = append(tableDataList, dataCol)
|
|
@@ -1051,11 +1051,16 @@ func GetTableDataByCustomData(excelType int, data request.TableDataReq, lang str
|
|
|
for _, textColList := range data.TextRowData {
|
|
|
dataCol := make([]LuckySheetDataValue, 0)
|
|
|
for _, v := range textColList {
|
|
|
- dataCol = append(dataCol, LuckySheetDataValue{
|
|
|
+ tmpCol := LuckySheetDataValue{
|
|
|
Value: v.Value,
|
|
|
Monitor: v.ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
- })
|
|
|
+ }
|
|
|
+ tmpCol.Value = v.Value
|
|
|
+ if tmpCol.Monitor == "" {
|
|
|
+ tmpCol.Monitor = "-"
|
|
|
+ }
|
|
|
+ dataCol = append(dataCol, tmpCol)
|
|
|
}
|
|
|
tableDataList = append(tableDataList, dataCol)
|
|
|
}
|
|
@@ -1101,11 +1106,15 @@ func GetTableDataByCustomData(excelType int, data request.TableDataReq, lang str
|
|
|
|
|
|
// 文本列
|
|
|
for _, textColList := range data.TextRowData {
|
|
|
- firstCol = append(firstCol, LuckySheetDataValue{
|
|
|
+ tmpCol := LuckySheetDataValue{
|
|
|
Value: textColList[0].Value,
|
|
|
Monitor: textColList[0].ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
- })
|
|
|
+ }
|
|
|
+ if tmpCol.Monitor == `` {
|
|
|
+ tmpCol.Monitor = "-"
|
|
|
+ }
|
|
|
+ firstCol = append(firstCol, tmpCol)
|
|
|
}
|
|
|
|
|
|
tableDataList = append(tableDataList, firstCol)
|
|
@@ -1159,23 +1168,30 @@ func GetTableDataByCustomData(excelType int, data request.TableDataReq, lang str
|
|
|
if tmpData.DataType == 5 {
|
|
|
background = "#ffefdd"
|
|
|
}
|
|
|
- dataCol = append(dataCol, LuckySheetDataValue{
|
|
|
+ tmpCol := LuckySheetDataValue{
|
|
|
Value: tmpData.Value,
|
|
|
Monitor: tmpData.ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
Background: background,
|
|
|
- })
|
|
|
+ }
|
|
|
+ if tmpCol.Monitor == `` {
|
|
|
+ tmpCol.Monitor = "-"
|
|
|
+ }
|
|
|
+ dataCol = append(dataCol, tmpCol)
|
|
|
}
|
|
|
|
|
|
// 文本列
|
|
|
for _, textColList := range data.TextRowData {
|
|
|
- dataCol = append(dataCol, LuckySheetDataValue{
|
|
|
+ tmpCol := LuckySheetDataValue{
|
|
|
Value: textColList[i+1].Value,
|
|
|
Monitor: textColList[i+1].ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
- })
|
|
|
+ }
|
|
|
+ if tmpCol.Monitor == `` {
|
|
|
+ tmpCol.Monitor = "-"
|
|
|
+ }
|
|
|
+ dataCol = append(dataCol, tmpCol)
|
|
|
}
|
|
|
-
|
|
|
tableDataList = append(tableDataList, dataCol)
|
|
|
}
|
|
|
|
|
@@ -1202,6 +1218,10 @@ func GetTableDataByMixedTableData(config [][]request.MixedTableCellDataReq, hide
|
|
|
Monitor: cell.ShowValue,
|
|
|
MergeCell: LuckySheetDataConfigMerge{},
|
|
|
}
|
|
|
+ if cell.DataType != request.CustomTextDT && tmp.Monitor == `` {
|
|
|
+ tmp.Monitor = "-"
|
|
|
+ cell.ShowFormatValue = "-"
|
|
|
+ }
|
|
|
// 前端需要隐藏被合并的单元格, 混合表格/平衡表通过这个字段判断, 不通过HandleTableCell方法隐藏
|
|
|
if cell.MerData != nil {
|
|
|
if hideMerged && cell.MerData.Type == "merged" {
|
|
@@ -1223,6 +1243,17 @@ func GetTableDataByMixedTableData(config [][]request.MixedTableCellDataReq, hide
|
|
|
if styleConfig.Color != "" {
|
|
|
tmp.FontColor = styleConfig.Color
|
|
|
}
|
|
|
+ switch styleConfig.Align {
|
|
|
+ case "center":
|
|
|
+ tmp.HorizontalType = 0
|
|
|
+ tmp.Ht = 0
|
|
|
+ case "left":
|
|
|
+ tmp.HorizontalType = 1
|
|
|
+ tmp.Ht = 1
|
|
|
+ case "right":
|
|
|
+ tmp.HorizontalType = 2
|
|
|
+ tmp.Ht = 2
|
|
|
+ }
|
|
|
tmp.Monitor = cell.ShowFormatValue
|
|
|
// 如果没有showValue, 则使用value
|
|
|
if cell.ShowValue == "" {
|