package admin import ( "app/commons/constant" "fmt" "github.com/gin-gonic/gin" "github.com/samber/lo" ) // 更新用户信息 func (s *Server) UpdateUser(ctx *gin.Context) { c := s.FromContext(ctx) type Request struct { UserId *interface{} `json:"userId"` } req := new(Request) if err := c.ShouldBindJSON(&req); err != nil { c.Resp(constant.ErrorParams) return } c.Resp(nil) } // 修改上级地址 -- 触发地址重新计算 -- 慎重 // 可能存在死循环设置 需要做判定 并禁止 func (s *Server) SetParent(ctx *gin.Context) { c := s.FromContext(ctx) type Request struct { Id interface{} `json:"id"` ParentCode string `json:"parentCode"` } req := new(Request) user, errRespCode := s.GetUserByUserId(req.Id) if errRespCode != nil { c.Resp(errRespCode) return } parentUser, errRespCode := s.GetUserByCode(req.ParentCode) if errRespCode != nil { c.Resp(errRespCode) return } // 设置了死循环 if lo.Contains(parentUser.ParentIds, user.Id) { c.Resp(fmt.Errorf("禁止设置自己为下级推荐")) return } if err := s.SetParentWithUid(user.Uid, parentUser.Uid, fmt.Sprintf("SetParent WithUser:%s", c.Uid()), false); err != nil { c.Resp(err.Error()) return } c.Resp(nil) }