package controllers import ( "Cold_Api/controllers/lib" "Cold_Api/models/Account" "Cold_Api/models/System" "fmt" beego "github.com/beego/beego/v2/server/web" "github.com/mssola/user_agent" "time" ) type AdminController struct { beego.Controller } func (c *AdminController) Login() { c.TplName = "login.html" } // 获取用户登录信息 func (c *AdminController) GetUserLoginInfo() map[string]interface{} { //Ipaddr ip地址 //Browser 浏览器 //Os 系统 //Platform 固件 l := make(map[string]interface{}) ua := user_agent.New(c.Ctx.Request.UserAgent()) l["ipaddr"] = c.Ctx.Input.IP() l["remark"] = c.Ctx.Request.UserAgent() browserName, browserVersion := ua.Browser() l["browser"] = browserName + " " + browserVersion l["os"] = ua.OS() l["platform"] = ua.Platform() return l } func (c *AdminController) Login_verification() { Admin_user := c.GetString("bzd_username") Admin_pass := c.GetString("bzd_password") println("Login_verification", Admin_user, Admin_pass) err, admin_r := Account.Read_AdminLogin_verification(Admin_user, Admin_pass) fmt.Println("Login_verification", err, admin_r) if err != nil { c.Data["json"] = lib.JSONS{Code: 202, Msg: "账号密码错误!"} } else { User_tokey := Account.Add_Tokey_Set(admin_r.T_uuid) //fmt.Println("User_tokey:登录", User_tokey) c.Ctx.SetCookie("User_tokey", User_tokey, time.Second*60*60) c.Data["json"] = lib.JSONS{Code: 200, Msg: "OK!", Data: User_tokey} System.Add_UserLogs_T(admin_r.T_uuid, "登陆", "用户登陆", c.GetUserLoginInfo()) } c.ServeJSON() return } func (c *AdminController) Info() { // 验证登录 b_, user_r := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey")) if !b_ { c.Data["json"] = lib.JSONS{Code: 202, Msg: "no"} c.ServeJSON() return } c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok", Data: Account.AdminToAdmin_R(user_r)} c.ServeJSON() return }