Browse Source

fix:表格详情新增返回字体大小配置

Roc 11 months ago
parent
commit
63018c00cb

+ 4 - 2
controllers/business_conf.go

@@ -6,6 +6,7 @@ import (
 	"eta/eta_api/services"
 	"eta/eta_api/utils"
 	"fmt"
+	"github.com/shopspring/decimal"
 	"html"
 	"strconv"
 	"strings"
@@ -103,10 +104,11 @@ func (this *BusinessConfController) Save() {
 				approveType = str
 			}
 		case 2: // 数值
-			num, ok := v.(float64)
-			if !ok {
+			vDeci, err := decimal.NewFromString(fmt.Sprint(v))
+			if err != nil {
 				continue
 			}
+			num, _ := vDeci.Float64()
 			if conf.Necessary == 1 && num <= 0 {
 				br.Msg = conf.Remark + "不可为空"
 				return

+ 19 - 0
controllers/data_manage/excel/excel_info.go

@@ -16,6 +16,7 @@ import (
 	"eta/eta_api/utils"
 	"fmt"
 	"github.com/rdlucklib/rdluck_tools/paging"
+	"github.com/shopspring/decimal"
 	"github.com/yidane/formula"
 	"io"
 	"os"
@@ -1197,6 +1198,7 @@ func (c *ExcelInfoController) GetExcelTableData() {
 		return
 	}
 	uniqueCode := c.GetString("UniqueCode")
+	fromScene, _ := c.GetInt("FromScene", 0)
 
 	var err error
 	if uniqueCode == `` {
@@ -1281,11 +1283,28 @@ func (c *ExcelInfoController) GetExcelTableData() {
 
 	tableData = excel.HandleTableCell(tableData)
 
+	config := response.ExcelTableDetailConfigResp{
+		FontSize: 9,
+	}
+
+	// 获取配置的字体大小
+	confName := models.FromSceneMap[fromScene]
+	if confName != `` {
+		busConf, err := models.GetBusinessConfByKey(confName)
+		if err == nil {
+			sizeDeci, err := decimal.NewFromString(busConf.ConfVal)
+			if err == nil {
+				config.FontSize = int(sizeDeci.IntPart())
+			}
+		}
+	}
+
 	resp := response.ExcelTableDetailResp{
 		UniqueCode: excelInfo.UniqueCode,
 		ExcelImage: excelInfo.ExcelImage,
 		ExcelName:  excelInfo.ExcelName,
 		TableInfo:  tableData,
+		Config:     config,
 	}
 	br.Ret = 200
 	br.Success = true

+ 9 - 0
models/business_conf.go

@@ -52,6 +52,15 @@ const (
 	BusinessConfEmailClientSmtp        = "smtp" // 普通邮箱标记
 )
 
+// FromSceneMap 数据源名称与数据源ID的对应关系
+var FromSceneMap = map[int]string{
+	1: "SmartReportSheetSize",
+	2: "ReportSheetSize",
+	3: "EnReportSheetSize",
+	4: "CnPptSheetSize",
+	5: "EnPptSheetSize",
+}
+
 // BusinessConf 商户配置表
 type BusinessConf struct {
 	Id         int    `orm:"column(id);pk"`

+ 7 - 0
models/data_manage/excel/response/excel_info.go

@@ -26,6 +26,13 @@ type ExcelTableDetailResp struct {
 	ExcelImage string `description:"表格截图"`
 	ExcelName  string `description:"表格名称"`
 	TableInfo  excel.TableData
+	Config     ExcelTableDetailConfigResp
+}
+
+// ExcelTableDetailConfigResp
+// @Description: Excel表格的配置信息
+type ExcelTableDetailConfigResp struct {
+	FontSize int
 }
 
 // TableCellResp 单元格