| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package auth
- import (
- "fmt"
- "git.qianqiusoft.com/qianqiusoft/light-apiengine/entitys"
- sysmodel "git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
- sysutils "git.qianqiusoft.com/qianqiusoft/light-apiengine/utils"
- "strings"
- )
- type LightAuth struct {
- }
- func init() {
- lightAuth := &LightAuth{}
- RegisterAuth("qianqiusoft.com", lightAuth)
- }
- func (la *LightAuth) Init() {
- }
- func (la *LightAuth) Login(c *entitys.CtrlContext) {
- var logininfo sysmodel.LoginInfo
- c.Ctx.BindJSON(&logininfo)
- //fmt.Println(logininfo)
- var user sysmodel.SysUser
- ret, err := c.PlatformDbEngine.SQL(sysmodel.SqlUserLogin, logininfo.Account).Get(&user)
- if ret && err == nil && user.Status == 0 {
- //TODO check password
- md5Pwd := sysutils.HashPassword(logininfo.Password, "")
- //密码错误
- if !strings.EqualFold(user.Password, md5Pwd) {
- c.Ctx.JSON(200, sysmodel.SysReturn{400, "password incorrect!", nil})
- return
- }
- data, err := AddToGlobalTokenStore(c, &user)
- if err != nil {
- c.Ctx.JSON(200, sysmodel.SysReturn{400, err.Error(), nil})
- return
- }
- TCPClient.SendToken(sysutils.GetGlobalTokenStore().Get(data.Token))
- c.Ctx.JSON(200, sysmodel.SysReturn{200, "", data})
- } else if user.Status == 1 {
- c.Ctx.JSON(200, sysmodel.SysReturn{400, "user disable!", nil})
- } else {
- //fmt.Println(err.Error())
- c.Ctx.JSON(200, sysmodel.SysReturn{400, "username or password incorrect!", nil})
- }
- }
- func (la *LightAuth) Logout(c *entitys.CtrlContext) {
- token := c.Ctx.GetHeader("token")
- fmt.Println("delete token: ", token)
- sysutils.GetGlobalTokenStore().Remove(token)
- TCPClient.Send(CMD_REMOVE, []byte(token))
- c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
- }
|