| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- 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 {
- if admin_r.T_pid > 0 {
- company, _ := Account.Read_Company_ById(admin_r.T_pid)
- if len(company.T_expirationTime) > 0 {
- expirationTime, _ := lib.TimeStrToTime(company.T_expirationTime + " 23:59:59")
- if time.Now().After(expirationTime.AddDate(0, 1, 0)) {
- AdminList := Account.Read_Admin_List_T_pids(admin_r.T_pid)
- var Admin_ []Account.Admin_
- for _, v := range AdminList {
- Admin_ = append(Admin_, Account.Admin_RToAdmin_(v))
- }
- type Info struct {
- Admin []Account.Admin_ // 专属管理员
- CompanyExpirationTime string
- }
- var info Info
- info.Admin = Admin_
- info.CompanyExpirationTime = company.T_expirationTime
- c.Data["json"] = lib.JSONS{Code: 220, Msg: "合同已到期,登录失败", Data: info}
- c.ServeJSON()
- return
- }
- }
- }
- 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
- }
|