package user import ( "mtp2_if/global/app" "mtp2_if/global/e" "mtp2_if/logger" "mtp2_if/models" "net/http" "github.com/gin-gonic/gin" ) // QueryUserReferNumReq 获取用户邀请码请求参数 type QueryUserReferNumReq struct { UserID int `form:"userID" binding:"required"` } // QueryUserReferNum 获取用户邀请码 // @Summary 获取用户邀请码 // @Produce json // @Param userID query int true "用户ID" // @Success 200 {object} app.Response // @Failure 500 {object} app.Response // @Router /User/QueryUserReferNum [get] // @Tags 用户信息 func QueryUserReferNum(c *gin.Context) { appG := app.Gin{C: c} // 获取请求参数 var req QueryUserReferNumReq if err := appG.C.ShouldBindQuery(&req); err != nil { logger.GetLogger().Errorf("QueryUserReferNum failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil) return } var ( userAccount *models.Useraccount err error ) if userAccount, err = models.GetUserAccount(req.UserID); err != nil { // 查询失败 logger.GetLogger().Errorf("QueryUserReferNum failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil) return } // 查询成功 logger.GetLogger().Debugln("QueryUserReferNum successed: %v", userAccount.Refernum) appG.Response(http.StatusOK, e.SUCCESS, userAccount.Refernum) } // QueryUserInfoReq 获取用户信息请求参数 type QueryUserInfoReq struct { UserID int `form:"userID" binding:"required"` } // QueryUserInfo 获取用户信息 // @Summary 获取用户信息 // @Produce json // @Security ApiKeyAuth // @Param userID query int true "用户ID" // @Success 200 {object} models.Userinfo // @Failure 500 {object} app.Response // @Router /User/QueryUserInfo [get] // @Tags 用户信息 func QueryUserInfo(c *gin.Context) { appG := app.Gin{C: c} // 获取请求参数 var req QueryUserReferNumReq if err := appG.C.ShouldBindQuery(&req); err != nil { logger.GetLogger().Errorf("QueryUserInfo failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil) return } // 查询数据 var ( data *models.Userinfo err error ) if data, err = models.GetUserInfo(req.UserID); err != nil { // 查询失败 logger.GetLogger().Errorf("QueryUserInfo failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil) return } // 查询成功 logger.GetLogger().Debugln("QueryUserInfo successed: %v", data) appG.Response(http.StatusOK, e.SUCCESS, data) } // GetUserAuthStatusReq 获取用户实名认证状态请求参数 type GetUserAuthStatusReq struct { UserID int `form:"userID" binding:"required"` // 用户ID } // GetUserAuthStatus 获取用户实名认证状态 // @Summary 获取用户实名认证状态 // @Produce json // @Security ApiKeyAuth // @Param userID query int true "用户ID" // @Success 200 {bool} app.Response // @Failure 500 {object} app.Response // @Router /User/GetUserAuthStatus [get] // @Tags 用户信息 func GetUserAuthStatus(c *gin.Context) { appG := app.Gin{C: c} // 获取请求参数 var req GetUserAuthStatusReq if err := appG.C.ShouldBindQuery(&req); err != nil { logger.GetLogger().Errorf("GetUserAuthStatus failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil) return } isAuth := false var ( userAccount *models.Useraccount err error ) if userAccount, err = models.GetUserAccount(req.UserID); err != nil { // 查询失败 logger.GetLogger().Errorf("GetUserAuthStatus failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil) return } if userAccount != nil { if userAccount.Hasauth == 1 { isAuth = true } } // 查询成功 logger.GetLogger().Debugln("GetUserAuthStatus successed: %v", isAuth) appG.Response(http.StatusOK, e.SUCCESS, isAuth) }