Browse Source

Merge branch 'replace_math-engine' into debug

hongze 8 months ago
parent
commit
7309f2f5f0
1 changed files with 20 additions and 2 deletions
  1. 20 2
      models/base_from_calculate.go

+ 20 - 2
models/base_from_calculate.go

@@ -601,7 +601,7 @@ func GetFormulaReplace(index, edbInfoId int, formulaStr string, edbInfoIdBytes [
 }
 
 // GetFormulaMap 获取计算公式的map
-func GetFormulaMap() map[string]string {
+func GetFormulaMapBack() map[string]string {
 	funMap := make(map[string]string)
 	funMap["MAX"] = "[@@]"
 	funMap["MIN"] = "[@!]"
@@ -617,6 +617,23 @@ func GetFormulaMap() map[string]string {
 	return funMap
 }
 
+// GetFormulaMap 获取计算公式的map
+func GetFormulaMap() map[string]string {
+	funMap := make(map[string]string)
+	funMap["max"] = "[@@]"
+	funMap["min"] = "[@!]"
+	funMap["abs"] = "[@#]"
+	funMap["ceil"] = "[@$]"
+	funMap["cos"] = "[@%]"
+	funMap["floor"] = "[@^]"
+	funMap["mod"] = "[@&]"
+	funMap["pow"] = "[@*]"
+	funMap["round"] = "[@`]"
+	funMap["le"] = "[@-]"
+	funMap["exp"] = "[@+]"
+	return funMap
+}
+
 // CalculateBatchSaveReq 添加计算指标的请求参数
 type CalculateBatchSaveReq struct {
 	EdbList          []*CalculateEdbInfoItem        //需要批量计算的指标列表
@@ -715,7 +732,8 @@ func CheckFormula2(edbInfoArr []*EdbInfo, formulaMap map[string]string, formulaS
 		valArr[v.EdbInfoId] = 100 + float64(k)
 	}
 
-	formulaStr = strings.ToUpper(formulaStr)
+	//formulaStr = strings.ToUpper(formulaStr)
+	formulaStr = strings.ToLower(formulaStr)
 	// 预设里的max和min无需特殊处理
 	valArrMax := make(map[int]float64)
 	formulaFormStr := ReplaceFormula(edbInfoArr, valArr, valArrMax, formulaMap, formulaStr, edbInfoIdBytes, false)