package request import ( "github.com/gogf/gf/net/ghttp" "github.com/gogf/gf/util/gconv" ) type PageInfo struct { Current int `json:"current"` //分页当前页 Size int `json:"size"` //分页记录数条数 } // 获取前端分页信息 func GetPageInfo(r *ghttp.Request) PageInfo { var page PageInfo page.Current = r.GetInt("current") page.Size = r.GetInt("size") return page } // 登录用户信息 type UserInfo struct { Id int32 `json:"id"` Uuid string `json:"uuid"` UserName string `json:"user_name"` RealName string `json:"real_name"` Roles string `json:"roles"` // 所属角色 DeptId string `json:"dept_id"` //所属部门 } // 设置当前登录用户信息 func SetUserInfo(r *ghttp.Request, userInfo UserInfo) { //var userinfo UserInfo //userinfo.Id = userId //userinfo.Uuid = uuid //userinfo.UserName = username //userinfo.RealName = realName r.SetParam("userinfo", userInfo) } // 从request中获取当前登录用户信息 func GetUserInfo(r *ghttp.Request) UserInfo { var userinfo UserInfo gconv.Struct(r.GetParam("userinfo"), &userinfo) return userinfo } // 获取租户码 func GetTenant(r *ghttp.Request) string { return r.Header.Get("Tenant") } //获取客户端IP func GetClientIp(r *ghttp.Request) string { ip := r.Header.Get("X-Forwarded-For") if ip == "" { ip = r.GetClientIp() } return ip }