Forráskód Böngészése

fix:拟合方程曲线支持英文版

Roc 10 hónapja
szülő
commit
b8839e6e67

+ 123 - 2
controllers/data_manage/line_equation/line_chart_info.go

@@ -160,7 +160,7 @@ func (this *LineEquationChartInfoController) Save() {
 
 	resp := new(data_manage.AddChartInfoResp)
 	if req.MultipleGraphConfigId <= 0 {
-		batchAddChartList, err, errMsg, isSendEmail := line_equation.BatchAddChartInfo(req.BatchAddChart, req.ExtraConfig, sysUser)
+		batchAddChartList, err, errMsg, isSendEmail := line_equation.BatchAddChartInfo(req.BatchAddChart, req.ExtraConfig, sysUser, this.Lang)
 		if err != nil {
 			br.Msg = "保存失败"
 			if errMsg != `` {
@@ -1157,7 +1157,7 @@ func (this *LineEquationChartInfoController) Copy() {
 	})
 
 	resp := new(data_manage.AddChartInfoResp)
-	batchAddChartList, err, errMsg, isSendEmail := line_equation.BatchAddChartInfo(addChartList, lineChartInfoConf, sysUser)
+	batchAddChartList, err, errMsg, isSendEmail := line_equation.BatchAddChartInfo(addChartList, lineChartInfoConf, sysUser, this.Lang)
 	if err != nil {
 		br.Msg = "保存失败"
 		if errMsg != `` {
@@ -1664,3 +1664,124 @@ func (this *LineEquationChartInfoController) SearchByEs() {
 	br.Msg = "获取成功"
 	br.Data = resp
 }
+
+// BaseInfoEdit
+// @Title 编辑图表基础信息接口
+// @Description 编辑图表基础信息接口
+// @Param	request	body data_manage.EditChartBaseInfoReq true "type json string"
+// @Success Ret=200 编辑成功
+// @router /chart_info/base/edit [post]
+func (this *LineEquationChartInfoController) BaseInfoEdit() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+	var req request.EditChartBaseInfoReq
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+	req.ChartName = strings.Trim(req.ChartName, " ")
+	if req.ChartInfoId <= 0 {
+		br.Msg = "请选择图表"
+		return
+	}
+	if req.ChartName == "" {
+		br.Msg = "请输入英文图表名称"
+		return
+	}
+
+	//判断指标名称是否存在
+	chartItem, err := data_manage.GetChartInfoById(req.ChartInfoId)
+	if err != nil {
+		if err.Error() == utils.ErrNoRow() {
+			br.Msg = "图表已被删除,请刷新页面"
+			br.ErrMsg = "图表已被删除,请刷新页面"
+			return
+		}
+		br.Msg = "获取图表信息失败"
+		br.ErrMsg = "获取图表信息失败,Err:" + err.Error()
+		return
+	}
+
+	// 校验名称是否有重复
+	{
+		var condition string
+		var pars []interface{}
+		condition += " AND chart_info_id <> ? AND source = ? "
+		pars = append(pars, req.ChartInfoId, utils.CHART_SOURCE_LINE_EQUATION)
+		switch this.Lang {
+		case utils.EnLangVersion:
+			condition += "  AND chart_name_en = ? "
+		default:
+			condition += " AND chart_name = ? "
+		}
+		pars = append(pars, req.ChartName)
+		existItem, err := data_manage.GetChartInfoByCondition(condition, pars)
+		if err != nil {
+			if err.Error() != utils.ErrNoRow() {
+				br.Msg = "判断英文图表名称是否存在失败"
+				br.ErrMsg = "判断英文图表名称是否存在失败,Err:" + err.Error()
+				return
+			}
+		}
+		if err == nil && existItem.ChartInfoId > 0 {
+			br.Msg = existItem.ChartName + ":" + req.ChartName + "图表名称已存在"
+			return
+		}
+	}
+	switch this.Lang {
+	case utils.EnLangVersion:
+		chartItem.ChartNameEn = req.ChartName
+	default:
+		chartItem.ChartName = req.ChartName
+	}
+	chartItem.ModifyTime = time.Now().Local()
+	if e := chartItem.Update([]string{"ChartName", "ChartNameEn", "ModifyTime"}); e != nil {
+		br.Msg = "操作失败"
+		br.ErrMsg = "更新图表信息失败, Err: " + e.Error()
+		return
+	}
+
+	//添加es数据
+	go data.EsAddOrEditChartInfo(chartItem.ChartInfoId)
+	//修改my eta es数据
+	go data.EsAddOrEditMyChartInfoByChartInfoId(chartItem.ChartInfoId)
+
+	//新增操作日志
+	{
+		chartLog := new(data_manage.ChartInfoLog)
+		chartLog.ChartName = chartItem.ChartName
+		chartLog.ChartInfoId = req.ChartInfoId
+		chartLog.ChartClassifyId = chartItem.ChartClassifyId
+		chartLog.SysUserId = sysUser.AdminId
+		chartLog.SysUserRealName = sysUser.RealName
+		chartLog.UniqueCode = chartItem.UniqueCode
+		chartLog.CreateTime = time.Now()
+		chartLog.Content = string(this.Ctx.Input.RequestBody)
+		chartLog.Status = "编辑拟合方程图表基础信息"
+		chartLog.Method = this.Ctx.Input.URL()
+		go data_manage.AddChartInfoLog(chartLog)
+	}
+
+	// 清除缓存
+	if utils.Re == nil && utils.Rc != nil {
+		_ = utils.Rc.Delete(utils.HZ_CHART_LIB_DETAIL + chartItem.UniqueCode) //图表分享链接缓存
+		_ = utils.Rc.Delete(data.GetChartInfoDataKey(req.ChartInfoId))
+	}
+
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "编辑成功"
+	br.IsAddLog = true
+}

+ 6 - 0
models/data_manage/line_equation/request/line_equation.go

@@ -36,3 +36,9 @@ type EditChartEnInfoReq struct {
 	ChartInfoId int    `description:"图表ID"`
 	ChartNameEn string `description:"英文图表名称"`
 }
+
+// EditChartBaseInfoReq 编辑图表基础信息
+type EditChartBaseInfoReq struct {
+	ChartInfoId int    `description:"图表ID"`
+	ChartName   string `description:"图表名称(根据当前语言版本不同而不同)"`
+}

+ 9 - 0
routers/commentsRouter.go

@@ -1366,6 +1366,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/line_equation:LineEquationChartInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/line_equation:LineEquationChartInfoController"],
+        beego.ControllerComments{
+            Method: "BaseInfoEdit",
+            Router: `/chart_info/base/edit`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/line_equation:LineEquationChartInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/line_equation:LineEquationChartInfoController"],
         beego.ControllerComments{
             Method: "Copy",

+ 27 - 19
services/data/line_equation/chart_info.go

@@ -366,7 +366,7 @@ func handleData(baseEdbInfoId int, edbDataListMap map[int][]*data_manage.EdbData
 }
 
 // BatchAddChartInfo 批量添加图表
-func BatchAddChartInfo(batchAddChartReq []request.AddChart, lineChartInfoConfig request.LineChartInfoReq, sysUser *system.Admin) (batchAddChartList []line_equation.BatchAddChart, err error, errMsg string, isSendEmail bool) {
+func BatchAddChartInfo(batchAddChartReq []request.AddChart, lineChartInfoConfig request.LineChartInfoReq, sysUser *system.Admin, lang string) (batchAddChartList []line_equation.BatchAddChart, err error, errMsg string, isSendEmail bool) {
 	source := utils.CHART_SOURCE_LINE_EQUATION
 	// 获取需要
 	for k, v := range batchAddChartReq {
@@ -406,22 +406,30 @@ func BatchAddChartInfo(batchAddChartReq []request.AddChart, lineChartInfoConfig
 		}
 
 		// 判断图表是否存在
-		var condition string
-		var pars []interface{}
-		condition += " AND chart_name=? AND source = ? "
-		pars = append(pars, v.ChartName, source)
-		count, tmpErr := data_manage.GetChartInfoCountByCondition(condition, pars)
-		if tmpErr != nil {
-			errMsg = "判断图表名称是否存在失败"
-			err = errors.New("判断图表名称是否存在失败,Err:" + tmpErr.Error())
-			return
-		}
+		{
+			var condition string
+			var pars []interface{}
+			switch lang {
+			case utils.EnLangVersion:
+				condition += " AND chart_name_en = ? AND source = ? "
+			default:
+				condition += " AND chart_name = ? AND source = ? "
+			}
+			pars = append(pars, v.ChartName, source)
+			count, tmpErr := data_manage.GetChartInfoCountByCondition(condition, pars)
+			if tmpErr != nil {
+				errMsg = "判断图表名称是否存在失败"
+				err = errors.New("判断图表名称是否存在失败,Err:" + tmpErr.Error())
+				return
+			}
+
+			if count > 0 {
+				errMsg = "图表已存在,请重新填写"
+				err = errors.New(errMsg)
+				isSendEmail = false
+				return
+			}
 
-		if count > 0 {
-			errMsg = "图表已存在,请重新填写"
-			err = errors.New(errMsg)
-			isSendEmail = false
-			return
 		}
 	}
 
@@ -465,9 +473,9 @@ func BatchAddChartInfo(batchAddChartReq []request.AddChart, lineChartInfoConfig
 		}
 
 		chartInfo := &data_manage.ChartInfo{
-			ChartInfoId: 0,
-			ChartName:   v.ChartName,
-			//ChartNameEn:     v.ChartName,
+			ChartInfoId:     0,
+			ChartName:       v.ChartName,
+			ChartNameEn:     v.ChartName,
 			ChartClassifyId: v.ChartClassifyId,
 			SysUserId:       sysUser.AdminId,
 			SysUserRealName: sysUser.RealName,