Browse Source

预测同比值和同差值的编辑修改

xiexiaoyuan 2 years ago
parent
commit
cc372a2577
2 changed files with 42 additions and 1 deletions
  1. 6 1
      models/predict_edb_data_calculate_tbz.go
  2. 36 0
      models/predict_edb_data_calculate_tcz.go

+ 6 - 1
models/predict_edb_data_calculate_tbz.go

@@ -133,7 +133,12 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		if count > 0 { // 指标未被替换,无需重新计算
 			return
 		}
-
+		//删除,计算指标关联的,基础指标的关联关系
+		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
+		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		if err != nil {
+			return
+		}
 
 		// 删除该指标所有的同比数据
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_TBZ)

+ 36 - 0
models/predict_edb_data_calculate_tcz.go

@@ -106,6 +106,42 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 			return
 		}
 
+		//修改指标信息
+		edbInfo.EdbName = edbName
+		edbInfo.EdbNameSource = edbName
+		edbInfo.Frequency = frequency
+		edbInfo.Unit = unit
+		edbInfo.ClassifyId = classifyId
+		edbInfo.ModifyTime = time.Now()
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+		if err != nil {
+			return
+		}
+
+		var existCondition string
+		var existPars []interface{}
+		existCondition += " AND edb_info_id=? AND from_edb_info_id=? "
+		existPars = append(existPars, edbInfo.EdbInfoId, fromEdbInfo.EdbInfoId)
+
+		//判断计算指标是否被更换
+		var count int
+		count, err = GetEdbInfoCalculateCountByCondition(existCondition, existPars)
+		if err != nil {
+			err = errors.New("判断指标是否改变失败,Err:" + err.Error())
+			return
+		}
+		if count > 0 { // 指标未被替换,无需重新计算
+			return
+		}
+
+		//删除,计算指标关联的,基础指标的关联关系
+		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
+		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		if err != nil {
+			return
+		}
+
+
 		// 删除该指标所有的同差数据
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_TCZ)
 		fmt.Println("dataTableName:", dataTableName)