敏感词过滤
This commit is contained in:
32
business/model/dao/sensitive_words.go
Normal file
32
business/model/dao/sensitive_words.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package dao
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
)
|
||||
|
||||
func GetSensitiveWordList() (wordList []*model.SensitiveWords, err error) {
|
||||
sql := `SELECT * FROM sensitive_words`
|
||||
err = GetRows(nil, &wordList, sql)
|
||||
return wordList, err
|
||||
}
|
||||
|
||||
func InsertSensitiveWord(word string) error {
|
||||
return CreateEntity(nil, &model.SensitiveWords{Words: word})
|
||||
}
|
||||
|
||||
func CheckHasSensitiveWord(str string) (bool, string) {
|
||||
wordList, err := GetSensitiveWordList()
|
||||
if err == nil {
|
||||
for _, value := range wordList {
|
||||
keyWord := value.Words
|
||||
checkHas := strings.Contains(str, keyWord)
|
||||
if checkHas {
|
||||
return true, keyWord
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false, ""
|
||||
}
|
||||
6
business/model/sensitive_words.go
Normal file
6
business/model/sensitive_words.go
Normal file
@@ -0,0 +1,6 @@
|
||||
package model
|
||||
|
||||
type SensitiveWords struct {
|
||||
ID int `orm:"column(id)" json:"id"`
|
||||
Words string `orm:"size(30);column(words);unique" json:"words"`
|
||||
}
|
||||
Reference in New Issue
Block a user