|
@@ -11,7 +11,20 @@ import (
|
|
|
)
|
|
|
|
|
|
// HandleYongyiIndex 处理涌益咨询的excel数据
|
|
|
-func HandleYongyiIndex(req models.HandleYongyiExcelDataReq) (err error) {
|
|
|
+func HandleYongyiIndex(req *models.HandleYongyiExcelDataReq) (err error) {
|
|
|
+ for _, v := range req.List {
|
|
|
+ if v.IndexName == "" || v.IndexCode == "" {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ err = handleYongyiIndex(v)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func handleYongyiIndex(req *models.HandleYongyiExcelData) (err error) {
|
|
|
terminalCode := req.TerminalCode
|
|
|
indexName := req.IndexName
|
|
|
indexCode := req.IndexCode
|
|
@@ -25,6 +38,8 @@ func HandleYongyiIndex(req models.HandleYongyiExcelDataReq) (err error) {
|
|
|
|
|
|
indexObj := new(models.BaseFromYongyiIndex)
|
|
|
dataObj := new(models.BaseFromYongyiData)
|
|
|
+ classifyObj := new(models.BaseFromYongyiClassify)
|
|
|
+
|
|
|
var indexId int64
|
|
|
|
|
|
addDataList := make([]*models.BaseFromYongyiData, 0)
|
|
@@ -36,12 +51,52 @@ func HandleYongyiIndex(req models.HandleYongyiExcelDataReq) (err error) {
|
|
|
utils.FileLog.Info("未刷新到指标数据:indexName:" + indexName)
|
|
|
return
|
|
|
}
|
|
|
+ // 判断目录是否存在
|
|
|
+ var classifyId int64
|
|
|
+ now := time.Now()
|
|
|
+ if req.ClassifyName == "" {
|
|
|
+ classifyObj, err = classifyObj.GetByClassifyName(req.ClassifyName)
|
|
|
+ if err != nil {
|
|
|
+ if err.Error() == utils.ErrNoRow() {
|
|
|
+ err = nil
|
|
|
+ //新增分类
|
|
|
+ classifyObj = &models.BaseFromYongyiClassify{
|
|
|
+ ClassifyName: req.ClassifyName,
|
|
|
+ ParentId: 0,
|
|
|
+ SysUserId: 0,
|
|
|
+ SysUserRealName: "",
|
|
|
+ Level: 1,
|
|
|
+ Sort: 0,
|
|
|
+ ModifyTime: now,
|
|
|
+ CreateTime: now,
|
|
|
+ }
|
|
|
+
|
|
|
+ classifyId, err = classifyObj.Add()
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("add err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ classifyObj.ClassifyId = classifyId
|
|
|
+ //修改排序
|
|
|
+ classifyObj.Sort = int(classifyId)
|
|
|
+ err = classifyObj.Update([]string{"Sort"})
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+ } else {
|
|
|
+ classifyId = classifyObj.ClassifyId
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//判断指标是否存在
|
|
|
var isAdd int
|
|
|
item, err := indexObj.GetByIndexCode(indexCode)
|
|
|
if err != nil {
|
|
|
if err.Error() == utils.ErrNoRow() {
|
|
|
isAdd = 1
|
|
|
+ err = nil
|
|
|
} else {
|
|
|
isAdd = -1
|
|
|
fmt.Println("GetByIndexCode Err:" + err.Error())
|
|
@@ -58,21 +113,31 @@ func HandleYongyiIndex(req models.HandleYongyiExcelDataReq) (err error) {
|
|
|
if isAdd == 1 {
|
|
|
indexObj.IndexCode = indexCode
|
|
|
indexObj.IndexName = indexName
|
|
|
+ indexObj.Frequency = req.Frequency
|
|
|
+ indexObj.ClassifyId = classifyId
|
|
|
+ indexObj.Unit = req.Unit
|
|
|
indexObj.ModifyTime = time.Now()
|
|
|
indexObj.CreateTime = time.Now()
|
|
|
indexObj.TerminalCode = terminalCode
|
|
|
-
|
|
|
indexId, err = indexObj.Add()
|
|
|
if err != nil {
|
|
|
fmt.Println("add err:" + err.Error())
|
|
|
return
|
|
|
}
|
|
|
+ indexObj.YongyiIndexId = indexId
|
|
|
//修改排序
|
|
|
- go models.ModifyBaiinfoIndexSort(indexId)
|
|
|
+ indexObj.Sort = int(indexId)
|
|
|
+ err = indexObj.Update([]string{"Sort"})
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
} else if isAdd == 2 {
|
|
|
if item.TerminalCode == `` && terminalCode != `` {
|
|
|
item.TerminalCode = terminalCode
|
|
|
- item.Update([]string{"TerminalCode"})
|
|
|
+ err = item.Update([]string{"TerminalCode"})
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//获取已存在的所有数据
|
|
@@ -151,9 +216,13 @@ func HandleYongyiIndex(req models.HandleYongyiExcelDataReq) (err error) {
|
|
|
baseObj := new(models.BaseFromYongyi)
|
|
|
var edbInfo *models.EdbInfo
|
|
|
edbInfo, err = models.GetEdbInfoByEdbCode(baseObj.GetSource(), indexCode)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- errMsgList = append(errMsgList, fmt.Sprint("刷新ETA指标异常,指标编码:", indexCode, err.Error()))
|
|
|
- return
|
|
|
+ if err != nil {
|
|
|
+ if err.Error() != utils.ErrNoRow() {
|
|
|
+ errMsgList = append(errMsgList, fmt.Sprint("刷新ETA指标异常,指标编码:", indexCode, err.Error()))
|
|
|
+ return
|
|
|
+ } else {
|
|
|
+ err = nil
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 已经加入到指标库的话,那么就去更新ETA指标库吧
|