|
@@ -21,7 +21,13 @@ const (
|
|
|
FormatTimeStr = "15:04" //时间格式
|
|
|
)
|
|
|
|
|
|
+//var checkLock sync.RWMutex
|
|
|
+
|
|
|
func IndexCreateCheck() (err error) {
|
|
|
+ //checkLock.Lock()
|
|
|
+ //defer func() {
|
|
|
+ // checkLock.Unlock()
|
|
|
+ //}()
|
|
|
fmt.Println("IndexCreateCheck")
|
|
|
indexObj := new(index.BaseFromMysteelChemicalIndex)
|
|
|
list, err := indexObj.GetIndexCreate()
|
|
@@ -40,30 +46,37 @@ func IndexCreateCheck() (err error) {
|
|
|
fmt.Println("indexCodeStr:" + indexCodeStr)
|
|
|
go alarm_msg.SendAlarmMsg(utils.APPNAME+" 存在指标数据未生成:"+indexCodeStr, 3)
|
|
|
for _, v := range list {
|
|
|
+ fmt.Println("IndexCreateCheck start:", v.IndexCode, v.FilePath)
|
|
|
if v.FilePath != "" && utils.FileIsExist(v.FilePath) {
|
|
|
+ fmt.Println("Refresh:" + v.IndexCode)
|
|
|
err = UpdateComment(v.FilePath)
|
|
|
if err != nil {
|
|
|
+ fmt.Println("UpdateComment Err:" + err.Error())
|
|
|
go alarm_msg.SendAlarmMsg(utils.APPNAME+" 指标数据未生成检测失败:"+err.Error()+";file:"+v.FilePath, 3)
|
|
|
}
|
|
|
time.Sleep(1 * time.Second)
|
|
|
MysteelChemicalRefresh(v.FilePath)
|
|
|
} else {
|
|
|
- err := IndexCreate(v)
|
|
|
+ fmt.Println("IndexCreate:" + v.IndexCode)
|
|
|
+ saveFilePath, err := IndexCreate(v)
|
|
|
if err != nil {
|
|
|
+ fmt.Println("IndexCreate Err:" + err.Error())
|
|
|
go alarm_msg.SendAlarmMsg(utils.APPNAME+" 指标数据未生成检测失败:"+err.Error(), 3)
|
|
|
}
|
|
|
+ v.FilePath = saveFilePath
|
|
|
+ fmt.Println("IndexCreate saveFilePath:" + v.FilePath)
|
|
|
+ time.Sleep(1 * time.Second)
|
|
|
+ MysteelChemicalRefresh(v.FilePath)
|
|
|
+ fmt.Println("MysteelChemicalRefresh end:"+v.IndexCode)
|
|
|
}
|
|
|
+ fmt.Println("IndexCreateCheck end:"+v.IndexCode)
|
|
|
}
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
-func IndexCreate(item *index.BaseFromMysteelChemicalIndex) (err error) {
|
|
|
+func IndexCreate(item *index.BaseFromMysteelChemicalIndex) (saveFilePath string, err error) {
|
|
|
item.UpdateWeek = utils.GetUpdateWeekEn(item.UpdateWeek)
|
|
|
global.LOG.Info("task IndexCreate:" + time.Now().Format(utils.FormatDateTime))
|
|
|
-
|
|
|
- if utils.FileIsExist(item.FilePath) {
|
|
|
- os.Remove(item.FilePath)
|
|
|
- }
|
|
|
runMode := "release"
|
|
|
//fileName := req.IndexName + "_" + req.IndexCode + ".xlsx"
|
|
|
var fileName string
|
|
@@ -73,7 +86,9 @@ func IndexCreate(item *index.BaseFromMysteelChemicalIndex) (err error) {
|
|
|
fileName = item.IndexCode + "_" + runMode + ".xlsx" //保存的文件名称
|
|
|
}
|
|
|
filePath := utils.IndexSaveDir + fileName
|
|
|
-
|
|
|
+ if utils.FileIsExist(filePath) {
|
|
|
+ os.Remove(filePath)
|
|
|
+ }
|
|
|
templatePath := utils.IndexSaveDir + "index_template.xlsx"
|
|
|
templateFile, err := excelize.OpenFile(templatePath)
|
|
|
if err != nil {
|
|
@@ -89,12 +104,10 @@ func IndexCreate(item *index.BaseFromMysteelChemicalIndex) (err error) {
|
|
|
commentMap := make(map[string]interface{})
|
|
|
commentMap["author"] = "{"
|
|
|
commentMap["text"] = commentStr
|
|
|
- //commentMap["text"] = commentItem
|
|
|
|
|
|
commentJson, err := json.Marshal(commentMap)
|
|
|
if err != nil {
|
|
|
fmt.Println("json.Marshal err:" + err.Error())
|
|
|
- return err
|
|
|
}
|
|
|
|
|
|
fmt.Println("commentJson")
|
|
@@ -103,9 +116,10 @@ func IndexCreate(item *index.BaseFromMysteelChemicalIndex) (err error) {
|
|
|
templateFile.AddComment("Sheet1", "A1", string(commentJson))
|
|
|
if err := templateFile.SaveAs(filePath); err != nil {
|
|
|
fmt.Println(err)
|
|
|
- return err
|
|
|
+ return "", err
|
|
|
}
|
|
|
- time.Sleep(1 * time.Minute)
|
|
|
+ time.Sleep(1 * time.Second)
|
|
|
+ saveFilePath = filePath
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -221,7 +235,7 @@ func UpdateComment(filePath string) (err error) {
|
|
|
}
|
|
|
if err := templateFile.SaveAs(filePath); err != nil {
|
|
|
fmt.Println("templateFile.SaveAs Err:", err)
|
|
|
- return
|
|
|
+ return err
|
|
|
}
|
|
|
return
|
|
|
}
|