|
@@ -5,6 +5,7 @@ import (
|
|
|
"eta/eta_index_lib/logic"
|
|
|
"eta/eta_index_lib/models"
|
|
|
"eta/eta_index_lib/utils"
|
|
|
+ "fmt"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"time"
|
|
@@ -328,3 +329,113 @@ func (this *EdbInfoController) RefreshCheck() {
|
|
|
br.Msg = "获取成功"
|
|
|
br.Data = resp
|
|
|
}
|
|
|
+
|
|
|
+// ResetEdbClassify
|
|
|
+// @Title 重置指标分类
|
|
|
+// @Description 重置指标分类
|
|
|
+// @Param request body models.ResetEdbClassifyReq true "type json string"
|
|
|
+// @Success 200 {object} models.EdbInfo
|
|
|
+// @router /classify_reset [post]
|
|
|
+func (this *EdbInfoController) ResetEdbClassify() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ if br.ErrMsg == "" {
|
|
|
+ br.IsSendEmail = false
|
|
|
+ }
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ var req models.ResetEdbClassifyReq
|
|
|
+ err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ req.IndexCode = strings.TrimSpace(req.IndexCode)
|
|
|
+ if req.IndexCode == "" {
|
|
|
+ br.Msg = "指标编码不可为空"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ req.ClassifyFirst = strings.TrimSpace(req.ClassifyFirst)
|
|
|
+ if req.ClassifyFirst == "" {
|
|
|
+ br.Msg = "一级分类名称不可为空"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ req.ClassifySecond = strings.TrimSpace(req.ClassifySecond)
|
|
|
+ if req.ClassifySecond == "" {
|
|
|
+ br.Msg = "二级分类名称不可为空"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ req.ClassifyThird = strings.TrimSpace(req.ClassifyThird)
|
|
|
+ if req.ClassifyThird == "" {
|
|
|
+ br.Msg = "三级分类名称不可为空"
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 获取指标信息
|
|
|
+ edbInfo, e := models.GetEdbInfoOnlyByEdbCode(req.IndexCode)
|
|
|
+ if e != nil {
|
|
|
+ if e.Error() != utils.ErrNoRow() {
|
|
|
+ br.Msg = "指标不存在"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ br.Msg = "获取指标信息失败"
|
|
|
+ br.ErrMsg = "获取指标信息失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ edbInfoType := uint8(edbInfo.EdbInfoType)
|
|
|
+
|
|
|
+ // 新增分类
|
|
|
+ firstClassify, e, msg := models.SaveEdbClassify(req.ClassifyFirst, 0, 0, edbInfoType, utils.InitAdminId, utils.InitAdminName)
|
|
|
+ if msg != "" {
|
|
|
+ br.Msg = "新增一级分类失败"
|
|
|
+ br.ErrMsg = "新增一级分类失败, ErrMsg: " + e.Error()
|
|
|
+ if e != nil {
|
|
|
+ br.ErrMsg = fmt.Sprintf("新增一级分类失败, Err: %s, ErrMsg: %s", e.Error(), msg)
|
|
|
+ } else {
|
|
|
+ br.IsSendEmail = false
|
|
|
+ }
|
|
|
+ return
|
|
|
+ }
|
|
|
+ secondClassify, e, msg := models.SaveEdbClassify(req.ClassifySecond, firstClassify.ClassifyId, 1, edbInfoType, utils.InitAdminId, utils.InitAdminName)
|
|
|
+ if msg != "" {
|
|
|
+ br.Msg = "新增二级分类失败"
|
|
|
+ br.ErrMsg = "新增二级分类失败, ErrMsg: " + e.Error()
|
|
|
+ if e != nil {
|
|
|
+ br.ErrMsg = fmt.Sprintf("新增二级分类失败, Err: %s, ErrMsg: %s", e.Error(), msg)
|
|
|
+ } else {
|
|
|
+ br.IsSendEmail = false
|
|
|
+ }
|
|
|
+ return
|
|
|
+ }
|
|
|
+ thirdClassify, e, msg := models.SaveEdbClassify(req.ClassifyThird, secondClassify.ClassifyId, 2, edbInfoType, utils.InitAdminId, utils.InitAdminName)
|
|
|
+ if msg != "" {
|
|
|
+ br.Msg = "新增三级分类失败"
|
|
|
+ br.ErrMsg = "新增三级分类失败, ErrMsg: " + e.Error()
|
|
|
+ if e != nil {
|
|
|
+ br.ErrMsg = fmt.Sprintf("新增三级分类失败, Err: %s, ErrMsg: %s", e.Error(), msg)
|
|
|
+ } else {
|
|
|
+ br.IsSendEmail = false
|
|
|
+ }
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 更新指标分类
|
|
|
+ cols := []string{"ClassifyId", "ModifyTime"}
|
|
|
+ edbInfo.ClassifyId = thirdClassify.ClassifyId
|
|
|
+ edbInfo.ModifyTime = time.Now().Local()
|
|
|
+ if e := edbInfo.Update(cols); e != nil {
|
|
|
+ br.Msg = "更新指标失败"
|
|
|
+ br.ErrMsg = "更新指标失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 更新ES
|
|
|
+ go logic.UpdateEs(edbInfo.EdbInfoId)
|
|
|
+
|
|
|
+ br.Data = edbInfo
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "操作成功"
|
|
|
+}
|