You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

90 lines
1.8 KiB

package userCloud
import (
"GoClouds/core/bean/sysBean"
"GoClouds/models"
"fmt"
"github.com/gin-gonic/gin"
gocloud "github.com/mgr9525/go-cloud"
ruisUtil "github.com/mgr9525/go-ruisutil"
)
func FindInfo(uid string) *models.SysUser {
e := &models.SysUser{}
err := DoJson("Info", uid, e)
if err != nil {
return nil
}
return e
}
func CheckUsrInfo(xid, hash string) *models.SysUser {
if xid == "" {
return nil
}
e := &models.SysUser{}
err := DoJson("CheckInfo", &ruisUtil.Map{"xid": xid, "hash": hash}, e)
if err != nil {
return nil
}
return e
}
func CurrUser(c *gin.Context) *models.SysUser {
tkm := gocloud.GetToken(c)
if tkm == nil {
return nil
}
t, ok := tkm["xid"]
if !ok {
return nil
}
hs, ok := tkm["hash"]
if !ok {
return nil
}
xid := fmt.Sprintf("%v", t)
if xid == "" {
return nil
}
return CheckUsrInfo(xid, fmt.Sprintf("%v", hs))
}
func GetUsrPerms(uid string) map[string]bool {
e := make(map[string]bool)
err := DoJson("GetUsrPerms", uid, &e)
if err != nil {
return nil
}
return e
}
func Login(name, pass string) (*sysBean.LoginRes, error) {
e := &sysBean.LoginRes{}
err := DoJson("Login", &sysBean.LoginReq{Name: name, Pass: pass}, e)
if err != nil {
return nil, err
}
return e, nil
}
func Reg(m *sysBean.RegReq) (*sysBean.LoginRes, error) {
e := &sysBean.LoginRes{}
err := DoJson("Reg", m, e)
if err != nil {
return nil, err
}
return e, nil
}
func Forgot(phone, pass string) (*sysBean.LoginRes, error) {
e := &sysBean.LoginRes{}
err := DoJson("Forgot", &sysBean.LoginReq{Name: phone, Pass: pass}, e)
if err != nil {
return nil, err
}
return e, nil
}
func Uppass(m *sysBean.UppassReq) (*sysBean.LoginRes, error) {
e := &sysBean.LoginRes{}
err := DoJson("Forgot", m, e)
if err != nil {
return nil, err
}
return e, nil
}