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 {
|
||||
Id int64 `json:"id"`
|
||||
Content string `json:"content"`
|
||||
IsDone bool `json:"isDone"`
|
||||
FromQQ string `json:from`
|
||||
CreatedAt string `json:"created_at"`
|
||||
}
|
||||
|
@ -1,6 +1,10 @@
|
||||
package ticket
|
||||
|
||||
import "git.lxtend.com/qqbot/sqlite3"
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"git.lxtend.com/qqbot/sqlite3"
|
||||
)
|
||||
|
||||
func init() {
|
||||
createTableQuery := `CREATE TABLE IF NOT EXISTS ticket (
|
||||
@ -49,3 +53,26 @@ func setTicketDone(id int) error {
|
||||
tx.Commit()
|
||||
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"
|
||||
"time"
|
||||
|
||||
"git.lxtend.com/qqbot/health"
|
||||
"git.lxtend.com/qqbot/service/exec"
|
||||
"git.lxtend.com/qqbot/sqlite3"
|
||||
wsclient "git.lxtend.com/qqbot/ws_client"
|
||||
@ -26,10 +25,7 @@ func main() {
|
||||
log.Print("Error creating WebSocket client:", err)
|
||||
}
|
||||
defer client.Close()
|
||||
ginServer := gin.New()
|
||||
engine := ginServer.Group("/health")
|
||||
engine.GET("/ping", health.HealthHandler)
|
||||
go ginServer.Run(":3434")
|
||||
startRouter()
|
||||
for {
|
||||
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