Bläddra i källkod

Merge branch 'eta/1.7.3' into debug

# Conflicts:
#	controllers/base_from_predict_calculate.go
#	models/base_predict_from_calculate.go
Roc 11 månader sedan
förälder
incheckning
6b987ba786

+ 3 - 3
controllers/base_from_calculate.go

@@ -223,7 +223,7 @@ func (this *CalculateController) Edit() {
 	}
 
 	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
-	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(req.EdbInfoId, req.EdbName, this.Lang)
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(0, req.EdbInfoId, req.EdbName, this.Lang)
 	if err != nil {
 		br.Msg = "判断指标名称是否存在失败"
 		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
@@ -485,7 +485,7 @@ func (this *CalculateController) BatchSave() {
 	//加入缓存机制,避免创建同一个名称的指标 end
 
 	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
-	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(req.EdbInfoId, req.EdbName, this.Lang)
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(0, req.EdbInfoId, req.EdbName, this.Lang)
 	if err != nil {
 		br.Msg = "判断指标名称是否存在失败"
 		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
@@ -837,7 +837,7 @@ func (this *CalculateController) BatchEdit() {
 	}
 
 	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
-	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(req.EdbInfoId, req.EdbName, this.Lang)
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(0, req.EdbInfoId, req.EdbName, this.Lang)
 	if err != nil {
 		br.Msg = "判断指标名称是否存在失败"
 		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()

+ 8 - 8
controllers/base_from_predict.go

@@ -36,14 +36,14 @@ func (this *PredictController) Save() {
 		return
 	}
 	if req.EdbInfoId <= 0 {
-		addPredict(br, req)
+		addPredict(br, req, this.Lang)
 	} else {
-		editPredict(br, req)
+		editPredict(br, req, this.Lang)
 	}
 }
 
-// AddPredictCalculate 添加预测指标运算
-func addPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq) {
+// addPredict 添加预测指标运算
+func addPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq, lang string) {
 	//加入缓存机制,避免创建同一个名称的指标 start
 	redisKey := fmt.Sprint("predict_edb_info:calculate:batch:save:", utils.DATA_SOURCE_PREDICT, ":", req.EdbName)
 	isExist := utils.Rc.IsExist(redisKey)
@@ -59,7 +59,7 @@ func addPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq) {
 	}
 
 	// 添加指标
-	edbInfo, err, errMsg := logic.AddPredictEdbInfo(req.SourceEdbInfoId, req.ClassifyId, req.EdbName, req.DataDateType, req.RuleList, req.MinValue, req.MaxValue, req.AdminId, req.AdminName)
+	edbInfo, err, errMsg := logic.AddPredictEdbInfo(req.SourceEdbInfoId, req.ClassifyId, req.EdbName, req.DataDateType, req.RuleList, req.MinValue, req.MaxValue, req.AdminId, req.AdminName, lang)
 	if err != nil {
 		br.Msg = "保存失败"
 		if errMsg != `` {
@@ -79,8 +79,8 @@ func addPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq) {
 	br.IsAddLog = true
 }
 
-// editPredictCalculate 编辑预测指标运算
-func editPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq) {
+// editPredict 编辑预测指标运算
+func editPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq, lang string) {
 	req.EdbName = strings.Trim(req.EdbName, " ")
 	//加入缓存机制,避免创建同一个名称的指标 start
 	redisKey := fmt.Sprint("predict_edb_info:calculate:batch:save:", utils.DATA_SOURCE_PREDICT, ":", req.EdbName)
@@ -97,7 +97,7 @@ func editPredict(br *models.BaseResponse, req models.AddPredictEdbInfoReq) {
 	}
 
 	// 编辑指标
-	edbInfo, err, errMsg := logic.EditPredictEdbInfo(req.EdbInfoId, req.ClassifyId, req.EdbName, req.DataDateType, req.RuleList, req.MinValue, req.MaxValue)
+	edbInfo, err, errMsg := logic.EditPredictEdbInfo(req.EdbInfoId, req.ClassifyId, req.EdbName, req.DataDateType, req.RuleList, req.MinValue, req.MaxValue, lang)
 	if err != nil {
 		br.Msg = "保存失败"
 		if errMsg != `` {

+ 53 - 68
controllers/base_from_predict_calculate.go

@@ -4,6 +4,7 @@ import (
 	"encoding/json"
 	"eta/eta_index_lib/logic"
 	"eta/eta_index_lib/models"
+	"eta/eta_index_lib/services"
 	"eta/eta_index_lib/utils"
 	"fmt"
 	"strconv"
@@ -35,14 +36,14 @@ func (this *PredictCalculateController) Save() {
 		return
 	}
 	if req.EdbInfoId <= 0 {
-		addPredictCalculate(br, req)
+		addPredictCalculate(br, req, this.Lang)
 	} else {
-		editPredictCalculate(br, req)
+		editPredictCalculate(br, req, this.Lang)
 	}
 }
 
 // AddPredictCalculate 添加预测指标运算
-func addPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSaveReq) {
+func addPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSaveReq, lang string) {
 
 	req.EdbName = strings.Trim(req.EdbName, " ")
 	if req.EdbName == "" {
@@ -125,25 +126,17 @@ func addPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSav
 		}
 	}
 
-	// 判断指标名称是否存在
-	{
-		var condition string
-		var pars []interface{}
-		// 指标类型,0:普通指标,1:预测指标
-		condition += " AND edb_info_type=?  AND edb_name=? "
-		pars = append(pars, 1, req.EdbName)
-
-		count, err := models.GetEdbInfoCountByCondition(condition, pars)
-		if err != nil {
-			br.Msg = "判断指标名称是否存在失败"
-			br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
-			return
-		}
-		if count > 0 {
-			br.Msg = "指标名称已存在,请重新填写"
-			br.ErrMsg = "指标名称已存在,请重新填写"
-			return
-		}
+	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(1, 0, req.EdbName, lang)
+	if err != nil {
+		br.Msg = "判断指标名称是否存在失败"
+		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
+		return
+	}
+	if existEdbName {
+		br.Msg = "指标名称已存在,请重新填写"
+		br.ErrMsg = "指标名称已存在,请重新填写"
+		return
 	}
 
 	// 关联指标信息
@@ -225,6 +218,8 @@ func addPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSav
 		EmptyType:        req.EmptyType,
 		MaxEmptyType:     req.MaxEmptyType,
 		Extra:            req.Extra,
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 	}
 	edbInfoId, err := models.AddEdbInfo(edbInfo)
 	if err != nil {
@@ -294,7 +289,7 @@ func addPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSav
 }
 
 // editPredictCalculate 编辑预测指标运算
-func editPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSaveReq) {
+func editPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSaveReq, lang string) {
 	req.EdbName = strings.Trim(req.EdbName, " ")
 	if req.EdbName == "" {
 		br.Msg = "指标名称不能为空"
@@ -383,25 +378,18 @@ func editPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSa
 		br.ErrMsg = "获取指标信息失败,Err:" + err.Error()
 		return
 	}
-	// 判断指标名称是否存在
-	{
-		var condition string
-		var pars []interface{}
-		// 指标类型,0:普通指标,1:预测指标
-		condition += " AND edb_info_id !=?  AND edb_info_type=?  AND edb_name=? "
-		pars = append(pars, edbInfo.EdbInfoId, edbInfo.EdbInfoType, req.EdbName)
 
-		count, err := models.GetEdbInfoCountByCondition(condition, pars)
-		if err != nil {
-			br.Msg = "判断指标名称是否存在失败"
-			br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
-			return
-		}
-		if count > 0 {
-			br.Msg = "指标名称已存在,请重新填写"
-			br.ErrMsg = "指标名称已存在,请重新填写"
-			return
-		}
+	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(edbInfo.EdbInfoType, edbInfo.EdbInfoId, req.EdbName, lang)
+	if err != nil {
+		br.Msg = "判断指标名称是否存在失败"
+		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
+		return
+	}
+	if existEdbName {
+		br.Msg = "指标名称已存在,请重新填写"
+		br.ErrMsg = "指标名称已存在,请重新填写"
+		return
 	}
 
 	// 关联指标信息
@@ -478,9 +466,15 @@ func editPredictCalculate(br *models.BaseResponse, req models.EdbInfoCalculateSa
 		}
 	}
 
-	edbInfo.EdbName = req.EdbName
+	switch lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.CalculateFormula
 	edbInfo.EmptyType = req.EmptyType
@@ -584,24 +578,14 @@ func (this *PredictCalculateController) CalculateBatchSave() {
 	}
 	//加入缓存机制,避免创建同一个名称的指标 end
 
-	var condition string
-	var pars []interface{}
-	condition += " AND edb_name=? "
-	pars = append(pars, req.EdbName)
-
-	if req.EdbInfoId > 0 {
-		condition += " AND edb_info_id !=? "
-		pars = append(pars, req.EdbInfoId)
-	}
-
-	count, err := models.GetEdbInfoCountByCondition(condition, pars)
+	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(1, req.EdbInfoId, req.EdbName, this.Lang)
 	if err != nil {
 		br.Msg = "判断指标名称是否存在失败"
 		br.ErrMsg = "判断指标名称是否存在失败,Err:" + err.Error()
 		return
 	}
-
-	if count > 0 {
+	if existEdbName {
 		br.Msg = "指标名称已存在,请重新填写"
 		br.ErrMsg = "指标名称已存在,请重新填写"
 		return
@@ -719,6 +703,7 @@ func (this *PredictCalculateController) CalculateBatchSave() {
 		UniqueCode:      uniqueCode,
 		SysUserId:       req.AdminId,
 		SysUserRealName: req.AdminName,
+		Lang:            this.Lang,
 	}
 
 	if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_TBZ {
@@ -746,13 +731,13 @@ func (this *PredictCalculateController) CalculateBatchSave() {
 			}
 		}
 		sourName = "预测同差"
-		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateTcz(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateTcz(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_NSZYDPJJS {
 		sourName = "预测N数值移动平均计算"
-		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateNszydpjjs(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateNszydpjjs(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_BP {
 		sourName = "预测变频"
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateBp(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateBp(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_HBZ {
 		checkDataList, tmpErr := models.GetPredictEdbDataListAllByStartDate(fromEdbInfo, 0, "")
 		if tmpErr != nil && tmpErr.Error() != utils.ErrNoRow() {
@@ -768,23 +753,23 @@ func (this *PredictCalculateController) CalculateBatchSave() {
 			}
 		}
 		sourName = "预测环比值"
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateHbz(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateHbz(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_HCZ {
 		sourName = "预测环差值"
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateHcz(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateHcz(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_LJZZY {
 		sourName = "预测累计值转月值"
 		if fromEdbInfo.Frequency != "月度" {
 			br.Msg = "请选择月度指标"
 			return
 		}
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateLjzzy(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateLjzzy(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_TIME_SHIFT {
 		sourName = "预测时间移位"
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateTimeShift(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateTimeShift(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_CJJX {
 		sourName = "预测超季节性"
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateCjjx(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateCjjx(&req, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, formulaInt, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_NHCC {
 		sourName = "预测拟合残差"
 		secondEdbInfoReq := req.EdbInfoIdArr[1]
@@ -800,16 +785,16 @@ func (this *PredictCalculateController) CalculateBatchSave() {
 			br.ErrMsg = "两个指标不允许为同一个"
 			return
 		}
-		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateNhcc(&req, fromEdbInfo, secondEdbInfo, edbCode, uniqueCode, nhccDate, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err = models.SavePredictCalculateNhcc(&req, fromEdbInfo, secondEdbInfo, edbCode, uniqueCode, nhccDate, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_JP {
 		sourName = utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_JP
-		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateJp(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateJp(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_NH {
 		sourName = utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_NH
-		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateNh(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateNh(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, fromEdbInfo, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else if req.Source == utils.DATA_SOURCE_PREDICT_CALCULATE_KSZS {
 		sourName = utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_KSZS
-		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateKszs(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, req.EdbInfoIdArr, edbCode, uniqueCode, adminId, adminName)
+		edbInfo, latestDateStr, latestValue, err, errMsg = models.SavePredictCalculateKszs(req.EdbInfoId, req.ClassifyId, req.EdbName, req.Frequency, req.Unit, req.Formula, req.EdbInfoIdArr, edbCode, uniqueCode, adminId, adminName, this.Lang)
 	} else {
 		// 获取通用的数据源处理服务
 		baseEdbInfoModel = models.GetBasePredictEdbInfoModel(req.Source)

+ 19 - 31
logic/predict_edb.go

@@ -3,6 +3,7 @@ package logic
 import (
 	"errors"
 	"eta/eta_index_lib/models"
+	"eta/eta_index_lib/services"
 	"eta/eta_index_lib/utils"
 	"fmt"
 	"strconv"
@@ -11,7 +12,7 @@ import (
 )
 
 // AddPredictEdbInfo 新增预测指标
-func AddPredictEdbInfo(sourceEdbInfoId, classifyId int, edbName, dataDateType string, ruleList []models.RuleConfig, minValue, maxValue float64, sysUserId int, sysUserName string) (edbInfo *models.EdbInfo, err error, errMsg string) {
+func AddPredictEdbInfo(sourceEdbInfoId, classifyId int, edbName, dataDateType string, ruleList []models.RuleConfig, minValue, maxValue float64, sysUserId int, sysUserName, lang string) (edbInfo *models.EdbInfo, err error, errMsg string) {
 	var sourceEdbInfo *models.EdbInfo
 	// 来源指标信息校验
 	{
@@ -65,22 +66,14 @@ func AddPredictEdbInfo(sourceEdbInfoId, classifyId int, edbName, dataDateType st
 
 	edbCode := sourceEdbInfo.EdbCode + "_" + time.Now().Format(utils.FormatShortDateTimeUnSpace)
 
-	//判断指标名称是否存在
-	var condition string
-	var pars []interface{}
-	condition += " AND edb_info_type=? "
-	pars = append(pars, 1)
-
-	condition += " AND edb_name=? "
-	pars = append(pars, edbName)
-
-	count, err := models.GetEdbInfoCountByCondition(condition, pars)
+	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(0, 0, edbName, lang)
 	if err != nil {
 		errMsg = "判断指标名称是否存在失败"
 		err = errors.New("判断指标名称是否存在失败,Err:" + err.Error())
 		return
 	}
-	if count > 0 {
+	if existEdbName {
 		errMsg = "指标名称已存在,请重新填写"
 		err = errors.New(errMsg)
 		return
@@ -118,6 +111,8 @@ func AddPredictEdbInfo(sourceEdbInfoId, classifyId int, edbName, dataDateType st
 		MoveFrequency: sourceEdbInfo.MoveFrequency,
 		NoUpdate:      sourceEdbInfo.NoUpdate,
 		ServerUrl:     "",
+		EdbNameEn:     edbName,
+		UnitEn:        sourceEdbInfo.UnitEn,
 		DataDateType:  dataDateType,
 	}
 
@@ -407,7 +402,7 @@ func AddPredictEdbInfo(sourceEdbInfoId, classifyId int, edbName, dataDateType st
 }
 
 // EditPredictEdbInfo 编辑预测指标
-func EditPredictEdbInfo(edbInfoId, classifyId int, edbName, dataDateType string, ruleList []models.RuleConfig, minValue, maxValue float64) (edbInfo *models.EdbInfo, err error, errMsg string) {
+func EditPredictEdbInfo(edbInfoId, classifyId int, edbName, dataDateType string, ruleList []models.RuleConfig, minValue, maxValue float64, lang string) (edbInfo *models.EdbInfo, err error, errMsg string) {
 	// 指标信息校验
 	{
 		edbInfo, err = models.GetEdbInfoById(edbInfoId)
@@ -447,27 +442,14 @@ func EditPredictEdbInfo(edbInfoId, classifyId int, edbName, dataDateType string,
 		predictEdbConf = predictEdbConfList[0]
 	}
 
-	//判断指标名称是否存在
-	var condition string
-	var pars []interface{}
-
-	condition += " AND edb_info_id<>? "
-	pars = append(pars, edbInfoId)
-
-	condition += " AND edb_info_type=? "
-	pars = append(pars, 1)
-
-	condition += " AND edb_name=? "
-	pars = append(pars, edbName)
-
-	count, err := models.GetEdbInfoCountByCondition(condition, pars)
+	// 根据指标名称和指标ID校验库中是否还存在其他同名指标
+	existEdbName, err := services.CheckExistByEdbNameAndEdbInfoId(1, edbInfoId, edbName, lang)
 	if err != nil {
 		errMsg = "判断指标名称是否存在失败"
 		err = errors.New("判断指标名称是否存在失败,Err:" + err.Error())
 		return
 	}
-
-	if count > 0 {
+	if existEdbName {
 		errMsg = "指标名称已存在,请重新填写"
 		err = errors.New(errMsg)
 		return
@@ -476,14 +458,20 @@ func EditPredictEdbInfo(edbInfoId, classifyId int, edbName, dataDateType string,
 	if dataDateType == `` {
 		dataDateType = `自然日`
 	}
-	edbInfo.EdbName = edbName
+	switch lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = edbName
+	default:
+		edbInfo.EdbName = edbName
+
+	}
 	edbInfo.EdbNameSource = edbName
 	edbInfo.ClassifyId = classifyId
 	edbInfo.MinValue = minValue
 	edbInfo.MaxValue = maxValue
 	edbInfo.DataDateType = dataDateType
 	edbInfo.ModifyTime = time.Now()
-	updateEdbInfoCol := []string{"EdbName", "EdbNameSource", "ClassifyId", "EndDate", "MinValue", "MaxValue", "DataDateType", "ModifyTime"}
+	updateEdbInfoCol := []string{"EdbName", "EdbNameEn", "EdbNameSource", "ClassifyId", "EndDate", "MinValue", "MaxValue", "DataDateType", "ModifyTime"}
 
 	var sourceEdbInfo *models.EdbInfo
 	// 来源指标信息校验

+ 1 - 1
models/base_predict_from_calculate.go

@@ -60,7 +60,7 @@ func EditPredictCalculate(edbInfo *EdbInfo, calculateMappingList []*EdbInfoCalcu
 	}()
 
 	// 修改指标信息
-	_, err = to.Update(edbInfo, "EdbName", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "EmptyType", "MaxEmptyType", "Extra")
+	_, err = to.Update(edbInfo, "EdbName", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "EmptyType", "MaxEmptyType", "Extra", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 1 - 0
models/common.go

@@ -73,6 +73,7 @@ type BatchSaveCalculateBatchParams struct {
 	UniqueCode      string
 	SysUserId       int
 	SysUserRealName string
+	Lang            string
 }
 
 // BasePredictEdbInfoInterface 基础指标接口

+ 14 - 5
models/predict_edb_data_calculate_bp.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateBp 变频
-func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -42,6 +42,8 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 		edbInfo.CreateTime = time.Now()
 		edbInfo.ModifyTime = time.Now()
 		edbInfo.UniqueCode = uniqueCode
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.EdbType = 2
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
@@ -79,13 +81,20 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 		latestDateStr = edbInfo.LatestDate
 		latestValue = edbInfo.LatestValue
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
+
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 5
models/predict_edb_data_calculate_cjjx.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateCjjx 超季节性
-func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -45,6 +45,8 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		edbInfo.UniqueCode = uniqueCode
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.Calendar = req.Calendar
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
 		if tmpErr != nil {
@@ -88,15 +90,21 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		latestDateStr = edbInfo.LatestDate
 		latestValue = edbInfo.LatestValue
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.Calendar = req.Calendar
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 5
models/predict_edb_data_calculate_hbz.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateHbz 新增环比值指标
-func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -43,6 +43,8 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.ModifyTime = time.Now()
 		edbInfo.UniqueCode = uniqueCode
 		edbInfo.CalculateFormula = req.Formula
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
 		if tmpErr != nil {
@@ -81,14 +83,20 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		oldCalculateFormula := edbInfo.CalculateFormula
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_HBZ, utils.DATA_SUB_SOURCE_EDB)
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 5
models/predict_edb_data_calculate_hcz.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateHcz 新增环差值指标
-func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -43,6 +43,8 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.ModifyTime = time.Now()
 		edbInfo.UniqueCode = uniqueCode
 		edbInfo.CalculateFormula = req.Formula
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
 		if tmpErr != nil {
@@ -81,14 +83,20 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		latestValue = edbInfo.LatestValue
 		oldCalculateFormula := edbInfo.CalculateFormula
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 7
models/predict_edb_data_calculate_jp.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateJp 预测降频值
-func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
+func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -56,8 +56,8 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 			MoveFrequency:    "",
 			NoUpdate:         0,
 			ServerUrl:        "",
-			EdbNameEn:        "",
-			UnitEn:           "",
+			EdbNameEn:        edbName,
+			UnitEn:           unit,
 			LatestDate:       "",
 			LatestValue:      0,
 			ChartImage:       "",
@@ -110,14 +110,20 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 		latestValue = edbInfo.LatestValue
 		oldCalculateFormula := edbInfo.CalculateFormula
 		//修改指标信息
-		edbInfo.EdbName = edbName
-		edbInfo.EdbNameSource = edbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = edbName
+			edbInfo.UnitEn = unit
+		default:
+			edbInfo.EdbName = edbName
+			edbInfo.Unit = unit
+			edbInfo.EdbNameSource = edbName
+		}
 		edbInfo.Frequency = frequency
-		edbInfo.Unit = unit
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 7
models/predict_edb_data_calculate_kszs.go

@@ -13,7 +13,7 @@ import (
 )
 
 // SavePredictCalculateKszs 预测扩散指数
-func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, relationCalculateEdbInfoIdList []EdbInfoCalculateEdbInfoIdReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
+func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, relationCalculateEdbInfoIdList []EdbInfoCalculateEdbInfoIdReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -59,8 +59,8 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 			MoveFrequency:    "",
 			NoUpdate:         0,
 			ServerUrl:        "",
-			EdbNameEn:        "",
-			UnitEn:           "",
+			EdbNameEn:        edbName,
+			UnitEn:           unit,
 			LatestDate:       "",
 			LatestValue:      0,
 			ChartImage:       "",
@@ -118,14 +118,20 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 			return
 		}
 		//修改指标信息
-		edbInfo.EdbName = edbName
-		edbInfo.EdbNameSource = edbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = edbName
+			edbInfo.UnitEn = unit
+		default:
+			edbInfo.EdbName = edbName
+			edbInfo.Unit = unit
+			edbInfo.EdbNameSource = edbName
+		}
 		edbInfo.Frequency = frequency
-		edbInfo.Unit = unit
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 12 - 6
models/predict_edb_data_calculate_ljz.go

@@ -74,8 +74,8 @@ func (obj PredictLjz) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInf
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -159,13 +159,19 @@ func (obj PredictLjz) Edit(params BatchSaveCalculateBatchParams) (latestDateStr
 		isRecalculate = true
 	}
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 12 - 6
models/predict_edb_data_calculate_ljznczj.go

@@ -73,8 +73,8 @@ func (obj PredictLjzNczj) Add(params BatchSaveCalculateBatchParams) (edbInfo *Ed
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -157,13 +157,19 @@ func (obj PredictLjzNczj) Edit(params BatchSaveCalculateBatchParams) (latestDate
 		isRecalculate = true
 	}
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 12 - 4
models/predict_edb_data_calculate_ljzzj.go

@@ -56,6 +56,8 @@ func (obj PredictLjzzj) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbI
 	edbInfo.ModifyTime = time.Now()
 	edbInfo.UniqueCode = params.UniqueCode
 	edbInfo.CalculateFormula = req.Formula
+	edbInfo.EdbNameEn = req.EdbName
+	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = 2
 	newEdbInfoId, tmpErr := to.Insert(edbInfo)
 	if tmpErr != nil {
@@ -122,13 +124,19 @@ func (obj PredictLjzzj) Edit(params BatchSaveCalculateBatchParams) (latestDateSt
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 13 - 5
models/predict_edb_data_calculate_ljzzy.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateLjzzy 累计值转月
-func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -44,6 +44,8 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 		edbInfo.ModifyTime = time.Now()
 		edbInfo.UniqueCode = uniqueCode
 		edbInfo.CalculateFormula = req.Formula
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
 		if tmpErr != nil {
@@ -81,13 +83,19 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 		latestDateStr = edbInfo.LatestDate
 		latestValue = edbInfo.LatestValue
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 7
models/predict_edb_data_calculate_nh.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateNh 预测年化值
-func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
+func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -56,8 +56,8 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 			MoveFrequency:    "",
 			NoUpdate:         0,
 			ServerUrl:        "",
-			EdbNameEn:        "",
-			UnitEn:           "",
+			EdbNameEn:        edbName,
+			UnitEn:           unit,
 			LatestDate:       "",
 			LatestValue:      0,
 			ChartImage:       "",
@@ -109,14 +109,20 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 		latestDateStr = edbInfo.LatestDate
 		latestValue = edbInfo.LatestValue
 		//修改指标信息
-		edbInfo.EdbName = edbName
-		edbInfo.EdbNameSource = edbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = edbName
+			edbInfo.UnitEn = unit
+		default:
+			edbInfo.EdbName = edbName
+			edbInfo.Unit = unit
+			edbInfo.EdbNameSource = edbName
+		}
 		edbInfo.Frequency = frequency
-		edbInfo.Unit = unit
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 5
models/predict_edb_data_calculate_nhcc.go

@@ -25,7 +25,7 @@ type EdbDataPredictCalculateNhcc struct {
 }
 
 // SavePredictCalculateNhcc 新增拟合残差数据
-func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, nhccDate NhccDate, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, nhccDate NhccDate, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -59,6 +59,8 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			CreateTime:       time.Now(),
 			ModifyTime:       time.Now(),
 			CalculateFormula: req.Formula,
+			EdbNameEn:        req.EdbName,
+			UnitEn:           req.Unit,
 			EdbType:          2,
 		}
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
@@ -130,14 +132,20 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 		nowEdbInfo := *edbInfo // 现在的指标信息
 
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 14 - 7
models/predict_edb_data_calculate_nszydbpjjs.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateNszydpjjs 新增/编辑 预测 N数值移动平均计算指标
-func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
+func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -62,8 +62,8 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 			MoveFrequency:    "",
 			NoUpdate:         0,
 			ServerUrl:        "",
-			EdbNameEn:        "",
-			UnitEn:           "",
+			EdbNameEn:        edbName,
+			UnitEn:           unit,
 			LatestDate:       "",
 			LatestValue:      0,
 			ChartImage:       "",
@@ -116,14 +116,21 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 		latestValue = edbInfo.LatestValue
 		oldCalculateFormula := edbInfo.CalculateFormula //原先的n值
 
-		edbInfo.EdbName = edbName
-		edbInfo.EdbNameSource = edbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = edbName
+			edbInfo.UnitEn = unit
+		default:
+			edbInfo.EdbName = edbName
+			edbInfo.Unit = unit
+			edbInfo.EdbNameSource = edbName
+		}
+
 		edbInfo.Frequency = frequency
-		edbInfo.Unit = unit
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 12 - 6
models/predict_edb_data_calculate_percentile.go

@@ -64,8 +64,8 @@ func (obj PredictPercentile) Add(params BatchSaveCalculateBatchParams) (edbInfo
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -136,14 +136,20 @@ func (obj PredictPercentile) Edit(params BatchSaveCalculateBatchParams) (latestD
 		isRecalculate = true
 	}
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 12 - 6
models/predict_edb_data_calculate_standard_deviation.go

@@ -63,8 +63,8 @@ func (obj PredictStandardDeviation) Add(params BatchSaveCalculateBatchParams) (e
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -147,14 +147,20 @@ func (obj PredictStandardDeviation) Edit(params BatchSaveCalculateBatchParams) (
 		isRecalculate = true
 	}
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 12 - 6
models/predict_edb_data_calculate_tbz.go

@@ -63,8 +63,8 @@ func (obj PredictTb) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInfo
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -145,13 +145,19 @@ func (obj PredictTb) Edit(params BatchSaveCalculateBatchParams) (latestDateStr s
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 14 - 7
models/predict_edb_data_calculate_tcz.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateTcz 同差值
-func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
+func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -56,8 +56,8 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 			MoveFrequency:    "",
 			NoUpdate:         0,
 			ServerUrl:        "",
-			EdbNameEn:        "",
-			UnitEn:           "",
+			EdbNameEn:        edbName,
+			UnitEn:           unit,
 			LatestDate:       "",
 			LatestValue:      0,
 			ChartImage:       "",
@@ -108,13 +108,20 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		latestDateStr = edbInfo.LatestDate
 		latestValue = edbInfo.LatestValue
 		//修改指标信息
-		edbInfo.EdbName = edbName
-		edbInfo.EdbNameSource = edbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = edbName
+			edbInfo.UnitEn = unit
+		default:
+			edbInfo.EdbName = edbName
+			edbInfo.Unit = unit
+			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")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 13 - 5
models/predict_edb_data_calculate_time_shift.go

@@ -12,7 +12,7 @@ import (
 )
 
 // SavePredictCalculateTimeShift 时间移位
-func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
+func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
 	o := orm.NewOrm()
 	to, err := o.Begin()
 	if err != nil {
@@ -47,6 +47,8 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 		edbInfo.EdbType = 2
 		edbInfo.MoveType = req.MoveType
 		edbInfo.MoveFrequency = req.MoveFrequency
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
 		newEdbInfoId, tmpErr := to.Insert(edbInfo)
 		if tmpErr != nil {
 			err = tmpErr
@@ -84,16 +86,22 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 		oldEdbInfo := *edbInfo //旧的指标信息
 
 		//修改指标信息
-		edbInfo.EdbName = req.EdbName
-		edbInfo.EdbNameSource = req.EdbName
+		switch lang {
+		case utils.EnLangVersion:
+			edbInfo.EdbNameEn = req.EdbName
+			edbInfo.UnitEn = req.Unit
+		default:
+			edbInfo.EdbName = req.EdbName
+			edbInfo.Unit = req.Unit
+			edbInfo.EdbNameSource = req.EdbName
+		}
 		edbInfo.Frequency = req.Frequency
-		edbInfo.Unit = req.Unit
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.MoveType = req.MoveType
 		edbInfo.MoveFrequency = req.MoveFrequency
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime")
+		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 		if err != nil {
 			return
 		}

+ 12 - 6
models/predict_edb_data_calculate_zsxy.go

@@ -68,8 +68,8 @@ func (obj PredictExponentialSmoothing) Add(params BatchSaveCalculateBatchParams)
 		NoUpdate:         0,
 		ServerUrl:        "",
 		EdbInfoType:      1,
-		EdbNameEn:        "",
-		UnitEn:           "",
+		EdbNameEn:        req.EdbName,
+		UnitEn:           req.Unit,
 		LatestDate:       "",
 		LatestValue:      0,
 		ChartImage:       "",
@@ -139,14 +139,20 @@ func (obj PredictExponentialSmoothing) Edit(params BatchSaveCalculateBatchParams
 		isRecalculate = true
 	}
 	//修改指标信息
-	edbInfo.EdbName = req.EdbName
-	edbInfo.EdbNameSource = req.EdbName
+	switch params.Lang {
+	case utils.EnLangVersion:
+		edbInfo.EdbNameEn = req.EdbName
+		edbInfo.UnitEn = req.Unit
+	default:
+		edbInfo.EdbName = req.EdbName
+		edbInfo.Unit = req.Unit
+		edbInfo.EdbNameSource = req.EdbName
+	}
 	edbInfo.Frequency = req.Frequency
-	edbInfo.Unit = req.Unit
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
 	if err != nil {
 		return
 	}

+ 14 - 6
services/base_from_calculate.go

@@ -899,7 +899,7 @@ func EdbCalculateAdd(req models.EdbInfoCalculateSaveReq, lang string) (edbInfo *
 	}
 
 	// 校验指标名称是否存在
-	existEdbName, err := checkExistByEdbName(req.EdbName, lang)
+	existEdbName, err := CheckExistByEdbNameAndEdbInfoId(0, 0, req.EdbName, lang)
 	if err != nil {
 		errMsg = "判断指标名称是否存在失败,Err:" + err.Error()
 		err = fmt.Errorf("判断指标名称是否存在失败")
@@ -1015,14 +1015,18 @@ func EdbCalculateAdd(req models.EdbInfoCalculateSaveReq, lang string) (edbInfo *
 // @Description: 根据指标名称校验该指标是否存在库中
 // @author: Roc
 // @datetime 2024-04-18 14:58:52
+// @param edbInfoType int
 // @param edbName string
 // @param lang string
 // @return has bool
 // @return err error
-func checkExistByEdbName(edbName, lang string) (has bool, err error) {
+func checkExistByEdbName(edbInfoType int, edbName, lang string) (has bool, err error) {
 	var condition string
 	var pars []interface{}
 
+	condition += " AND edb_info_type=? "
+	pars = append(pars, 0)
+
 	switch lang {
 	case utils.EnLangVersion:
 		condition += " AND edb_name_en = ? "
@@ -1049,14 +1053,17 @@ func checkExistByEdbName(edbName, lang string) (has bool, err error) {
 // @Description: 根据指标名称和指标ID校验库中是否还存在其他同名指标
 // @author: Roc
 // @datetime 2024-04-18 15:00:19
+// @param edbInfoType int
 // @param edbInfoId int
 // @param edbName string
 // @param lang string
 // @return has bool
 // @return err error
-func checkExistByEdbNameAndEdbInfoId(edbInfoId int, edbName, lang string) (has bool, err error) {
+func checkExistByEdbNameAndEdbInfoId(edbInfoType, edbInfoId int, edbName, lang string) (has bool, err error) {
 	var condition string
 	var pars []interface{}
+	condition += " AND edb_info_type=? "
+	pars = append(pars, edbInfoType)
 
 	condition += " AND edb_info_id<>? "
 	pars = append(pars, edbInfoId)
@@ -1087,17 +1094,18 @@ func checkExistByEdbNameAndEdbInfoId(edbInfoId int, edbName, lang string) (has b
 // @Description: 根据指标名称和指标ID校验库中是否还存在其他同名指标
 // @author: Roc
 // @datetime 2024-04-18 15:01:44
+// @param edbInfoType int
 // @param edbInfoId int
 // @param edbName string
 // @param lang string
 // @return has bool
 // @return err error
-func CheckExistByEdbNameAndEdbInfoId(edbInfoId int, edbName, lang string) (has bool, err error) {
+func CheckExistByEdbNameAndEdbInfoId(edbInfoType, edbInfoId int, edbName, lang string) (has bool, err error) {
 	// 指标没有入库的情况
 	if edbInfoId == 0 {
-		return checkExistByEdbName(edbName, lang)
+		return checkExistByEdbName(edbInfoType, edbName, lang)
 	}
 
 	//指标已经入库的情况
-	return checkExistByEdbNameAndEdbInfoId(edbInfoId, edbName, lang)
+	return checkExistByEdbNameAndEdbInfoId(edbInfoType, edbInfoId, edbName, lang)
 }