本文整理汇总了Golang中Model.NewUserLogin函数的典型用法代码示例。如果您正苦于以下问题:Golang NewUserLogin函数的具体用法?Golang NewUserLogin怎么用?Golang NewUserLogin使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewUserLogin函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Login
// 登录;成功返回用户登录信息(user_login)
func Login(username, passwd string) (*model.UserLogin, error) {
userLogin := model.NewUserLogin()
err := userLogin.Where("username=" + username + " OR email=" + username).Find()
if err != nil {
logger.Errorf("用户 %s 登录错误:%s", username, err)
return nil, errors.New("内部错误,请稍后再试!")
}
// 校验用户
if userLogin.Uid == 0 {
logger.Infof("用户名 %s 不存在", username)
return nil, ErrUsername
}
passcode := userLogin.GetPasscode()
md5Passwd := util.Md5(passwd + passcode)
logger.Debugf("passwd: %s, passcode: %s, md5passwd: %s, dbpasswd: %s", passwd, passcode, md5Passwd, userLogin.Passwd)
if md5Passwd != userLogin.Passwd {
logger.Infof("用户名 %s 填写的密码错误", username)
return nil, ErrPasswd
}
// 登录,活跃度+1
go IncUserWeight("uid="+strconv.Itoa(userLogin.Uid), 1)
return userLogin, nil
}
示例2: FindCurrentUser
// 获取当前登录用户信息(常用信息)
func FindCurrentUser(username string) (user map[string]interface{}, err error) {
userLogin := model.NewUserLogin()
err = userLogin.Where("username=" + username).Find()
if err != nil {
logger.Errorf("获取用户 %s 信息失败:%s", username, err)
return
}
if userLogin.Uid == 0 {
logger.Infof("用户 %s 不存在!", username)
return
}
user = map[string]interface{}{
"uid": userLogin.Uid,
"username": userLogin.Username,
"email": userLogin.Email,
}
// 获取未读消息数
user["msgnum"] = FindNotReadMsgNum(userLogin.Uid)
// 获取角色信息
userRoleList, err := model.NewUserRole().Where("uid=" + strconv.Itoa(userLogin.Uid)).FindAll()
if err != nil {
logger.Errorf("获取用户 %s 角色 信息失败:%s", username, err)
return
}
for _, userRole := range userRoleList {
if userRole.Roleid <= model.AdminMinRoleId {
// 是管理员
user["isadmin"] = true
}
}
return
}
示例3: CreateUser
func CreateUser(form url.Values) (errMsg string, err error) {
// 存用户基本信息,产生自增长UID
user := model.NewUser()
err = util.ConvertAssign(user, form)
if err != nil {
logger.Errorln("user ConvertAssign error", err)
errMsg = err.Error()
return
}
uid, err := user.Insert()
if err != nil {
errMsg = "内部服务器错误"
logger.Errorln(errMsg, ":", err)
return
}
// 存用户登录信息
userLogin := model.NewUserLogin()
err = util.ConvertAssign(userLogin, form)
if err != nil {
errMsg = err.Error()
logger.Errorln("CreateUser error:", err)
return
}
userLogin.Uid = uid
_, err = userLogin.Insert()
if err != nil {
errMsg = "内部服务器错误"
logger.Errorln(errMsg, ":", err)
return
}
// 存用户角色信息
userRole := model.NewUserRole()
// 默认为初级会员
roleId := model.AllRoleId[len(model.AllRoleId)-1]
if form.Get("roleid") != "" {
tmpId, err := strconv.Atoi(form.Get("roleid"))
if err == nil {
roleId = tmpId
}
}
userRole.Roleid = roleId
userRole.Uid = uid
if _, err = userRole.Insert(); err != nil {
logger.Errorln("userRole insert Error:", err)
}
// 存用户活跃信息,初始活跃+2
userActive := model.NewUserActive()
userActive.Uid = uid
userActive.Username = user.Username
userActive.Email = user.Email
userActive.Weight = 2
if _, err = userActive.Insert(); err != nil {
logger.Errorln("UserActive insert Error:", err)
}
return
}
示例4: CountUsers
// 会员总数
func CountUsers() int {
total, err := model.NewUserLogin().Count()
if err != nil {
logger.Errorln("user service CountUsers error:", err)
return 0
}
return total
}
示例5: RecordLoginTime
// 记录用户最后登录时间
func RecordLoginTime(username string) error {
userLogin := model.NewUserLogin()
err := userLogin.Set("login_time=" + time.Now().Format("2006-01-02 15:04:05")).Where("username=" + username).Update()
if err != nil {
logger.Errorf("记录用户 %s 登录时间错误:%s", username, err)
}
return err
}
示例6: UpdatePasswd
// 更新用户密码(用户名或email)
func UpdatePasswd(username, passwd string) (string, error) {
userLogin := model.NewUserLogin()
passwd = userLogin.GenMd5Passwd(passwd)
err := userLogin.Set("passwd=" + passwd + ",passcode=" + userLogin.GetPasscode()).Where("username=" + username + " OR email=" + username).Update()
if err != nil {
logger.Errorf("用户 %s 更新密码错误:%s", username, err)
return "对不起,内部服务错误!", err
}
return "", nil
}
示例7: EmailExists
// 判断指定的邮箱(email)是否存在
func EmailExists(email string) bool {
userLogin := model.NewUserLogin()
if err := userLogin.Where("email=" + email).Find("uid"); err != nil {
logger.Errorln("service EmailExists error:", err)
return false
}
if userLogin.Uid != 0 {
return true
}
return false
}
示例8: UsernameExists
// 判断指定的用户名是否存在
func UsernameExists(username string) bool {
userLogin := model.NewUserLogin()
if err := userLogin.Where("username=" + username).Find("uid"); err != nil {
logger.Errorln("service UsernameExists error:", err)
return false
}
if userLogin.Uid != 0 {
return true
}
return false
}
示例9: FindNotLoginUsers
// 获取 loginTime 之前没有登录的用户
func FindNotLoginUsers(loginTime string) (userList []*model.UserLogin, err error) {
userLogin := model.NewUserLogin()
userList, err = userLogin.Where("login_time<" + loginTime).FindAll()
return
}
示例10: CreateUser
func CreateUser(form url.Values) (errMsg string, err error) {
if EmailExists(form.Get("email")) {
err = errors.New("该邮箱已注册过")
return
}
if UsernameExists(form.Get("username")) {
err = errors.New("用户名已存在")
return
}
// 存用户基本信息,产生自增长UID
user := model.NewUser()
err = util.ConvertAssign(user, form)
if err != nil {
logger.Errorln("user ConvertAssign error", err)
errMsg = err.Error()
return
}
user.Ctime = util.TimeNow()
// 随机给一个默认头像
user.Avatar = DefaultAvatars[rand.Intn(len(DefaultAvatars))]
uid, err := user.Insert()
if err != nil {
errMsg = "内部服务器错误"
logger.Errorln(errMsg, ":", err)
return
}
// 存用户登录信息
userLogin := model.NewUserLogin()
err = util.ConvertAssign(userLogin, form)
if err != nil {
errMsg = err.Error()
logger.Errorln("CreateUser error:", err)
return
}
userLogin.Uid = uid
_, err = userLogin.Insert()
if err != nil {
errMsg = "内部服务器错误"
logger.Errorln(errMsg, ":", err)
return
}
// 存用户角色信息
userRole := model.NewUserRole()
// 默认为初级会员
userRole.Roleid = Roles[len(Roles)-1].Roleid
userRole.Uid = uid
if _, err = userRole.Insert(); err != nil {
logger.Errorln("userRole insert Error:", err)
}
// 存用户活跃信息,初始活跃+2
userActive := model.NewUserActive()
userActive.Uid = uid
userActive.Username = user.Username
userActive.Avatar = user.Avatar
userActive.Email = user.Email
userActive.Weight = 2
if _, err = userActive.Insert(); err != nil {
logger.Errorln("UserActive insert Error:", err)
}
return
}