Browse Source

初始化目录

tuoling805 1 year ago
parent
commit
f44c27ea6d
3 changed files with 144 additions and 3 deletions
  1. BIN
      docs/ETA数据库目录配置.xlsx
  2. 141 0
      services/init_edb_classify.go
  3. 3 3
      services/task.go

BIN
docs/ETA数据库目录配置.xlsx


+ 141 - 0
services/init_edb_classify.go

@@ -0,0 +1,141 @@
+package services
+
+import (
+	"encoding/json"
+	"fmt"
+	"github.com/xuri/excelize/v2"
+	"hongze/hz_eta_data/models"
+	"hongze/hz_eta_data/utils"
+	"os"
+	"path/filepath"
+)
+
+//初始化指标目录结构
+
+func InitEdbClassify() {
+	var err error
+
+	defer func() {
+		if err != nil {
+			fmt.Println("InitBaseIndexData Err:" + err.Error())
+		}
+	}()
+
+	//读取excel
+	path, err := filepath.Abs(os.Args[0])
+	if err != nil {
+		fmt.Println(err)
+	}
+
+	dir := filepath.Dir(path)
+	fmt.Println("dir:" + dir)
+	dataPath := dir + "/docs/ETA数据库目录配置.xlsx"
+	fmt.Println("dataPath:" + dataPath)
+	f, err := excelize.OpenFile(dataPath)
+	if err != nil {
+		fmt.Println(err)
+		return
+	}
+	defer func() {
+		// Close the spreadsheet.
+		if err := f.Close(); err != nil {
+			fmt.Println(err)
+		}
+	}()
+	rows, err := f.GetRows("Sheet1")
+	if err != nil {
+		fmt.Println(err)
+		return
+	}
+	fmt.Println("rows len:", len(rows))
+	for rk, row := range rows {
+		if rk > 0 {
+			var classifyFirst, classifySecond, classifyThree string
+			for ck, colCell := range row {
+				switch ck {
+				case 0:
+					classifyFirst = colCell
+				case 1:
+					classifySecond = colCell
+				case 2:
+					classifyThree = colCell
+				}
+			}
+
+			if classifyFirst != "" &&
+				classifySecond != "" &&
+				classifyThree != "" {
+
+				method := "classify/get_or_add"
+				classifyFirstMap := make(map[string]interface{})
+				classifyFirstMap["ClassifyName"] = classifyFirst
+				classifyFirstMap["ParentId"] = 0
+				classifyFirstMap["Level"] = 0
+				classifyFirstMap["ClassifyType"] = 0
+				result, err := PostEdbLib(classifyFirstMap, method)
+				if err != nil {
+					utils.FileLog.Info("初始化分类1失败:" + err.Error())
+					return
+				}
+
+				resp := new(models.ClassifyResp)
+				err = json.Unmarshal(result, &resp)
+				if err != nil {
+					utils.FileLog.Info("初始化分类1失败:" + err.Error())
+					return
+				}
+
+				if resp.Ret != 200 {
+					utils.FileLog.Info("初始化分类1失败:" + resp.Msg + ";" + resp.ErrMsg)
+					return
+				}
+
+				classifySecondMap := make(map[string]interface{})
+				classifySecondMap["ClassifyName"] = classifySecond
+				classifySecondMap["ParentId"] = resp.Data.ClassifyId
+				classifySecondMap["Level"] = 1
+				classifySecondMap["ClassifyType"] = 0
+				result, err = PostEdbLib(classifySecondMap, method)
+				if err != nil {
+					utils.FileLog.Info("初始化分类2失败:" + err.Error())
+					return
+				}
+				resp = new(models.ClassifyResp)
+				err = json.Unmarshal(result, &resp)
+				if err != nil {
+					utils.FileLog.Info("初始化分类2失败:" + err.Error())
+					return
+				}
+				if resp.Ret != 200 {
+					utils.FileLog.Info("初始化分类2失败:" + resp.Msg + ";" + resp.ErrMsg)
+					return
+				}
+
+				classifyThreeMap := make(map[string]interface{})
+				classifyThreeMap["ClassifyName"] = classifyThree
+				classifyThreeMap["ParentId"] = resp.Data.ClassifyId
+				classifyThreeMap["Level"] = 2
+				classifyThreeMap["ClassifyType"] = 0
+				result, err = PostEdbLib(classifyThreeMap, method)
+				if err != nil {
+					utils.FileLog.Info("初始化分类3失败:" + err.Error())
+					return
+				}
+				resp = new(models.ClassifyResp)
+				err = json.Unmarshal(result, &resp)
+				if err != nil {
+					utils.FileLog.Info("初始化分类2失败:" + err.Error())
+					return
+				}
+
+				if resp.Ret != 200 {
+					utils.FileLog.Info("初始化分类3失败:" + resp.Msg + ";" + resp.ErrMsg)
+					return
+				}
+			} else {
+				fmt.Println("data is empty")
+				fmt.Println(classifyFirst, classifySecond, classifyThree)
+			}
+		}
+	}
+}

+ 3 - 3
services/task.go

@@ -22,8 +22,8 @@ func Task() {
 	IndexSourceMap["ths"] = utils.DATA_SOURCE_THS
 	IndexSourceMap["wind"] = utils.DATA_SOURCE_WIND
 	time.Sleep(3 * time.Second)
-	fmt.Println("start InitBaseIndexData")
-	InitBaseIndexData()
-	fmt.Println("end InitBaseIndexData")
+	fmt.Println("start InitEdbClassify")
+	InitEdbClassify()
+	fmt.Println("end InitEdbClassify")
 	fmt.Println("task end")
 }