Initial commit
This commit is contained in:
67
cmd/check/main.go
Normal file
67
cmd/check/main.go
Normal file
@@ -0,0 +1,67 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/csv"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"git.apinb.com/bsm-sdk/core/utils"
|
||||
"git.apinb.com/dataset/stock/internal/config"
|
||||
"git.apinb.com/dataset/stock/internal/impl"
|
||||
"git.apinb.com/dataset/stock/internal/logic/a"
|
||||
"git.apinb.com/dataset/stock/internal/models"
|
||||
)
|
||||
|
||||
var (
|
||||
ServiceKey = "stock"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 配置初始化
|
||||
config.New(ServiceKey)
|
||||
|
||||
// 创建实现层
|
||||
impl.NewImpl()
|
||||
|
||||
body := [][]string{}
|
||||
for _, code := range a.GetStockCodes() {
|
||||
var dCnt int64
|
||||
impl.DBService.Model(&models.StockDaily{}).Where("ts_code=?", code).Count(&dCnt)
|
||||
var iCnt int64
|
||||
impl.DBService.Model(&models.StockIndicator{}).Where("ts_code=?", code).Count(&iCnt)
|
||||
var fCnt int64
|
||||
impl.DBService.Model(&models.StockFinaIndicator{}).Where("ts_code=?", code).Count(&fCnt)
|
||||
|
||||
log.Println("Checking...", code, "Daily", dCnt, "Indicator", iCnt, "FinaIndicator", fCnt)
|
||||
body = append(body, []string{code, utils.Int2String(int(dCnt)), utils.Int2String(int(iCnt)), utils.Int2String(int(fCnt))})
|
||||
}
|
||||
|
||||
WriterCSV("./result/check.csv", body)
|
||||
}
|
||||
|
||||
// csv文件写入
|
||||
func WriterCSV(fileName string, datas [][]string) {
|
||||
|
||||
//OpenFile读取文件,不存在时则创建
|
||||
File, err := os.OpenFile(fileName, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)
|
||||
if err != nil {
|
||||
log.Println("文件打开失败!")
|
||||
}
|
||||
defer File.Close()
|
||||
|
||||
//创建写入接口
|
||||
WriterCsv := csv.NewWriter(File)
|
||||
str := []string{"Code", "Daily", "Indicator", "FinaIndicator"} //需要写入csv的数据,切片类型
|
||||
|
||||
//写入一条数据,传入数据为切片(追加模式)
|
||||
err1 := WriterCsv.Write(str)
|
||||
if err1 != nil {
|
||||
log.Println("WriterCsv写入文件失败")
|
||||
}
|
||||
|
||||
for _, s := range datas {
|
||||
WriterCsv.Write(s)
|
||||
}
|
||||
WriterCsv.Flush() //刷新,不刷新是无法写入的
|
||||
log.Println("数据写入成功...")
|
||||
}
|
||||
48
cmd/main/main.go
Normal file
48
cmd/main/main.go
Normal file
@@ -0,0 +1,48 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"git.apinb.com/bsm-sdk/core/infra"
|
||||
"git.apinb.com/bsm-sdk/core/middleware"
|
||||
"git.apinb.com/dataset/stock/internal/config"
|
||||
"git.apinb.com/dataset/stock/internal/cron"
|
||||
"git.apinb.com/dataset/stock/internal/impl"
|
||||
"git.apinb.com/dataset/stock/internal/routers"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
var (
|
||||
ServiceKey = "stock"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 配置初始化
|
||||
config.New(ServiceKey)
|
||||
|
||||
// 创建实现层
|
||||
impl.NewImpl()
|
||||
|
||||
// starter crontab list
|
||||
cron.Boot()
|
||||
|
||||
// 初始化Gin引擎
|
||||
app := gin.Default()
|
||||
|
||||
// 使用中间件
|
||||
middleware.Mode(app)
|
||||
app.Use(middleware.Cors())
|
||||
app.Use(gin.Recovery())
|
||||
|
||||
// register health check
|
||||
app.HEAD("/", infra.Health)
|
||||
|
||||
// register routers
|
||||
routers.Register(ServiceKey, app)
|
||||
|
||||
// start
|
||||
err := app.Run(fmt.Sprintf(":%s", config.Spec.Port))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
16
cmd/test/main.go
Normal file
16
cmd/test/main.go
Normal file
@@ -0,0 +1,16 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
|
||||
"git.apinb.com/dataset/stock/internal/logic/a"
|
||||
)
|
||||
|
||||
func main() {
|
||||
a.NewApiClient()
|
||||
reply, err := a.SetFinaIndicator("000029.SZ", "20230331")
|
||||
fmt.Println("Err", err)
|
||||
jsonBytes, _ := json.Marshal(reply.Data.Items)
|
||||
fmt.Println("Reply", string(jsonBytes))
|
||||
}
|
||||
Reference in New Issue
Block a user