study_xxqg/model/wechat_user.go

57 lines
1.0 KiB
Go

package model
func AddWechatUser(user *WechatUser) error {
_ = engine.Ping()
_, err := engine.InsertOne(user)
if err != nil {
return err
}
return err
}
func WechatUserCount(openID string) int {
_ = engine.Ping()
count, err := engine.Where("open_id=?", openID).Count(new(WechatUser))
if err != nil {
return 0
}
return int(count)
}
func UpdateWechatUser(user *WechatUser) error {
_ = engine.Ping()
if WechatUserCount(user.OpenId) < 1 {
err := AddWechatUser(user)
if err != nil {
return err
}
} else {
_, err := engine.Where("open_id=?", user.OpenId).Update(user)
if err != nil {
return err
}
}
return nil
}
func FindWechatUser(openID string) (*WechatUser, error) {
_ = engine.Ping()
w := new(WechatUser)
_, err := engine.Where("open_id=?", openID).Get(w)
if err != nil {
return w, err
}
return w, err
}
func QueryWechatUser() ([]*WechatUser, error) {
var (
users []*WechatUser
)
_, err := engine.Table(new(WechatUser)).Query(&users)
if err != nil {
return nil, err
}
return users, err
}