|
@@ -1285,23 +1285,23 @@ func (this *RangeChartChartInfoController) MultipleGraphConfigSaveEdb() {
|
|
|
defer func() {
|
|
|
_ = utils.Rc.Delete(cacheKey)
|
|
|
}()
|
|
|
- edbInfoIds := make([]int, 0)
|
|
|
+ fromEdbInfoIds := make([]int, 0)
|
|
|
for _, v := range req.EdbInfoList {
|
|
|
- edbInfoIds = append(edbInfoIds, v.FromEdbInfoId)
|
|
|
+ fromEdbInfoIds = append(fromEdbInfoIds, v.FromEdbInfoId)
|
|
|
}
|
|
|
- mappingList, err := data_manage.GetChartEdbMappingListByEdbInfoIdList(edbInfoIds)
|
|
|
+ fromEdbInfoMappingList, err := data_manage.GetChartEdbMappingListByEdbInfoIdList(fromEdbInfoIds)
|
|
|
if err != nil {
|
|
|
br.Msg = "获取失败"
|
|
|
br.ErrMsg = "获取图表,指标信息失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- edbInfoMap := make(map[int]*data_manage.ChartEdbInfoMapping, 0)
|
|
|
- for _, v := range mappingList {
|
|
|
- edbInfoMap[v.EdbInfoId] = v
|
|
|
+ fromEdbInfoMap := make(map[int]*data_manage.ChartEdbInfoMapping, 0)
|
|
|
+ for _, v := range fromEdbInfoMappingList {
|
|
|
+ fromEdbInfoMap[v.EdbInfoId] = v
|
|
|
}
|
|
|
|
|
|
for _, v := range req.EdbInfoList {
|
|
|
- if _, ok := edbInfoMap[v.FromEdbInfoId]; !ok {
|
|
|
+ if _, ok := fromEdbInfoMap[v.FromEdbInfoId]; !ok {
|
|
|
br.Msg = "指标信息不存在"
|
|
|
br.ErrMsg = "指标信息不存在,EdbInfoId:" + strconv.Itoa(v.FromEdbInfoId)
|
|
|
br.IsSendEmail = false
|
|
@@ -1309,15 +1309,28 @@ func (this *RangeChartChartInfoController) MultipleGraphConfigSaveEdb() {
|
|
|
}
|
|
|
}
|
|
|
// 区间计算图表配置校验
|
|
|
- /*var extraConfig string
|
|
|
- extraConfigByte, err := json.Marshal(req.ExtraConfig)
|
|
|
+ extraConfig := req.ExtraConfig
|
|
|
+ // 区间计算图表配置校验
|
|
|
+ var config data_manage.ChartRangeAnalysisExtraConf
|
|
|
+ if req.ExtraConfig == `` {
|
|
|
+ br.Msg = "请输入配置信息"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ err = json.Unmarshal([]byte(req.ExtraConfig), &config)
|
|
|
if err != nil {
|
|
|
- br.Msg = "配置信息错误"
|
|
|
- br.ErrMsg = "配置信息错误, Err: " + err.Error()
|
|
|
+ br.Msg = "配置信息格式错误"
|
|
|
+ br.ErrMsg = "配置信息格式错误,Err:" + err.Error()
|
|
|
return
|
|
|
- }*/
|
|
|
- extraConfig := req.ExtraConfig
|
|
|
- // todo 校验配置合法性
|
|
|
+ }
|
|
|
+
|
|
|
+ err, errMsg, isSendEmail := rangeServ.CheckChartRangeExtraConfig(config)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "配置信息校验失败"
|
|
|
+ br.ErrMsg = errMsg
|
|
|
+ br.IsSendEmail = isSendEmail
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
multipleGraphConfigEdbMappingList, err := data_manage.GetMultipleGraphConfigEdbMappingListByIdAndSource(req.MultipleGraphConfigId, utils.CHART_SOURCE_RANGE_ANALYSIS)
|
|
|
if err != nil {
|
|
|
br.Msg = `保存失败`
|
|
@@ -1348,7 +1361,7 @@ func (this *RangeChartChartInfoController) MultipleGraphConfigSaveEdb() {
|
|
|
// 说明指标还在,没有被删除
|
|
|
for _, v := range oldEdbCalculateMappingList {
|
|
|
fromEdbMap[v.FromEdbInfoId] = v.EdbInfoId
|
|
|
- if !utils.InArrayByInt(edbInfoIds, v.FromEdbInfoId) {
|
|
|
+ if !utils.InArrayByInt(fromEdbInfoIds, v.FromEdbInfoId) && (config.EdbInfoMode == 1 || req.EdbInfoType != v.FromEdbInfoType) {
|
|
|
deleteEdbInfoIds = append(deleteEdbInfoIds, v.EdbInfoId)
|
|
|
}
|
|
|
}
|