Browse Source

Merge branch 'fix/terminal' into feature/eta1.2.2_edb_source

# Conflicts:
#	controllers/base_from_baiinfo.go
#	controllers/base_from_sci.go
#	controllers/base_from_smm.go
#	models/base_from_baiinfo.go
#	models/base_from_sci.go
#	models/base_from_smm.go
#	services/base_from_baiinfo.go
#	services/base_from_sci.go
#	services/base_from_smm.go
xyxie 1 year ago
parent
commit
fd97f9c2ad

+ 1 - 1
controllers/base_from_baiinfo.go

@@ -152,7 +152,7 @@ func (this *BaiinfoController) HandleExcelData() {
 	}
 
 	// 处理excel表数据
-	services.HandleBaiinfoIndex(req.BaseFilePath, req.RenameFilePath, req.IndexName, req.IndexCode, req.ExcelDataMap, req.TerminalCode)
+	services.HandleBaiinfoIndex(req.BaseFilePath, req.TerminalCode, req.RenameFilePath, req.IndexName, req.IndexCode, req.ExcelDataMap)
 
 	br.Ret = 200
 	br.Success = true

+ 1 - 1
controllers/base_from_sci.go

@@ -135,7 +135,7 @@ func (this *SciController) HandleExcelData() {
 	}
 
 	// 处理excel表数据
-	services.HandleSciIndex(req.IndexNameList, req.ThirdIndexIdList, req.FrequencyList, req.UnitList, req.DataMap, req.TerminalCode)
+	services.HandleSciIndex(req.IndexNameList, req.ThirdIndexIdList, req.FrequencyList, req.UnitList, req.DataMap, req.FilePath, req.TerminalCode)
 
 	br.Ret = 200
 	br.Success = true

+ 10 - 2
models/base_from_baiinfo.go

@@ -190,7 +190,7 @@ type HandleBaiinfoExcelDataReq struct {
 	IndexName      string
 	IndexCode      string
 	ExcelDataMap   map[string]string
-	TerminalCode   string
+	TerminalCode   string `description:"编码"`
 }
 
 type BaseFromBaiinfoIndex struct {
@@ -204,9 +204,9 @@ type BaseFromBaiinfoIndex struct {
 	Sort                   int
 	BaseFileName           string
 	RenameFileName         string
+	TerminalCode           string
 	CreateTime             time.Time
 	ModifyTime             time.Time
-	TerminalCode           string
 }
 
 func (d *BaseFromBaiinfoIndex) AddBaseFromBaiinfoIndex() (lastId int64, err error) {
@@ -255,3 +255,11 @@ func ModifyBaiinfoIndexMaxAndMinInfo(indexCode string, item *EdbInfoMaxAndMinInf
 	_, err = o.Raw(sql, item.MinDate, item.MaxDate, indexCode).Exec()
 	return
 }
+
+// Update 修改
+func (r *BaseFromBaiinfoIndex) Update(updateCols []string) (err error) {
+	o := orm.NewOrm()
+	_, err = o.Update(r, updateCols...)
+
+	return
+}

+ 4 - 2
models/base_from_sci.go

@@ -215,7 +215,8 @@ type HandleSciExcelDataReq struct {
 	ThirdIndexIdList []string
 	FrequencyList    []string
 	UnitList         []string
-	TerminalCode     string `description:"终端编码,用于配置在机器上"`
+	FilePath         string `description:"文件路径"`
+	TerminalCode     string `description:"编码"`
 }
 
 // BaseFromSciIndex 红桃3指标表格
@@ -230,7 +231,8 @@ type BaseFromSciIndex struct {
 	EndDate            time.Time `gorm:"column:end_date" json:"end_date"`
 	CreateTime         time.Time `gorm:"autoCreateTime;column:create_time" json:"create_time"`       //创建时间
 	ModifyTime         time.Time `gorm:"autoUpdateTime:milli;column:modify_time" json:"modify_time"` //最后更新时间
-	TerminalCode       string    `description:"终端编码,用于配置在机器上" json:"terminal_code"`
+	FilePath           string    `gorm:"column:file_path" json:"file_path"`                          // 文件路径
+	TerminalCode       string    `gorm:"column:terminal_code" json:"terminal_code"`                  // 指标编码
 }
 
 // TableName get sql table name.获取数据库表名

+ 2 - 2
models/base_from_smm.go

@@ -209,7 +209,7 @@ type BaseFromSmmIndex struct {
 	RenameFileName     string
 	StartDate          string
 	EndDate            string
-	TerminalCode       string
+	TerminalCode       string `description:"编码"`
 	CreateTime         time.Time
 	ModifyTime         time.Time
 }
@@ -274,7 +274,7 @@ type HandleSmmExcelDataReq struct {
 	Unit           string
 	Frequency      string
 	ExcelDataMap   map[string]string
-	TerminalCode   string
+	TerminalCode   string `description:"编码"`
 }
 
 // MultiUpdateBaseFromSmmDataValue 批量更新SMM指标数据

+ 7 - 1
services/base_from_baiinfo.go

@@ -11,7 +11,7 @@ import (
 )
 
 // HandleBaiinfoIndex 处理百川盈弗的excel数据
-func HandleBaiinfoIndex(baseFilePath, renameFilePath, indexName, indexCode string, excelDataMap map[string]string, terminalCode string) {
+func HandleBaiinfoIndex(baseFilePath, terminalCode, renameFilePath, indexName, indexCode string, excelDataMap map[string]string) {
 	var err error
 
 	errMsgList := make([]string, 0)
@@ -60,6 +60,7 @@ func HandleBaiinfoIndex(baseFilePath, renameFilePath, indexName, indexCode strin
 		indexObj.BaseFileName = baseFilePath
 		indexObj.RenameFileName = renameFilePath
 		indexObj.TerminalCode = terminalCode
+
 		lastId, err := indexObj.AddBaseFromBaiinfoIndex()
 		if err != nil {
 			fmt.Println("add err:" + err.Error())
@@ -69,6 +70,11 @@ func HandleBaiinfoIndex(baseFilePath, renameFilePath, indexName, indexCode strin
 		//修改排序
 		go models.ModifyBaiinfoIndexSort(indexId)
 	} else if isAdd == 2 {
+		if item.TerminalCode == `` && terminalCode != `` {
+			item.TerminalCode = terminalCode
+			item.Update([]string{"TerminalCode"})
+		}
+
 		//获取已存在的所有数据
 		exitDataList, err := models.GetBaseFromBaiinfoDataByCode(indexCode)
 		if err != nil {

+ 19 - 4
services/base_from_sci.go

@@ -11,7 +11,7 @@ import (
 )
 
 // HandleSciIndex 处理卓创(红桃3)的Excel数据
-func HandleSciIndex(indexNameList, thirdIndexIdList, frequencyList, unitList []string, dataMap map[string]map[string]string, terminalCode string) {
+func HandleSciIndex(indexNameList, thirdIndexIdList, frequencyList, unitList []string, dataMap map[string]map[string]string, filePath, terminalCode string) {
 	// 卓创(红桃3)指标id列表
 
 	sciIndexModel := new(models.BaseFromSciIndex)
@@ -20,20 +20,34 @@ func HandleSciIndex(indexNameList, thirdIndexIdList, frequencyList, unitList []s
 		fmt.Println("获取指标失败:", err)
 		return
 	}
-	allIndexMap := make(map[string]string)
+	allIndexMap := make(map[string]*models.BaseFromSciIndex)
 	for _, v := range list {
-		allIndexMap[v.IndexCode] = ``
+		allIndexMap[v.IndexCode] = v
 	}
 
 	// 需要入库的指标下标
 	needAddIndexKeyList := make([]int, 0)
 	needAddIndexMap := make(map[string]int, 0)
 	for key, v := range thirdIndexIdList {
-		if _, ok := allIndexMap[v]; !ok {
+		if sciIndexInfo, ok := allIndexMap[v]; !ok {
 			if _, ok2 := needAddIndexMap[v]; !ok2 {
 				needAddIndexKeyList = append(needAddIndexKeyList, key)
 				needAddIndexMap[v] = key
 			}
+		} else {
+			updateColList := make([]string, 0)
+			if sciIndexInfo.FilePath != filePath {
+				sciIndexInfo.FilePath = filePath
+				updateColList = append(updateColList, "FilePath")
+			}
+			if sciIndexInfo.TerminalCode != terminalCode {
+				sciIndexInfo.TerminalCode = terminalCode
+				updateColList = append(updateColList, "TerminalCode")
+			}
+			// 更新指标源信息
+			if len(updateColList) > 0 {
+				sciIndexInfo.Update(updateColList)
+			}
 		}
 	}
 	//fmt.Println(needAddIndexKeyList)
@@ -50,6 +64,7 @@ func HandleSciIndex(indexNameList, thirdIndexIdList, frequencyList, unitList []s
 			Unit:      unitList[key],
 			//StartDate: time.Time{},
 			//EndDate:      time.Time{},
+			FilePath:     filePath,
 			TerminalCode: terminalCode,
 			CreateTime:   time.Now(),
 			ModifyTime:   time.Now(),