|
@@ -3,9 +3,10 @@ package excel
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"eta/eta_api/models"
|
|
|
+ "eta/eta_api/models/data_manage"
|
|
|
excelModel "eta/eta_api/models/data_manage/excel"
|
|
|
"eta/eta_api/models/data_manage/excel/request"
|
|
|
- "eta/eta_api/models/data_manage/excel/response"
|
|
|
+ "eta/eta_api/services/data"
|
|
|
"eta/eta_api/services/data/excel"
|
|
|
"eta/eta_api/utils"
|
|
|
"strconv"
|
|
@@ -16,7 +17,7 @@ import (
|
|
|
// AddEdb
|
|
|
// @Title 新增指标接口
|
|
|
// @Description 新增指标接口
|
|
|
-// @Param request body request.AddExcelInfoReq true "type json string"
|
|
|
+// @Param request body request.AddEdb true "type json string"
|
|
|
// @Success 200 {object} response.AddExcelInfoResp
|
|
|
// @router /edb/add [post]
|
|
|
func (c *CustomAnalysisController) AddEdb() {
|
|
@@ -34,7 +35,7 @@ func (c *CustomAnalysisController) AddEdb() {
|
|
|
return
|
|
|
}
|
|
|
deleteCache := true
|
|
|
- cacheKey := "CACHE_EXCEL_TABLE_INFO_ADD_" + strconv.Itoa(sysUser.AdminId)
|
|
|
+ cacheKey := "CACHE_EXCEL_TABLE_INFO_ADD_EDB_" + strconv.Itoa(sysUser.AdminId)
|
|
|
defer func() {
|
|
|
if deleteCache {
|
|
|
_ = utils.Rc.Delete(cacheKey)
|
|
@@ -85,45 +86,78 @@ func (c *CustomAnalysisController) AddEdb() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- excel.GetCustomAnalysisExcelData(excelInfo)
|
|
|
-
|
|
|
- //err, errMsg, isSendEmail := excel.SaveCustomAnalysisTable(excelInfo, utils.TrimLRStr(req.ExcelName), req.Content, req.ExcelImage, req.ExcelClassifyId, req.OpSheetList)
|
|
|
- //if err != nil {
|
|
|
- // br.Msg = "保存失败"
|
|
|
- // if errMsg != `` {
|
|
|
- // br.Msg = errMsg
|
|
|
- // }
|
|
|
- // br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
- // br.IsSendEmail = isSendEmail
|
|
|
- // return
|
|
|
- //}
|
|
|
-
|
|
|
- // 更新excel下载地址(默认的EXCEL需要更新,自定义表格不需要更新)
|
|
|
- //if req.Source == 1 {
|
|
|
- // go UpdateExcelInfoFileUrl(excelInfo)
|
|
|
- //}
|
|
|
- //
|
|
|
- resp := new(response.AddExcelInfoResp)
|
|
|
- resp.ExcelInfoId = excelInfo.ExcelInfoId
|
|
|
- resp.UniqueCode = excelInfo.UniqueCode
|
|
|
-
|
|
|
- //新增操作日志
|
|
|
- //{
|
|
|
- // excelLog := &data_manage.ExcelInfoLog{
|
|
|
- // //ExcelInfoLogId: 0,
|
|
|
- // ExcelInfoId: excelInfo.ExcelInfoId,
|
|
|
- // ExcelName: req.ExcelName,
|
|
|
- // ExcelClassifyId: req.ExcelClassifyId,
|
|
|
- // SysUserId: sysUser.AdminId,
|
|
|
- // SysUserRealName: sysUser.RealName,
|
|
|
- // UniqueCode: excelInfo.UniqueCode,
|
|
|
- // CreateTime: time.Now(),
|
|
|
- // Content: string(c.Ctx.Input.RequestBody),
|
|
|
- // Status: "新增表格",
|
|
|
- // Method: c.Ctx.Input.URI(),
|
|
|
- // }
|
|
|
- // go data_manage.AddExcelInfoLog(excelLog)
|
|
|
- //}
|
|
|
+ //excel.GetCustomAnalysisExcelData(excelInfo)
|
|
|
+
|
|
|
+ dateList, dataList, err, errMsg := excel.HandleEdbSequenceVal(req.DateSequenceVal, req.DataSequenceVal)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "时间序列或数据序列异常!"
|
|
|
+ if errMsg != `` {
|
|
|
+ br.Msg = errMsg
|
|
|
+ }
|
|
|
+ br.ErrMsg = "时间序列或数据序列处理异常!err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ type CustomAnalysisData struct {
|
|
|
+ ExcelInfoId int `description:"excel的id"`
|
|
|
+ DateList []string
|
|
|
+ DataList []float64
|
|
|
+ }
|
|
|
+
|
|
|
+ type Formula struct {
|
|
|
+ DateSequenceStr string `description:"日期序列"`
|
|
|
+ DataSequenceStr string `description:"数据序列"`
|
|
|
+ }
|
|
|
+
|
|
|
+ formulaByte, err := json.Marshal(Formula{
|
|
|
+ DateSequenceStr: req.DateSequenceStr,
|
|
|
+ DataSequenceStr: req.DataSequenceStr,
|
|
|
+ })
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "时间序列或数据序列配置异常!"
|
|
|
+ br.ErrMsg = "json序列化时间序列或数据序列异常!err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ req2 := &data_manage.EdbInfoCalculateBatchSaveReqByEdbLib{
|
|
|
+ AdminId: sysUser.AdminId,
|
|
|
+ AdminName: sysUser.RealName,
|
|
|
+ EdbName: req.EdbName,
|
|
|
+ Frequency: req.Frequency,
|
|
|
+ Unit: req.Unit,
|
|
|
+ ClassifyId: req.ClassifyId,
|
|
|
+ Formula: string(formulaByte), //N数值移动平均计算、环比值、环差值
|
|
|
+ Source: utils.DATA_SOURCE_PREDICT_CALCULATE_TBZ,
|
|
|
+ Data: CustomAnalysisData{
|
|
|
+ ExcelInfoId: req.ExcelInfoId,
|
|
|
+ DateList: dateList,
|
|
|
+ DataList: dataList,
|
|
|
+ },
|
|
|
+ }
|
|
|
+
|
|
|
+ // 调用指标库去更新
|
|
|
+ reqJson, err := json.Marshal(req2)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ respItem, err := data.BatchSaveEdbCalculateData(string(reqJson))
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "新增失败"
|
|
|
+ br.ErrMsg = "新增失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if respItem.Ret != 200 {
|
|
|
+ br.Msg = respItem.Msg
|
|
|
+ br.ErrMsg = respItem.ErrMsg
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ resp := respItem.Data
|
|
|
+
|
|
|
+ //添加es
|
|
|
+ data.AddOrEditEdbInfoToEs(resp.EdbInfoId)
|
|
|
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|