|
|
|
@ -114,8 +114,6 @@ func Users(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
|
|
|
|
|
scopes := []func(db *gorm.DB) *gorm.DB{}
|
|
|
|
|
|
|
|
|
|
switch ctx.Query("role") {
|
|
|
|
@ -131,25 +129,6 @@ func Users(ctx *gin.Context) {
|
|
|
|
|
scopes = append(scopes, db.WhereRole(dbModel.RoleRoot))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("username"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("username"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if keyword := ctx.Query("keyword"); keyword != "" {
|
|
|
|
|
// search mode, all, name, id
|
|
|
|
|
switch ctx.DefaultQuery("search", "all") {
|
|
|
|
@ -181,6 +160,26 @@ func Users(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("username"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("username"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
list, err := db.GetAllUsers(append(scopes, db.Paginate(page, pageSize))...)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.WithError(err).Error("get all users error")
|
|
|
|
@ -218,8 +217,6 @@ func AdminGetRoomMembers(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
|
|
|
|
|
scopes := []func(db *gorm.DB) *gorm.DB{}
|
|
|
|
|
|
|
|
|
|
switch ctx.DefaultQuery("status", "active") {
|
|
|
|
@ -240,25 +237,6 @@ func AdminGetRoomMembers(ctx *gin.Context) {
|
|
|
|
|
scopes = append(scopes, db.WhereRoomMemberRole(dbModel.RoomMemberRoleCreator))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "join":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByUsersCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByUsersCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("username"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("username"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Errorf("get room users failed: not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if keyword := ctx.Query("keyword"); keyword != "" {
|
|
|
|
|
// search mode, all, name, id
|
|
|
|
|
switch ctx.DefaultQuery("search", "all") {
|
|
|
|
@ -297,6 +275,26 @@ func AdminGetRoomMembers(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "join":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByUsersCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByUsersCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("username"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("username"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Errorf("get room users failed: not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
list, err := db.GetAllUsers(append(scopes, db.Paginate(page, pageSize))...)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Errorf("get room users failed: %v", err)
|
|
|
|
@ -454,8 +452,6 @@ func Rooms(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
|
|
|
|
|
scopes := []func(db *gorm.DB) *gorm.DB{}
|
|
|
|
|
|
|
|
|
|
switch ctx.Query("status") {
|
|
|
|
@ -467,25 +463,6 @@ func Rooms(ctx *gin.Context) {
|
|
|
|
|
scopes = append(scopes, db.WhereStatus(dbModel.RoomStatusBanned))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("name"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("name"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if keyword := ctx.Query("keyword"); keyword != "" {
|
|
|
|
|
// search mode, all, name, creator
|
|
|
|
|
switch ctx.DefaultQuery("search", "all") {
|
|
|
|
@ -521,6 +498,26 @@ func Rooms(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("name"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("name"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
list, err := genRoomListResp(append(scopes, db.Paginate(page, pageSize))...)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.WithError(err).Error("gen room list resp error")
|
|
|
|
@ -550,8 +547,6 @@ func GetUserRooms(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
|
|
|
|
|
scopes := []func(db *gorm.DB) *gorm.DB{
|
|
|
|
|
db.WhereCreatorID(id),
|
|
|
|
|
}
|
|
|
|
@ -565,25 +560,6 @@ func GetUserRooms(ctx *gin.Context) {
|
|
|
|
|
scopes = append(scopes, db.WhereStatus(dbModel.RoomStatusBanned))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("name"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("name"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if keyword := ctx.Query("keyword"); keyword != "" {
|
|
|
|
|
// search mode, all, name, creator
|
|
|
|
|
switch ctx.DefaultQuery("search", "all") {
|
|
|
|
@ -603,6 +579,26 @@ func GetUserRooms(ctx *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var desc = ctx.DefaultQuery("order", "desc") == "desc"
|
|
|
|
|
switch ctx.DefaultQuery("sort", "name") {
|
|
|
|
|
case "createdAt":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtDesc)
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByCreatedAtAsc)
|
|
|
|
|
}
|
|
|
|
|
case "name":
|
|
|
|
|
if desc {
|
|
|
|
|
scopes = append(scopes, db.OrderByDesc("name"))
|
|
|
|
|
} else {
|
|
|
|
|
scopes = append(scopes, db.OrderByAsc("name"))
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
log.Error("not support sort")
|
|
|
|
|
ctx.AbortWithStatusJSON(http.StatusBadRequest, model.NewApiErrorStringResp("not support sort"))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
list, err := genRoomListResp(append(scopes, db.Paginate(page, pageSize))...)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.WithError(err).Error("gen room list resp error")
|
|
|
|
|