ziwen 1 year ago
parent
commit
6f42368a41

+ 15 - 0
models/data_manage/chart_classify.go

@@ -256,3 +256,18 @@ func GetChartClassifyAllFromETA() (items []*ChartClassifyItems, err error) {
 	_, err = o.Raw(sql).QueryRows(&items)
 	return
 }
+
+func GetChartClassifyTwo(source int) (items []*ChartClassifyItems, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT * FROM chart_classify WHERE level=3 AND source = ? order by sort asc,chart_classify_id asc`
+	_, err = o.Raw(sql, source).QueryRows(&items)
+	return
+}
+
+
+func GetChartClassifyByLevel(level, source int) (items []*ChartClassifyItems, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT * FROM chart_classify WHERE level=? AND source = ? order by sort asc,chart_classify_id asc`
+	_, err = o.Raw(sql, level, source).QueryRows(&items)
+	return
+}

+ 7 - 0
models/data_manage/chart_info.go

@@ -1727,3 +1727,10 @@ type ProfitFutureGoodChartResp struct {
 	ProfitName   string `description:"利润的名称"`
 	ProfitNameEn string `description:"利润的英文名称"`
 }
+
+func FIXChartClassifyId(newId, oldId int) (err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` UPDATE chart_info SET chart_classify_id=? WHERE chart_classify_id=? `
+	_, err = o.Raw(sql, newId, oldId).Exec()
+	return
+}

+ 56 - 1
models/data_manage/edb_classify.go

@@ -3,6 +3,8 @@ package data_manage
 import (
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
+	"hongze/hz_eta_api/utils"
+	"strconv"
 	"time"
 )
 
@@ -295,4 +297,57 @@ func GetEdbClassifyMaxSortV2(parentId int, classifyType uint8) (sort int, err er
 	sql := `SELECT Max(sort) AS sort FROM edb_classify WHERE parent_id=? AND parent_id_two=? AND classify_type=? `
 	err = o.Raw(sql, parentId, classifyType).QueryRow(&sort)
 	return
-}
+}
+
+func GetEdbClassifyByLevel(level, source int) (items []*EdbClassifyItems, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT * FROM edb_classify WHERE level=? AND classify_type = ? `
+	_, err = o.Raw(sql, level, source).QueryRows(&items)
+	return
+}
+
+func FIXEdbClassifyId(newId, oldId int) (err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` UPDATE edb_info SET classify_id=? WHERE classify_id=? `
+	_, err = o.Raw(sql, newId, oldId).Exec()
+	return
+}
+
+func FixEdbClassify()  {
+	//新增三级分类
+	list, err := GetEdbClassifyByLevel(2,0)
+	if err != nil {
+		return
+	}
+
+	for _, v := range list {
+		timestamp := strconv.FormatInt(time.Now().UnixNano(), 10)
+		classifyInfo := &EdbClassify{
+			//ClassifyId:      0,
+			ClassifyType:    0,
+			ClassifyName:    v.ClassifyName,
+			ParentId:        v.ClassifyId,
+			HasData:         0,
+			CreateTime:      time.Now(),
+			ModifyTime:      time.Now(),
+			SysUserRealName: "admin",
+			Level:           3,
+			UniqueCode:      utils.MD5(utils.DATA_PREFIX + "_" + timestamp),
+			Sort:            v.Sort,
+		}
+		if utils.RunMode == "debug" {
+			classifyInfo.SysUserId = 11
+		} else {
+			classifyInfo.SysUserId = 163
+		}
+		id, err := AddEdbClassify(classifyInfo)
+		if err != nil {
+			return
+		}
+
+		err = FIXEdbClassifyId(int(id),v.ClassifyId)
+		if err != nil {
+			return
+		}
+	}
+}

+ 41 - 0
services/data/chart_classify.go

@@ -2,6 +2,9 @@ package data
 
 import (
 	"hongze/hz_eta_api/models/data_manage"
+	"hongze/hz_eta_api/utils"
+	"strconv"
+	"time"
 )
 
 func chartClassifyHaveChild(allNode []*data_manage.ChartClassifyItems, node *data_manage.ChartClassifyItems) (childs []*data_manage.ChartClassifyItems, yes bool) {
@@ -34,3 +37,41 @@ func ChartClassifyItemsMakeTree(allNode []*data_manage.ChartClassifyItems, node
 		node.Children = childrenArr
 	}
 }
+
+func FixChartClassify()  {
+	//新增三级分类
+	list, err := data_manage.GetChartClassifyByLevel(2,1)
+	if err != nil {
+		return
+	}
+
+	for _, v := range list {
+		classify := new(data_manage.ChartClassify)
+		classify.ParentId = v.ChartClassifyId
+		classify.ChartClassifyName = v.ChartClassifyName
+		classify.HasData = 0
+		classify.CreateTime = time.Now()
+		classify.ModifyTime = time.Now()
+		if utils.RunMode == "debug" {
+			classify.SysUserId = 11
+		} else {
+			classify.SysUserId = 163
+		}
+		classify.SysUserRealName = "admin"
+		classify.Level = 3
+		timestamp := strconv.FormatInt(time.Now().UnixNano(), 10)
+		classify.UniqueCode = utils.MD5(utils.DATA_PREFIX + "_" + timestamp)
+		classify.Sort = v.Sort
+		classify.Source = utils.CHART_SOURCE_DEFAULT
+
+		id, err := data_manage.AddChartClassify(classify)
+		if err != nil {
+			return
+		}
+
+		err = data_manage.FIXChartClassifyId(int(id),v.ChartClassifyId)
+		if err != nil {
+			return
+		}
+	}
+}

+ 1 - 0
services/task.go

@@ -3,6 +3,7 @@ package services
 import (
 	"fmt"
 	"hongze/hz_eta_api/models"
+	"hongze/hz_eta_api/models/data_manage"
 	"hongze/hz_eta_api/services/alarm_msg"
 	"hongze/hz_eta_api/services/data"
 	"hongze/hz_eta_api/utils"