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
98b3a371
Unverified
Commit
98b3a371
authored
May 21, 2023
by
boojack
Committed by
GitHub
May 21, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: patch memo visibility (#1695)
parent
ba8e1e5d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
47 additions
and
43 deletions
+47
-43
memo.go
server/memo.go
+47
-43
No files found.
server/memo.go
View file @
98b3a371
...
@@ -163,54 +163,58 @@ func (s *Server) registerMemoRoutes(g *echo.Group) {
...
@@ -163,54 +163,58 @@ func (s *Server) registerMemoRoutes(g *echo.Group) {
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to compose memo"
)
.
SetInternal
(
err
)
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to compose memo"
)
.
SetInternal
(
err
)
}
}
resourceIDList
:=
make
([]
int
,
0
)
if
memoPatch
.
ResourceIDList
!=
nil
{
for
_
,
resource
:=
range
memo
.
ResourceList
{
resourceIDList
:=
make
([]
int
,
0
)
resourceIDList
=
append
(
resourceIDList
,
resource
.
ID
)
for
_
,
resource
:=
range
memo
.
ResourceList
{
}
resourceIDList
=
append
(
resourceIDList
,
resource
.
ID
)
addedResourceIDList
,
removedResourceIDList
:=
getIDListDiff
(
resourceIDList
,
memoPatch
.
ResourceIDList
)
for
_
,
resourceID
:=
range
addedResourceIDList
{
if
_
,
err
:=
s
.
Store
.
UpsertMemoResource
(
ctx
,
&
api
.
MemoResourceUpsert
{
MemoID
:
memo
.
ID
,
ResourceID
:
resourceID
,
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to upsert memo resource"
)
.
SetInternal
(
err
)
}
}
}
addedResourceIDList
,
removedResourceIDList
:=
getIDListDiff
(
resourceIDList
,
memoPatch
.
ResourceIDList
)
for
_
,
resourceID
:=
range
removedResourceIDList
{
for
_
,
resourceID
:=
range
addedResourceIDList
{
if
err
:=
s
.
Store
.
DeleteMemoResource
(
ctx
,
&
api
.
MemoResourceDelete
{
if
_
,
err
:=
s
.
Store
.
UpsertMemoResource
(
ctx
,
&
api
.
MemoResourceUpsert
{
MemoID
:
&
memo
.
ID
,
MemoID
:
memo
.
ID
,
ResourceID
:
&
resourceID
,
ResourceID
:
resourceID
,
});
err
!=
nil
{
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to delete memo resource"
)
.
SetInternal
(
err
)
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to upsert memo resource"
)
.
SetInternal
(
err
)
}
}
for
_
,
resourceID
:=
range
removedResourceIDList
{
if
err
:=
s
.
Store
.
DeleteMemoResource
(
ctx
,
&
api
.
MemoResourceDelete
{
MemoID
:
&
memo
.
ID
,
ResourceID
:
&
resourceID
,
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to delete memo resource"
)
.
SetInternal
(
err
)
}
}
}
}
}
patchMemoRelationList
:=
make
([]
*
api
.
MemoRelation
,
0
)
if
memoPatch
.
RelationList
!=
nil
{
for
_
,
memoRelationUpsert
:=
range
memoPatch
.
RelationList
{
patchMemoRelationList
:=
make
([]
*
api
.
MemoRelation
,
0
)
patchMemoRelationList
=
append
(
patchMemoRelationList
,
&
api
.
MemoRelation
{
for
_
,
memoRelationUpsert
:=
range
memoPatch
.
RelationList
{
MemoID
:
memo
.
ID
,
patchMemoRelationList
=
append
(
patchMemoRelationList
,
&
api
.
MemoRelation
{
RelatedMemoID
:
memoRelationUpsert
.
RelatedMemoID
,
MemoID
:
memo
.
ID
,
Type
:
memoRelationUpsert
.
Type
,
RelatedMemoID
:
memoRelationUpsert
.
RelatedMemoID
,
})
Type
:
memoRelationUpsert
.
Type
,
}
})
addedMemoRelationList
,
removedMemoRelationList
:=
getMemoRelationListDiff
(
memo
.
RelationList
,
patchMemoRelationList
)
for
_
,
memoRelation
:=
range
addedMemoRelationList
{
if
_
,
err
:=
s
.
Store
.
UpsertMemoRelation
(
ctx
,
&
store
.
MemoRelationMessage
{
MemoID
:
memo
.
ID
,
RelatedMemoID
:
memoRelation
.
RelatedMemoID
,
Type
:
store
.
MemoRelationType
(
memoRelation
.
Type
),
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to upsert memo relation"
)
.
SetInternal
(
err
)
}
}
}
addedMemoRelationList
,
removedMemoRelationList
:=
getMemoRelationListDiff
(
memo
.
RelationList
,
patchMemoRelationList
)
for
_
,
memoRelation
:=
range
removedMemoRelationList
{
for
_
,
memoRelation
:=
range
addedMemoRelationList
{
memoRelationType
:=
store
.
MemoRelationType
(
memoRelation
.
Type
)
if
_
,
err
:=
s
.
Store
.
UpsertMemoRelation
(
ctx
,
&
store
.
MemoRelationMessage
{
if
err
:=
s
.
Store
.
DeleteMemoRelation
(
ctx
,
&
store
.
DeleteMemoRelationMessage
{
MemoID
:
memo
.
ID
,
MemoID
:
&
memo
.
ID
,
RelatedMemoID
:
memoRelation
.
RelatedMemoID
,
RelatedMemoID
:
&
memoRelation
.
RelatedMemoID
,
Type
:
store
.
MemoRelationType
(
memoRelation
.
Type
),
Type
:
&
memoRelationType
,
});
err
!=
nil
{
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to upsert memo relation"
)
.
SetInternal
(
err
)
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to delete memo relation"
)
.
SetInternal
(
err
)
}
}
for
_
,
memoRelation
:=
range
removedMemoRelationList
{
memoRelationType
:=
store
.
MemoRelationType
(
memoRelation
.
Type
)
if
err
:=
s
.
Store
.
DeleteMemoRelation
(
ctx
,
&
store
.
DeleteMemoRelationMessage
{
MemoID
:
&
memo
.
ID
,
RelatedMemoID
:
&
memoRelation
.
RelatedMemoID
,
Type
:
&
memoRelationType
,
});
err
!=
nil
{
return
echo
.
NewHTTPError
(
http
.
StatusInternalServerError
,
"Failed to delete memo relation"
)
.
SetInternal
(
err
)
}
}
}
}
}
...
...
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