Merge branch 'main' of ssh://127.0.0.1:2222/lixiangwuxian/qq_bot
This commit is contained in:
commit
904a1fefff
@ -13,6 +13,6 @@ type Ticket struct {
|
|||||||
type WebTicketModel struct {
|
type WebTicketModel struct {
|
||||||
Id int64 `json:"id"`
|
Id int64 `json:"id"`
|
||||||
Content string `json:"content"`
|
Content string `json:"content"`
|
||||||
IsDone bool `json:"isDone"`
|
FromQQ string `json:from`
|
||||||
CreatedAt string `json:"created_at"`
|
CreatedAt string `json:"created_at"`
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
package ticket
|
package ticket
|
||||||
|
|
||||||
import "git.lxtend.com/qqbot/sqlite3"
|
import (
|
||||||
|
"strconv"
|
||||||
|
|
||||||
|
"git.lxtend.com/qqbot/sqlite3"
|
||||||
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
createTableQuery := `CREATE TABLE IF NOT EXISTS ticket (
|
createTableQuery := `CREATE TABLE IF NOT EXISTS ticket (
|
||||||
@ -49,3 +53,26 @@ func setTicketDone(id int) error {
|
|||||||
tx.Commit()
|
tx.Commit()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getAllTicket() ([]WebTicketModel, error) {
|
||||||
|
tx, err := sqlite3.GetTran()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer tx.Rollback()
|
||||||
|
var ticketList []Ticket
|
||||||
|
if _, err = tx.NamedQuery("SELECT * FROM ticket WHERE isDone=false", ticketList); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
tx.Commit()
|
||||||
|
var webTickets []WebTicketModel
|
||||||
|
for _, v := range ticketList {
|
||||||
|
webTicket := WebTicketModel{
|
||||||
|
Id: v.Id,
|
||||||
|
Content: v.Content,
|
||||||
|
FromQQ: strconv.Itoa(int(v.FromQQ/10000)) + "****",
|
||||||
|
}
|
||||||
|
webTickets = append(webTickets, webTicket)
|
||||||
|
}
|
||||||
|
return webTickets, nil
|
||||||
|
}
|
||||||
|
15
handler/ticket/ticker_gin_handler.go
Normal file
15
handler/ticket/ticker_gin_handler.go
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
package ticket
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
"github.com/gin-gonic/gin"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TicketHandler(c *gin.Context) {
|
||||||
|
tickets, err := getAllTicket()
|
||||||
|
if err != nil {
|
||||||
|
c.AbortWithError(http.StatusInternalServerError, err)
|
||||||
|
}
|
||||||
|
c.JSON(200, tickets)
|
||||||
|
}
|
6
main.go
6
main.go
@ -4,7 +4,6 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.lxtend.com/qqbot/health"
|
|
||||||
"git.lxtend.com/qqbot/service/exec"
|
"git.lxtend.com/qqbot/service/exec"
|
||||||
"git.lxtend.com/qqbot/sqlite3"
|
"git.lxtend.com/qqbot/sqlite3"
|
||||||
wsclient "git.lxtend.com/qqbot/ws_client"
|
wsclient "git.lxtend.com/qqbot/ws_client"
|
||||||
@ -26,10 +25,7 @@ func main() {
|
|||||||
log.Print("Error creating WebSocket client:", err)
|
log.Print("Error creating WebSocket client:", err)
|
||||||
}
|
}
|
||||||
defer client.Close()
|
defer client.Close()
|
||||||
ginServer := gin.New()
|
startRouter()
|
||||||
engine := ginServer.Group("/health")
|
|
||||||
engine.GET("/ping", health.HealthHandler)
|
|
||||||
go ginServer.Run(":3434")
|
|
||||||
for {
|
for {
|
||||||
time.Sleep(1000 * time.Second)
|
time.Sleep(1000 * time.Second)
|
||||||
}
|
}
|
||||||
|
16
router.go
Normal file
16
router.go
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.lxtend.com/qqbot/handler/ticket"
|
||||||
|
"git.lxtend.com/qqbot/health"
|
||||||
|
"github.com/gin-gonic/gin"
|
||||||
|
)
|
||||||
|
|
||||||
|
func startRouter() {
|
||||||
|
ginServer := gin.New()
|
||||||
|
healthEngine := ginServer.Group("/health")
|
||||||
|
healthEngine.GET("/ping", health.HealthHandler)
|
||||||
|
ticketEngine := ginServer.Group("/ticket")
|
||||||
|
ticketEngine.GET("", ticket.TicketHandler)
|
||||||
|
go ginServer.Run(":3434")
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user