Commit e1ed365e authored by szh's avatar szh

add miner data

parent 435270e5
...@@ -30,6 +30,7 @@ func init() { ...@@ -30,6 +30,7 @@ func init() {
// @license.url https://chain33-pai/blob/master/LICENSE // @license.url https://chain33-pai/blob/master/LICENSE
func main() { func main() {
go app.CornClean(time.NewTicker(time.Hour*24)) go app.CornClean(time.NewTicker(time.Hour*24))
go app.CornData(time.NewTicker(time.Minute*5))
gin.SetMode(setting.ServerSetting.RunMode) gin.SetMode(setting.ServerSetting.RunMode)
routersInit := routers.InitRouter() routersInit := routers.InitRouter()
readTimeout := setting.ServerSetting.ReadTimeout readTimeout := setting.ServerSetting.ReadTimeout
......
...@@ -60,7 +60,7 @@ func Complete(fd RaspFeedback){ ...@@ -60,7 +60,7 @@ func Complete(fd RaspFeedback){
} }
func DeleteCompleteFeedback(){ func DeleteCompleteFeedback(){
err:=db.Delete(&RaspFeedback{}).Where("complete=?",1).Error err:=db.Where("complete=?",1).Delete(&RaspFeedback{}).Error
if err!=nil{ if err!=nil{
log.Println(err) log.Println(err)
} }
......
package models
import "log"
type RaspMinerData struct {
Id int64 `json:"id" gorm:"PRIMARY_KEY"`
TicketCount int64 `json:"ticket_count"`
}
func GetMinerDataList() ([]*RaspMinerData,error) {
var list []*RaspMinerData
if err := db.Model(&RaspMinerData{}).Find(&list).Error; err != nil {
return nil,err
}
return list,nil
}
func UpdateMinerData(fd RaspMinerData)bool{
if err:=db.Create(&fd).Error;err != nil {
log.Println(err)
return false
}
return true
}
...@@ -56,6 +56,15 @@ func GetAddr(addr string) (*RaspMinerStat, error) { ...@@ -56,6 +56,15 @@ func GetAddr(addr string) (*RaspMinerStat, error) {
return &stat, nil return &stat, nil
} }
func GetTicketSum() (int64,error) {
var count int64
if err := db.Model(&RaspMinerStat{}).Select("sum(mining_ticket_count) as count").Scan(&count).Error; err != nil {
return 0,err
}
return count,nil
}
// EditAddr modify a single addr // EditAddr modify a single addr
func EditAddr(addr string, data interface{}) error { func EditAddr(addr string, data interface{}) error {
if err := db.Model(&RaspMinerStat{}).Where("addr = ? ", addr).Updates(data).Error; err != nil { if err := db.Model(&RaspMinerStat{}).Where("addr = ? ", addr).Updates(data).Error; err != nil {
......
...@@ -136,3 +136,26 @@ func CornClean(ticker *time.Ticker){ ...@@ -136,3 +136,26 @@ func CornClean(ticker *time.Ticker){
} }
} }
} }
func CornData(ticker *time.Ticker){
for{
select {
case <-ticker.C:
UploadMinerData()
}
}
}
func UploadMinerData() error {
count,err := models.GetTicketSum()
if err != nil {
fmt.Println("GetTicketSum",err)
return err
}
isok := models.UpdateMinerData(models.RaspMinerData{TicketCount:count})
if isok {
fmt.Println("UpdateMinerData ok")
} else {
fmt.Println("UpdateMinerData fail")
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment