🐛 Bug fixes on query statement
This commit is contained in:
parent
553a87ab78
commit
f9a01bff70
2
go.mod
2
go.mod
@ -4,7 +4,7 @@ go 1.23.2
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
git.solsynth.dev/hypernet/nexus v0.0.0-20241031133156-6bb8eab3fcd8
|
git.solsynth.dev/hypernet/nexus v0.0.0-20241031133156-6bb8eab3fcd8
|
||||||
git.solsynth.dev/hypernet/passport v0.0.0-20241031144010-d1f1183beb36
|
git.solsynth.dev/hypernet/passport v0.0.0-20241102044832-40a040352174
|
||||||
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e
|
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e
|
||||||
github.com/fatih/color v1.17.0
|
github.com/fatih/color v1.17.0
|
||||||
github.com/go-playground/validator/v10 v10.22.1
|
github.com/go-playground/validator/v10 v10.22.1
|
||||||
|
2
go.sum
2
go.sum
@ -4,6 +4,8 @@ git.solsynth.dev/hypernet/nexus v0.0.0-20241031133156-6bb8eab3fcd8 h1:fo9WuAXcmx
|
|||||||
git.solsynth.dev/hypernet/nexus v0.0.0-20241031133156-6bb8eab3fcd8/go.mod h1:fXQsHXGio+7/0U95IitKF07wS4yTdCMp5ms8wpFBwVI=
|
git.solsynth.dev/hypernet/nexus v0.0.0-20241031133156-6bb8eab3fcd8/go.mod h1:fXQsHXGio+7/0U95IitKF07wS4yTdCMp5ms8wpFBwVI=
|
||||||
git.solsynth.dev/hypernet/passport v0.0.0-20241031144010-d1f1183beb36 h1:rzDuXRTCbWJOgfT7bG0cWFcYqbWKnI1aEfiovpXfsdM=
|
git.solsynth.dev/hypernet/passport v0.0.0-20241031144010-d1f1183beb36 h1:rzDuXRTCbWJOgfT7bG0cWFcYqbWKnI1aEfiovpXfsdM=
|
||||||
git.solsynth.dev/hypernet/passport v0.0.0-20241031144010-d1f1183beb36/go.mod h1:EjUDX5HdTo3J1GfAN5mfDf0JxRspzASj8uysa4V/ow0=
|
git.solsynth.dev/hypernet/passport v0.0.0-20241031144010-d1f1183beb36/go.mod h1:EjUDX5HdTo3J1GfAN5mfDf0JxRspzASj8uysa4V/ow0=
|
||||||
|
git.solsynth.dev/hypernet/passport v0.0.0-20241102044832-40a040352174 h1:XplLpEeQOFlZR2/A4YIeh0B/g9//pXg/TXtWrvHDops=
|
||||||
|
git.solsynth.dev/hypernet/passport v0.0.0-20241102044832-40a040352174/go.mod h1:EjUDX5HdTo3J1GfAN5mfDf0JxRspzASj8uysa4V/ow0=
|
||||||
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e h1:DtHhMjgxS/spUt/KEdbRFtaVnepI6Vx8pbHdJaNH1hs=
|
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e h1:DtHhMjgxS/spUt/KEdbRFtaVnepI6Vx8pbHdJaNH1hs=
|
||||||
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e/go.mod h1:XHTqFU/vBe4JiuAjl87GUcL8+w/IizSNoqH6n3WkQFc=
|
git.solsynth.dev/hypernet/pusher v0.0.0-20241026153052-cd2c326efa4e/go.mod h1:XHTqFU/vBe4JiuAjl87GUcL8+w/IizSNoqH6n3WkQFc=
|
||||||
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
|
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
|
||||||
|
@ -37,7 +37,7 @@ func universalPostFilter(c *fiber.Ctx, tx *gorm.DB) (*gorm.DB, error) {
|
|||||||
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
||||||
return tx, fiber.NewError(fiber.StatusNotFound, err.Error())
|
return tx, fiber.NewError(fiber.StatusNotFound, err.Error())
|
||||||
}
|
}
|
||||||
tx = tx.Where("author_id = ?", author.ID)
|
tx = tx.Where("publisher_id = ?", author.ID)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(c.Query("category")) > 0 {
|
if len(c.Query("category")) > 0 {
|
||||||
@ -330,7 +330,7 @@ func pinPost(c *fiber.Ctx) error {
|
|||||||
user := c.Locals("user").(authm.Account)
|
user := c.Locals("user").(authm.Account)
|
||||||
|
|
||||||
var res models.Post
|
var res models.Post
|
||||||
if err := database.C.Where("id = ? AND author_id = ?", c.Params("postId"), user.ID).First(&res).Error; err != nil {
|
if err := database.C.Where("id = ? AND publisher_id = ?", c.Params("postId"), user.ID).First(&res).Error; err != nil {
|
||||||
return fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("unable to find post in your posts to pin: %v", err))
|
return fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("unable to find post in your posts to pin: %v", err))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ func listPinnedPost(c *fiber.Ctx) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tx := services.FilterPostDraft(database.C)
|
tx := services.FilterPostDraft(database.C)
|
||||||
tx = tx.Where("author_id = ?", user.ID)
|
tx = tx.Where("publisher_id = ?", user.ID)
|
||||||
tx = tx.Where("pinned_at IS NOT NULL")
|
tx = tx.Where("pinned_at IS NOT NULL")
|
||||||
|
|
||||||
items, err := services.ListPost(tx, 100, 0, "published_at DESC")
|
items, err := services.ListPost(tx, 100, 0, "published_at DESC")
|
||||||
|
@ -74,7 +74,7 @@ func listRecommendationFriends(c *fiber.Ctx) error {
|
|||||||
return uint(item.GetId())
|
return uint(item.GetId())
|
||||||
})
|
})
|
||||||
|
|
||||||
tx = tx.Where("author_id IN ?", friendList)
|
tx = tx.Where("publisher_id IN ?", friendList)
|
||||||
|
|
||||||
countTx := tx
|
countTx := tx
|
||||||
count, err := services.CountPost(countTx)
|
count, err := services.CountPost(countTx)
|
||||||
|
@ -25,7 +25,7 @@ func listPostReplies(c *fiber.Ctx) error {
|
|||||||
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
||||||
return fiber.NewError(fiber.StatusNotFound, err.Error())
|
return fiber.NewError(fiber.StatusNotFound, err.Error())
|
||||||
}
|
}
|
||||||
tx = tx.Where("author_id = ?", author.ID)
|
tx = tx.Where("publisher_id = ?", author.ID)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(c.Query("category")) > 0 {
|
if len(c.Query("category")) > 0 {
|
||||||
@ -68,7 +68,7 @@ func listPostFeaturedReply(c *fiber.Ctx) error {
|
|||||||
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
if err := database.C.Where("name = ?", c.Query("author")).First(&author).Error; err != nil {
|
||||||
return fiber.NewError(fiber.StatusNotFound, err.Error())
|
return fiber.NewError(fiber.StatusNotFound, err.Error())
|
||||||
}
|
}
|
||||||
tx = tx.Where("author_id = ?", author.ID)
|
tx = tx.Where("publisher_id = ?", author.ID)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(c.Query("category")) > 0 {
|
if len(c.Query("category")) > 0 {
|
||||||
|
@ -24,7 +24,7 @@ func GetConversation(start uint, offset, take int, order string, participants []
|
|||||||
|
|
||||||
SELECT p.*
|
SELECT p.*
|
||||||
FROM %s p
|
FROM %s p
|
||||||
INNER JOIN conversation c ON p.reply_id = c.id AND p.author_id IN (?)
|
INNER JOIN conversation c ON p.reply_id = c.id AND p.publisher_id IN (?)
|
||||||
)
|
)
|
||||||
SELECT * FROM conversation ORDER BY %s DESC OFFSET %d LIMIT %d`,
|
SELECT * FROM conversation ORDER BY %s DESC OFFSET %d LIMIT %d`,
|
||||||
table, table, order, offset, take,
|
table, table, order, offset, take,
|
||||||
|
@ -41,7 +41,7 @@ func FilterPostWithUserContext(tx *gorm.DB, user *authm.Account) *gorm.DB {
|
|||||||
})
|
})
|
||||||
|
|
||||||
tx = tx.Where(
|
tx = tx.Where(
|
||||||
"(visibility != ? OR (visibility != ? AND author_id IN ? AND author_id NOT IN ?) OR (visibility = ? AND ?) OR (visibility = ? AND NOT ?) OR author_id = ?)",
|
"(visibility != ? OR (visibility != ? AND publisher_id IN ? AND publisher_id NOT IN ?) OR (visibility = ? AND ?) OR (visibility = ? AND NOT ?) OR publisher_id = ?)",
|
||||||
NoneVisibility,
|
NoneVisibility,
|
||||||
FriendsVisibility,
|
FriendsVisibility,
|
||||||
allowlist,
|
allowlist,
|
||||||
@ -91,7 +91,7 @@ func FilterPostWithPublishedAt(tx *gorm.DB, date time.Time) *gorm.DB {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func FilterPostWithAuthorDraft(tx *gorm.DB, uid uint) *gorm.DB {
|
func FilterPostWithAuthorDraft(tx *gorm.DB, uid uint) *gorm.DB {
|
||||||
return tx.Where("author_id = ? AND is_draft = ?", uid, true)
|
return tx.Where("publisher_id = ? AND is_draft = ?", uid, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
func FilterPostDraft(tx *gorm.DB) *gorm.DB {
|
func FilterPostDraft(tx *gorm.DB) *gorm.DB {
|
||||||
|
Loading…
Reference in New Issue
Block a user