mirror of
https://github.com/usememos/memos.git
synced 2025-06-05 22:09:59 +02:00
chore: find memo by tag (#74)
This commit is contained in:
@ -42,7 +42,8 @@ type MemoFind struct {
|
|||||||
CreatorID *int `json:"creatorId"`
|
CreatorID *int `json:"creatorId"`
|
||||||
|
|
||||||
// Domain specific fields
|
// Domain specific fields
|
||||||
Pinned *bool
|
Pinned *bool
|
||||||
|
Tag *string
|
||||||
}
|
}
|
||||||
|
|
||||||
type MemoDelete struct {
|
type MemoDelete struct {
|
||||||
|
@ -75,6 +75,10 @@ func (s *Server) registerMemoRoutes(g *echo.Group) {
|
|||||||
pinned := pinnedStr == "true"
|
pinned := pinnedStr == "true"
|
||||||
memoFind.Pinned = &pinned
|
memoFind.Pinned = &pinned
|
||||||
}
|
}
|
||||||
|
tag := c.QueryParam("tag")
|
||||||
|
if tag != "" {
|
||||||
|
memoFind.Tag = &tag
|
||||||
|
}
|
||||||
|
|
||||||
list, err := s.Store.FindMemoList(memoFind)
|
list, err := s.Store.FindMemoList(memoFind)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -107,6 +107,15 @@ func (s *Server) registerWebhookRoutes(g *echo.Group) {
|
|||||||
if rowStatus != "" {
|
if rowStatus != "" {
|
||||||
memoFind.RowStatus = &rowStatus
|
memoFind.RowStatus = &rowStatus
|
||||||
}
|
}
|
||||||
|
pinnedStr := c.QueryParam("pinned")
|
||||||
|
if pinnedStr != "" {
|
||||||
|
pinned := pinnedStr == "true"
|
||||||
|
memoFind.Pinned = &pinned
|
||||||
|
}
|
||||||
|
tag := c.QueryParam("tag")
|
||||||
|
if tag != "" {
|
||||||
|
memoFind.Tag = &tag
|
||||||
|
}
|
||||||
|
|
||||||
list, err := s.Store.FindMemoList(memoFind)
|
list, err := s.Store.FindMemoList(memoFind)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -209,6 +209,9 @@ func findMemoRawList(db *sql.DB, find *api.MemoFind) ([]*memoRaw, error) {
|
|||||||
if v := find.Pinned; v != nil {
|
if v := find.Pinned; v != nil {
|
||||||
where = append(where, "id in (SELECT memo_id FROM memo_organizer WHERE pinned = 1 AND user_id = memo.creator_id )")
|
where = append(where, "id in (SELECT memo_id FROM memo_organizer WHERE pinned = 1 AND user_id = memo.creator_id )")
|
||||||
}
|
}
|
||||||
|
if v := find.Tag; v != nil {
|
||||||
|
where, args = append(where, "content LIKE ?"), append(args, "%#"+*v+"%")
|
||||||
|
}
|
||||||
|
|
||||||
rows, err := db.Query(`
|
rows, err := db.Query(`
|
||||||
SELECT
|
SELECT
|
||||||
|
Reference in New Issue
Block a user