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

fix:新增自定义表格数据重置接口

Roc 1 éve
szülő
commit
c937e7470e

+ 80 - 0
controllers/base_from_calculate.go

@@ -1920,3 +1920,83 @@ func (this *CalculateController) CalculateComputeCorrelation() {
 	br.Data = rVal
 	br.IsAddLog = true
 }
+
+// ResetCustomAnalysisData
+// @Title 自定义表格数据重置
+// @Description 自定义表格数据重置
+// @Param request body models.ResetCustomAnalysisData true "type json string"
+// @Success Ret=200 返回指标id
+// @router /custom_analysis/reset [post]
+func (this *CalculateController) ResetCustomAnalysisData() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+
+	var req models.ResetCustomAnalysisData
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+
+	if req.EdbInfoId <= 0 {
+		br.Msg = "请选择指标"
+		return
+	}
+	if len(req.DateList) <= 0 {
+		br.Msg = "请传入日期序列"
+		return
+	}
+	if len(req.DataList) <= 0 {
+		br.Msg = "请传入数据序列"
+		return
+	}
+
+	edbInfo, err := models.GetEdbInfoById(req.EdbInfoId)
+	if err != nil {
+		if err.Error() == utils.ErrNoRow() {
+			br.Msg = "指标已被删除,请刷新页面"
+			br.ErrMsg = "指标已被删除,请刷新页面:Err:" + err.Error()
+			return
+		}
+		br.Msg = "获取指标信息失败"
+		br.ErrMsg = "获取指标信息失败:Err:" + err.Error()
+		return
+	}
+	baseEdbInfoModel := models.CustomAnalysis{}
+	err, errMsg := baseEdbInfoModel.ResetData(edbInfo, req.DateList, req.DataList)
+	if err != nil {
+		br.Msg = "更新数据失败"
+		if errMsg != `` {
+			br.Msg = errMsg
+		}
+		br.Msg = "更新数据失败 Err:" + err.Error()
+		return
+	}
+	if edbInfo == nil {
+		br.Msg = "更新数据失败"
+		br.ErrMsg = "更新数据失败,指标ID错误:"
+		return
+	}
+
+	// 更新指标最大最小值
+	err, errMsg = models.UnifiedModifyEdbInfoMaxAndMinInfo(edbInfo)
+	if err != nil {
+		br.Msg = errMsg
+		br.ErrMsg = err.Error()
+		return
+	}
+
+	resp := models.AddEdbInfoResp{
+		EdbInfoId:  edbInfo.EdbInfoId,
+		UniqueCode: edbInfo.UniqueCode,
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "处理成功"
+	br.Data = resp
+	br.IsAddLog = true
+}

+ 28 - 0
models/edb_data_calculate_zdyfx.go

@@ -277,3 +277,31 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 	}
 	return
 }
+
+// ResetData 数据重置
+func (obj CustomAnalysis) ResetData(edbInfo *EdbInfo, dateList []string, dataList []float64) (err error, errMsg string) {
+	o := orm.NewOrm()
+	to, err := o.Begin()
+	if err != nil {
+		return
+	}
+	defer func() {
+		if err != nil {
+			_ = to.Rollback()
+			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+		} else {
+			_ = to.Commit()
+		}
+	}()
+
+	err = obj.refresh(to, edbInfo, dateList, dataList)
+
+	return
+}
+
+// ResetCustomAnalysisData 数据重置的结构体
+type ResetCustomAnalysisData struct {
+	EdbInfoId int
+	DateList  []string
+	DataList  []float64
+}

+ 9 - 0
routers/commentsRouter.go

@@ -115,6 +115,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_index_lib/controllers:CalculateController"] = append(beego.GlobalControllerRouter["eta/eta_index_lib/controllers:CalculateController"],
+        beego.ControllerComments{
+            Method: "ResetCustomAnalysisData",
+            Router: `/custom_analysis/reset`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_index_lib/controllers:CalculateController"] = append(beego.GlobalControllerRouter["eta/eta_index_lib/controllers:CalculateController"],
         beego.ControllerComments{
             Method: "Edit",