58 lines
1.3 KiB
Go
58 lines
1.3 KiB
Go
package kw
|
|
|
|
import "git.lxtend.com/lixiangwuxian/qqbot/sqlite3"
|
|
|
|
func init() {
|
|
// 使用GORM自动迁移替代手写SQL
|
|
sqlite3.AutoMigrate(&Kw{})
|
|
}
|
|
|
|
func AddKW(kw string, reply string, groupID string, createdBy string) (int64, error) {
|
|
kwData := Kw{
|
|
Kw: kw,
|
|
Reply: reply,
|
|
GroupID: groupID,
|
|
CreatedBy: createdBy,
|
|
}
|
|
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Create(&kwData)
|
|
if result.Error != nil {
|
|
return 0, result.Error
|
|
}
|
|
return kwData.ID, nil
|
|
}
|
|
|
|
func DeleteKW(kw string, groupID string) error {
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Where("kw = ? AND group_id = ?", kw, groupID).Delete(&Kw{})
|
|
return result.Error
|
|
}
|
|
|
|
func DeleteKWReply(kw string, reply string, groupID string) error {
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Where("kw = ? AND reply = ? AND group_id = ?", kw, reply, groupID).Delete(&Kw{})
|
|
return result.Error
|
|
}
|
|
|
|
func GetKW(kw string, groupId string) ([]Kw, error) {
|
|
var kws []Kw
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Where("kw = ? AND group_id = ?", kw, groupId).Find(&kws)
|
|
return kws, result.Error
|
|
}
|
|
|
|
func GetGroupAllKW(groupID string) ([]Kw, error) {
|
|
var kws []Kw
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Where("group_id = ?", groupID).Find(&kws)
|
|
return kws, result.Error
|
|
}
|
|
|
|
func GetAllKW() ([]Kw, error) {
|
|
var kws []Kw
|
|
db := sqlite3.GetGormDB()
|
|
result := db.Find(&kws)
|
|
return kws, result.Error
|
|
}
|