Browse Source

修改bool转int

317699326@qq.com 2 months ago
parent
commit
5afbcb3dc1

+ 1 - 1
controllers/data_manage/future_good/future_good_chart_info.go

@@ -2999,7 +2999,7 @@ func copyChartInfo(oldChartInfo *data_manage.ChartInfo, chartClassifyId int, cha
 				UniqueCode:  utils.MD5(utils.CHART_PREFIX + "_" + strconv.Itoa(v.EdbInfoId) + timestamp),
 				UniqueCode:  utils.MD5(utils.CHART_PREFIX + "_" + strconv.Itoa(v.EdbInfoId) + timestamp),
 				MaxData:     v.MaxData,
 				MaxData:     v.MaxData,
 				MinData:     v.MinData,
 				MinData:     v.MinData,
-				IsOrder:     utils.GetChartEdbIsOrder(v.IsOrder),
+				IsOrder:     utils.ConvertBoolToInt(v.IsOrder),
 				IsAxis:      v.IsAxis,
 				IsAxis:      v.IsAxis,
 				EdbInfoType: v.EdbInfoType,
 				EdbInfoType: v.EdbInfoType,
 				LeadValue:   v.LeadValue,
 				LeadValue:   v.LeadValue,

+ 1 - 1
controllers/data_manage/future_good/future_good_profit_chart_info.go

@@ -813,7 +813,7 @@ func copyProfitChartInfo(oldChartInfo *data_manage.ChartInfo, chartClassifyId in
 				UniqueCode:  utils.MD5(utils.CHART_PREFIX + "_" + strconv.Itoa(v.EdbInfoId) + strconv.FormatInt(time.Now().UnixNano(), 10)),
 				UniqueCode:  utils.MD5(utils.CHART_PREFIX + "_" + strconv.Itoa(v.EdbInfoId) + strconv.FormatInt(time.Now().UnixNano(), 10)),
 				MaxData:     v.MaxData,
 				MaxData:     v.MaxData,
 				MinData:     v.MinData,
 				MinData:     v.MinData,
-				IsOrder:     utils.GetChartEdbIsOrder(v.IsOrder),
+				IsOrder:     utils.ConvertBoolToInt(v.IsOrder),
 				IsAxis:      v.IsAxis,
 				IsAxis:      v.IsAxis,
 				EdbInfoType: v.EdbInfoType,
 				EdbInfoType: v.EdbInfoType,
 				LeadValue:   v.LeadValue,
 				LeadValue:   v.LeadValue,

+ 4 - 4
models/data_manage/chart_info.go

@@ -1006,7 +1006,7 @@ func ModifyChartInfoAndMapping(edbInfoIdStr string, req *SaveChartInfoReq, chart
 				 predict_chart_color = ?,
 				 predict_chart_color = ?,
 				 chart_width = ?
 				 chart_width = ?
 				WHERE chart_info_id =? AND edb_info_id=? `
 				WHERE chart_info_id =? AND edb_info_id=? `
-			_, err = to.Raw(msql, v.MaxData, v.MinData, utils.GetChartEdbIsOrder(v.IsOrder), v.IsAxis, v.EdbInfoType, v.LeadValue, v.LeadUnit, v.ChartStyle, v.ChartColor, v.PredictChartColor, v.ChartWidth, req.ChartInfoId, v.EdbInfoId).Exec()
+			_, err = to.Raw(msql, v.MaxData, v.MinData, utils.ConvertBoolToInt(v.IsOrder), v.IsAxis, v.EdbInfoType, v.LeadValue, v.LeadUnit, v.ChartStyle, v.ChartColor, v.PredictChartColor, v.ChartWidth, req.ChartInfoId, v.EdbInfoId).Exec()
 			if err != nil {
 			if err != nil {
 				fmt.Println("chart_edb_mapping Err:" + err.Error())
 				fmt.Println("chart_edb_mapping Err:" + err.Error())
 				return err
 				return err
@@ -1021,7 +1021,7 @@ func ModifyChartInfoAndMapping(edbInfoIdStr string, req *SaveChartInfoReq, chart
 			mapItem.UniqueCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp)
 			mapItem.UniqueCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp)
 			mapItem.MaxData = v.MaxData
 			mapItem.MaxData = v.MaxData
 			mapItem.MinData = v.MinData
 			mapItem.MinData = v.MinData
-			mapItem.IsOrder = utils.GetChartEdbIsOrder(v.IsOrder)
+			mapItem.IsOrder = utils.ConvertBoolToInt(v.IsOrder)
 			mapItem.IsAxis = v.IsAxis
 			mapItem.IsAxis = v.IsAxis
 			mapItem.EdbInfoType = v.EdbInfoType
 			mapItem.EdbInfoType = v.EdbInfoType
 			mapItem.LeadValue = v.LeadValue
 			mapItem.LeadValue = v.LeadValue
@@ -1181,7 +1181,7 @@ func EditChartInfoAndMapping(req *EditChartInfoReq, edbInfoIdStr string, calenda
 			tmpChartEdbMapping.ModifyTime = time.Now()
 			tmpChartEdbMapping.ModifyTime = time.Now()
 			tmpChartEdbMapping.MaxData = v.MaxData
 			tmpChartEdbMapping.MaxData = v.MaxData
 			tmpChartEdbMapping.MinData = v.MinData
 			tmpChartEdbMapping.MinData = v.MinData
-			tmpChartEdbMapping.IsOrder = utils.GetChartEdbIsOrder(v.IsOrder)
+			tmpChartEdbMapping.IsOrder = utils.ConvertBoolToInt(v.IsOrder)
 			tmpChartEdbMapping.IsAxis = v.IsAxis
 			tmpChartEdbMapping.IsAxis = v.IsAxis
 			tmpChartEdbMapping.EdbInfoType = v.EdbInfoType
 			tmpChartEdbMapping.EdbInfoType = v.EdbInfoType
 			tmpChartEdbMapping.LeadValue = v.LeadValue
 			tmpChartEdbMapping.LeadValue = v.LeadValue
@@ -1212,7 +1212,7 @@ func EditChartInfoAndMapping(req *EditChartInfoReq, edbInfoIdStr string, calenda
 			mapItem.UniqueCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp + "_" + strconv.Itoa(v.EdbInfoId))
 			mapItem.UniqueCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp + "_" + strconv.Itoa(v.EdbInfoId))
 			mapItem.MaxData = v.MaxData
 			mapItem.MaxData = v.MaxData
 			mapItem.MinData = v.MinData
 			mapItem.MinData = v.MinData
-			mapItem.IsOrder = utils.GetChartEdbIsOrder(v.IsOrder)
+			mapItem.IsOrder = utils.ConvertBoolToInt(v.IsOrder)
 			mapItem.IsAxis = v.IsAxis
 			mapItem.IsAxis = v.IsAxis
 			mapItem.EdbInfoType = v.EdbInfoType
 			mapItem.EdbInfoType = v.EdbInfoType
 			mapItem.LeadValue = v.LeadValue
 			mapItem.LeadValue = v.LeadValue

+ 1 - 1
models/data_manage/excel/request/balance_table.go

@@ -9,7 +9,7 @@ type AddBalanceTableChartEdbItem struct {
 	Unit            string  `description:"指标单位"`
 	Unit            string  `description:"指标单位"`
 	MaxData         float64 `description:"上限"`
 	MaxData         float64 `description:"上限"`
 	MinData         float64 `description:"下限"`
 	MinData         float64 `description:"下限"`
-	IsOrder         int     `description:"1:正序,0:逆序"`
+	IsOrder         bool    `description:"1:正序,0:逆序"`
 	IsAxis          int     `description:"true:左轴,false:右轴"`
 	IsAxis          int     `description:"true:左轴,false:右轴"`
 	EdbInfoType     int     `description:"true:标准指标,false:领先指标"`
 	EdbInfoType     int     `description:"true:标准指标,false:领先指标"`
 	LeadValue       int     `description:"领先值"`
 	LeadValue       int     `description:"领先值"`

+ 34 - 1
models/sandbox/sandbox.go

@@ -317,7 +317,38 @@ func GetSandboxItemsByClassifyId(sandboxClassifyId int) (list []*SandboxClassify
 
 
 func GetSandboxAllParentByClassifyId(sandboxClassifyId int) (ids string, err error) {
 func GetSandboxAllParentByClassifyId(sandboxClassifyId int) (ids string, err error) {
 	o := orm.NewOrmUsingDB("data")
 	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT
+	var sql string
+	if utils.DBDRIVER_NAME == "postgres" {
+		sql = `WITH RECURSIVE classify_path AS (
+    -- 基础情况:从指定的分类ID开始
+    SELECT
+        sandbox_classify_id AS current_id,
+        parent_id,
+        1 AS level
+    FROM
+        sandbox_classify
+    WHERE
+        sandbox_classify_id = ?
+
+    UNION ALL
+
+    -- 递归情况:找到当前ID的父ID,并继续向上查找
+    SELECT
+        sc.sandbox_classify_id,
+        sc.parent_id,
+        cp.level + 1
+    FROM
+        sandbox_classify sc
+    INNER JOIN
+        classify_path cp ON sc.sandbox_classify_id = cp.parent_id
+)
+-- 选择所有找到的ID,并按层级排序
+SELECT
+    STRING_AGG(DISTINCT current_id::TEXT, ',' ORDER BY level) AS ids
+FROM
+    classify_path`
+	} else {
+		sql = `SELECT
 	GROUP_CONCAT(DISTINCT m.sandbox_classify_id  ORDER BY m.level) AS ids 
 	GROUP_CONCAT(DISTINCT m.sandbox_classify_id  ORDER BY m.level) AS ids 
 FROM
 FROM
 	(
 	(
@@ -348,6 +379,8 @@ FROM
 	INNER JOIN sandbox_classify m 
 	INNER JOIN sandbox_classify m 
 WHERE
 WHERE
 	sandbox_classify_id = vm._id `
 	sandbox_classify_id = vm._id `
+	}
+
 	err = o.Raw(sql, sandboxClassifyId).QueryRow(&ids)
 	err = o.Raw(sql, sandboxClassifyId).QueryRow(&ids)
 	return
 	return
 }
 }

+ 1 - 1
services/data/chart_info.go

@@ -2598,7 +2598,7 @@ func AddChartInfo(req data_manage.AddChartInfoReq, sysUserId int, sysUserRealNam
 		mapItem.UniqueCode = utils.MD5(fmt.Sprint(utils.CHART_PREFIX, "_", v.EdbInfoId, "_", edbTimestamp))
 		mapItem.UniqueCode = utils.MD5(fmt.Sprint(utils.CHART_PREFIX, "_", v.EdbInfoId, "_", edbTimestamp))
 		mapItem.MaxData = v.MaxData
 		mapItem.MaxData = v.MaxData
 		mapItem.MinData = v.MinData
 		mapItem.MinData = v.MinData
-		mapItem.IsOrder = utils.GetChartEdbIsOrder(v.IsOrder)
+		mapItem.IsOrder = utils.ConvertBoolToInt(v.IsOrder)
 		mapItem.IsAxis = v.IsAxis
 		mapItem.IsAxis = v.IsAxis
 		mapItem.EdbInfoType = v.EdbInfoType
 		mapItem.EdbInfoType = v.EdbInfoType
 		mapItem.LeadValue = v.LeadValue
 		mapItem.LeadValue = v.LeadValue

+ 2 - 2
services/data/chart_info_excel_balance.go

@@ -77,7 +77,7 @@ func AddBalanceExcelChart(excelInfo *excelModel.ExcelInfo, req request.AddBalanc
 		excelEdb.SysUserRealName = sysUser.RealName
 		excelEdb.SysUserRealName = sysUser.RealName
 		excelEdb.MaxData = chartEdb.MaxData
 		excelEdb.MaxData = chartEdb.MaxData
 		excelEdb.MinData = chartEdb.MinData
 		excelEdb.MinData = chartEdb.MinData
-		excelEdb.IsOrder = chartEdb.IsOrder
+		excelEdb.IsOrder = utils.ConvertBoolToInt(chartEdb.IsOrder)
 		excelEdb.IsAxis = chartEdb.IsAxis
 		excelEdb.IsAxis = chartEdb.IsAxis
 		excelEdb.FromTag = chartEdb.FromTag
 		excelEdb.FromTag = chartEdb.FromTag
 		excelEdb.EdbInfoType = chartEdb.EdbInfoType
 		excelEdb.EdbInfoType = chartEdb.EdbInfoType
@@ -367,7 +367,7 @@ func EditBalanceExcelChart(excelInfo *excelModel.ExcelInfo, req request.AddBalan
 		excelEdb.DataSequence = chartEdb.DataSequenceStr
 		excelEdb.DataSequence = chartEdb.DataSequenceStr
 		excelEdb.MaxData = chartEdb.MaxData
 		excelEdb.MaxData = chartEdb.MaxData
 		excelEdb.MinData = chartEdb.MinData
 		excelEdb.MinData = chartEdb.MinData
-		excelEdb.IsOrder = chartEdb.IsOrder
+		excelEdb.IsOrder = utils.ConvertBoolToInt(chartEdb.IsOrder)
 		excelEdb.IsAxis = chartEdb.IsAxis
 		excelEdb.IsAxis = chartEdb.IsAxis
 		excelEdb.FromTag = chartEdb.FromTag
 		excelEdb.FromTag = chartEdb.FromTag
 		excelEdb.EdbInfoType = chartEdb.EdbInfoType
 		excelEdb.EdbInfoType = chartEdb.EdbInfoType

+ 1 - 1
utils/common.go

@@ -2898,7 +2898,7 @@ type Time struct {
 ////	return dbTime, err
 ////	return dbTime, err
 ////}
 ////}
 
 
-func GetChartEdbIsOrder(isOrderBool bool) int {
+func ConvertBoolToInt(isOrderBool bool) int {
 	if isOrderBool {
 	if isOrderBool {
 		return 1
 		return 1
 	} else {
 	} else {