| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package request
- import (
- "context"
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/net/ghttp"
- "github.com/gogf/gf/util/gconv"
- )
- const DefaultPageSize = 10
- type PageReq struct {
- BeginTime string `p:"beginTime"` //开始时间
- EndTime string `p:"endTime"` //结束时间
- PageNum int `p:"pageNum"` //当前页码
- PageSize int `p:"pageSize"` //每页数
- OrderBy string `p:"orderBy"` //排序方式
- Ctx context.Context `swaggerignore:"true"`
- }
- func (p *PageReq) GetPage() (int, int) {
- if p.PageNum == 0 {
- p.PageNum = 1
- }
- if p.PageSize == 0 {
- p.PageSize = DefaultPageSize
- }
- return p.PageNum, p.PageSize
- }
- // UserInfo 登录用户信息
- type UserInfo struct {
- Id int `json:"id"`
- Uuid string `json:"uuid"`
- UserName string `json:"userName"`
- NickName string `json:"nickName"`
- WechatId string `json:"wechatId"`
- DingtalkId string `json:"dingtalkId"`
- DingtalkUid string `json:"dingtalkUid"`
- DeptId int `json:"deptId"` // 所属部门
- Roles []string `json:"roles"` // 所属角色
- Posts []string `json:"posts"` // 所属岗位
- Groups []string `json:"groups"` // 所属用户组
- DataScope g.Map `json:"dataScope"` // 数据权限
- }
- // 设置当前登录用户信息
- 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
- }
|