Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
tagManager
Overview
Overview
Details
Activity
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
lanmw
tagManager
Commits
0bbf16c1
Commit
0bbf16c1
authored
Feb 29, 2020
by
zhangkb
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改根据标签获取数据接口
parent
47823d22
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
57 additions
and
19 deletions
+57
-19
TagService.java
...ain/java/com/keymobile/tagmanager/service/TagService.java
+57
-19
No files found.
src/main/java/com/keymobile/tagmanager/service/TagService.java
View file @
0bbf16c1
...
...
@@ -707,6 +707,13 @@ public class TagService {
Map
<
String
,
Object
>
tagData
=
repoService
.
getTagMetadata
(
dimensionType
,
idPath
,
keyword
,
modelPath
,
pageNum
,
pageSize
,
tagType
);
List
<
Map
<
String
,
Object
>>
content
=
(
List
<
Map
<
String
,
Object
>>)
tagData
.
get
(
"content"
);
//判断不是个人标签
if
(!
dimensionType
.
equals
(
"0"
))
{
for
(
Map
<
String
,
Object
>
mData
:
content
)
{
mData
.
put
(
"operable"
,
"1"
);
}
return
tagData
;
}
if
(
content
.
isEmpty
())
{
return
tagData
;
}
else
{
...
...
@@ -720,31 +727,62 @@ public class TagService {
tagData
.
put
(
"numberOfElements"
,
0
);
return
tagData
;
}
else
{
//比较标签关联的元数据所属系统跟用户被授予的系统是否一致
for
(
Map
<
String
,
Object
>
mData
:
content
)
{
mData
.
put
(
"operable"
,
"0"
);
if
(
mData
.
get
(
"sysList"
)!=
null
)
{
List
<
String
>
sysList
=
(
List
<
String
>)
mData
.
get
(
"sysList"
);
//比较系统,有同个系统的则为可见的共享标签
for
(
String
sys
:
sysList
)
{
if
(
systemTagMap
.
get
(
Long
.
valueOf
(
sys
))!=
null
)
{
if
(
systemTagMap
.
get
(
Long
.
valueOf
(
sys
)).
contains
(
"*"
))
{
mData
.
put
(
"operable"
,
"1"
);
}
else
{
//根据当前用户被授予的标签获取关联的元数据
Set
<
String
>
tags
=
systemTagMap
.
get
(
Long
.
valueOf
(
sys
));
for
(
String
usrTag
:
tags
)
{
Map
<
String
,
Object
>
userTagData
=
repoService
.
getTagMetadata
(
"1"
,
usrTag
,
""
,
null
,
1
,
100000
,
"1"
);
List
<
Map
<
String
,
Object
>>
tagContent
=
(
List
<
Map
<
String
,
Object
>>)
userTagData
.
get
(
"content"
);
if
(
tagContent
.
contains
(
mData
))
{
mData
.
put
(
"operable"
,
"1"
);
//如果是元数据
if
(
StringUtils
.
isBlank
(
modelPath
))
{
//比较标签关联的元数据所属系统跟用户被授予的系统是否一致
for
(
Map
<
String
,
Object
>
mData
:
content
)
{
mData
.
put
(
"operable"
,
"0"
);
if
(
mData
.
get
(
"sysList"
)!=
null
)
{
List
<
String
>
sysList
=
(
List
<
String
>)
mData
.
get
(
"sysList"
);
//比较系统,有同个系统的则为可见的共享标签
for
(
String
sys
:
sysList
)
{
if
(
systemTagMap
.
get
(
Long
.
valueOf
(
sys
))!=
null
)
{
if
(
systemTagMap
.
get
(
Long
.
valueOf
(
sys
)).
contains
(
"*"
))
{
mData
.
put
(
"operable"
,
"1"
);
}
else
{
//根据当前用户被授予的标签获取关联的元数据
Set
<
String
>
tags
=
systemTagMap
.
get
(
Long
.
valueOf
(
sys
));
for
(
String
usrTag
:
tags
)
{
Map
<
String
,
Object
>
userTagData
=
repoService
.
getTagMetadata
(
"1"
,
usrTag
,
""
,
null
,
1
,
100000
,
"1"
);
List
<
Map
<
String
,
Object
>>
tagContent
=
(
List
<
Map
<
String
,
Object
>>)
userTagData
.
get
(
"content"
);
if
(
tagContent
.
contains
(
mData
))
{
mData
.
put
(
"operable"
,
"1"
);
}
}
}
}
}
}
}
}
else
{
//定义存储标签list
List
<
String
>
tagList
=
new
ArrayList
<>();
//循环用户数据权限map
for
(
Map
.
Entry
<
Long
,
Set
<
String
>>
entry
:
systemTagMap
.
entrySet
())
{
Set
<
String
>
set
=
entry
.
getValue
();
for
(
String
tag
:
set
)
{
if
(
"*"
.
equals
(
tag
))
{
continue
;
}
tagList
.
add
(
tag
);
}
}
for
(
Map
<
String
,
Object
>
mData
:
content
)
{
mData
.
put
(
"operable"
,
"0"
);
if
(
tagList
.
isEmpty
())
{
mData
.
put
(
"operable"
,
"1"
);
}
else
{
for
(
String
usrTag
:
tagList
)
{
Map
<
String
,
Object
>
userTagData
=
repoService
.
getTagMetadata
(
"1"
,
usrTag
,
""
,
modelPath
,
1
,
100000
,
"1"
);
List
<
Map
<
String
,
Object
>>
tagContent
=
(
List
<
Map
<
String
,
Object
>>)
userTagData
.
get
(
"content"
);
if
(
tagContent
.
contains
(
mData
))
{
mData
.
put
(
"operable"
,
"1"
);
}
}
}
}
}
tagData
.
put
(
"content"
,
content
);
return
tagData
;
...
...
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