Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
9bf1979f
Commit
9bf1979f
authored
Sep 19, 2023
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: list resources
parent
0a811e19
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
17 additions
and
3 deletions
+17
-3
resource_service.go
api/v2/resource_service.go
+1
-1
resource.go
store/resource.go
+16
-2
No files found.
api/v2/resource_service.go
View file @
9bf1979f
...
...
@@ -35,7 +35,7 @@ func (s *ResourceService) ListResources(ctx context.Context, _ *apiv2pb.ListReso
HasRelatedMemo
:
true
,
})
if
err
!=
nil
{
return
nil
,
status
.
Errorf
(
codes
.
Internal
,
"failed to list
tag
s: %v"
,
err
)
return
nil
,
status
.
Errorf
(
codes
.
Internal
,
"failed to list
resource
s: %v"
,
err
)
}
response
:=
&
apiv2pb
.
ListResourcesResponse
{}
...
...
store/resource.go
View file @
9bf1979f
...
...
@@ -4,6 +4,7 @@ import (
"context"
"database/sql"
"fmt"
"strconv"
"strings"
)
...
...
@@ -108,7 +109,7 @@ func (s *Store) ListResources(ctx context.Context, find *FindResource) ([]*Resou
query
:=
fmt
.
Sprintf
(
`
SELECT
GROUP_CONCAT(memo_resource.memo_id) as related_memo_id,
GROUP_CONCAT(memo_resource.memo_id) as related_memo_id
s
,
%s
FROM resource
LEFT JOIN memo_resource ON resource.id = memo_resource.resource_id
...
...
@@ -132,8 +133,9 @@ func (s *Store) ListResources(ctx context.Context, find *FindResource) ([]*Resou
list
:=
make
([]
*
Resource
,
0
)
for
rows
.
Next
()
{
resource
:=
Resource
{}
var
relatedMemoIDs
sql
.
NullString
dests
:=
[]
any
{
&
re
source
.
RelatedMemoID
,
&
re
latedMemoIDs
,
&
resource
.
ID
,
&
resource
.
Filename
,
&
resource
.
ExternalLink
,
...
...
@@ -150,6 +152,18 @@ func (s *Store) ListResources(ctx context.Context, find *FindResource) ([]*Resou
if
err
:=
rows
.
Scan
(
dests
...
);
err
!=
nil
{
return
nil
,
err
}
if
relatedMemoIDs
.
Valid
{
relatedMemoIDList
:=
strings
.
Split
(
relatedMemoIDs
.
String
,
","
)
if
len
(
relatedMemoIDList
)
>
0
{
// Only take the first related memo ID.
relatedMemoIDInt
,
err
:=
strconv
.
Atoi
(
relatedMemoIDList
[
0
])
if
err
!=
nil
{
return
nil
,
err
}
relatedMemoIDInt32
:=
int32
(
relatedMemoIDInt
)
resource
.
RelatedMemoID
=
&
relatedMemoIDInt32
}
}
list
=
append
(
list
,
&
resource
)
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment