upgrade
This commit is contained in:
@@ -5,11 +5,14 @@ import (
|
||||
"log"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"tg-mc/conf"
|
||||
"tg-mc/models"
|
||||
"tg-mc/services/utils"
|
||||
commonUtils "tg-mc/utils"
|
||||
|
||||
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
|
||||
"github.com/samber/lo"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
@@ -102,6 +105,51 @@ func Run(sendFunc func(string)) {
|
||||
return
|
||||
}
|
||||
if m.Command() == "get" {
|
||||
if !utils.IsAdmin(m) &&
|
||||
len(m.CommandArguments()) != 0 {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, "您不是管理员,没有该权限")
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
} else if utils.IsAdmin(m) &&
|
||||
len(m.CommandArguments()) != 0 {
|
||||
a := commonUtils.GetArgs(m.CommandArguments())
|
||||
if len(a) != 2 {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, "参数错误,样例:\n```\n/get <tgid|username> <value>\n```")
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
if a[0] == "tgid" {
|
||||
tgid, err := strconv.ParseInt(a[1], 10, 64)
|
||||
if err != nil {
|
||||
conf.Bot.Send(tgbotapi.NewMessage(m.Chat.ID, "ID错误,应该为int64"))
|
||||
return
|
||||
}
|
||||
u, err := models.GetUserByTGID(tgid)
|
||||
if err != nil {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, fmt.Sprintf("查询出错,err:\n```\n%+v\n```", err))
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, fmt.Sprintf("用户信息:\n```\n%+v\n```", u))
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
}
|
||||
if a[0] == "username" {
|
||||
u, err := models.GetUserByMCName(a[1])
|
||||
if err != nil {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, fmt.Sprintf("查询出错,err:\n```\n%+v\n```", err))
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, fmt.Sprintf("用户信息:\n```\n%+v\n```", u))
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
}
|
||||
return
|
||||
}
|
||||
logrus.Infof("id is %d", m.Chat.ID)
|
||||
u, err := models.GetUserByTGID(m.From.ID)
|
||||
if err != nil {
|
||||
@@ -113,6 +161,42 @@ func Run(sendFunc func(string)) {
|
||||
conf.Bot.Send(m)
|
||||
return
|
||||
}
|
||||
if m.Command() == "set" {
|
||||
if !utils.IsAdmin(m) {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, "您不是管理员,没有该权限")
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
a := commonUtils.GetArgs(m.CommandArguments())
|
||||
if len(a) != 3 {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, "参数错误,样例:\n```\n/set username tgid status\n```")
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
tgid, err := strconv.ParseInt(a[1], 10, 64)
|
||||
if err != nil {
|
||||
conf.Bot.Send(tgbotapi.NewMessage(m.Chat.ID, "ID错误,应该为int64"))
|
||||
return
|
||||
}
|
||||
status, err := strconv.ParseInt(a[2], 10, 64)
|
||||
if err != nil || !lo.Contains([]int64{0, 1, 2}, status) {
|
||||
conf.Bot.Send(tgbotapi.NewMessage(m.Chat.ID, "Status错误,应该为0(Pending),1(Normal),2(Banned)"))
|
||||
return
|
||||
}
|
||||
if err := models.CreateUser(&models.User{
|
||||
TGID: tgid,
|
||||
MCName: a[0],
|
||||
Status: int(status),
|
||||
}); err != nil {
|
||||
tm := tgbotapi.NewMessage(m.Chat.ID, fmt.Sprintf("创建用户错误,err:\n```\n%+v\n```", err))
|
||||
tm.ParseMode = "Markdown"
|
||||
conf.Bot.Send(tm)
|
||||
return
|
||||
}
|
||||
conf.Bot.Send(tgbotapi.NewMessage(m.Chat.ID, "设置用户成功"))
|
||||
return
|
||||
}
|
||||
}(update.Message)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user