Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
apps-collaboration
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
高燕
apps-collaboration
Commits
54c1c5fc
Commit
54c1c5fc
authored
Nov 07, 2020
by
gaoyingwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update:新增一个系统到OA
parent
6cd9d9b6
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
139 additions
and
119 deletions
+139
-119
CollaborationController.java
...pps/collaboration/controller/CollaborationController.java
+139
-119
No files found.
src/main/java/com/seeyon/apps/collaboration/controller/CollaborationController.java
View file @
54c1c5fc
...
@@ -3970,128 +3970,148 @@ public class CollaborationController extends BaseController {
...
@@ -3970,128 +3970,148 @@ public class CollaborationController extends BaseController {
return
mav
;
return
mav
;
}
}
public
ModelAndView
index
(
HttpServletRequest
request
,
public
ModelAndView
index
(
HttpServletRequest
request
,
HttpServletResponse
response
)
throws
Exception
{
HttpServletResponse
response
)
throws
Exception
{
ModelAndView
modelAndView
=
new
ModelAndView
(
"apps/collaboration/index"
);
ModelAndView
modelAndView
=
new
ModelAndView
(
"apps/collaboration/index"
);
JSONObject
jsonObject
=
new
JSONObject
();
JSONObject
jsonObject
=
new
JSONObject
();
String
decodeRs
=
null
;
String
decodeRs
=
null
;
String
code
=
request
.
getParameter
(
"code"
);
String
code
=
request
.
getParameter
(
"code"
);
modelAndView
.
addObject
(
"code"
,
code
);
modelAndView
.
addObject
(
"code"
,
code
);
String
filePath
=
SystemEnvironment
.
getApplicationFolder
()
+
File
.
separator
+
"fkmap"
+
File
.
separator
+
"url.properties"
;
String
filePath
=
SystemEnvironment
.
getApplicationFolder
()
+
File
.
separator
+
"fkmap"
+
File
.
separator
+
"url.properties"
;
InputStream
in
=
new
BufferedInputStream
(
new
FileInputStream
(
filePath
));
InputStream
in
=
new
BufferedInputStream
(
new
FileInputStream
(
filePath
));
Properties
p
=
new
Properties
();
Properties
p
=
new
Properties
();
p
.
load
(
in
);
p
.
load
(
in
);
//oa的统一认证编码
//oa的统一认证编码
String
oaAppCode
=
p
.
getProperty
(
"oaAppCode"
);
String
oaAppCode
=
p
.
getProperty
(
"oaAppCode"
);
//门户的统一认证编码
//门户的统一认证编码
String
menghuAppCode
=
p
.
getProperty
(
"menghuAppCode"
);
String
menghuAppCode
=
p
.
getProperty
(
"menghuAppCode"
);
//erp的统一认证编码
//erp的统一认证编码
String
erpAppCode
=
p
.
getProperty
(
"erpAppCode"
);
String
erpAppCode
=
p
.
getProperty
(
"erpAppCode"
);
//数字文档的统一认证编码
//数字文档的统一认证编码
String
docAppCode
=
p
.
getProperty
(
"docAppCode"
);
String
docAppCode
=
p
.
getProperty
(
"docAppCode"
);
//数字文档的统一认证编码
//获取权限url
String
edmsAppCode
=
p
.
getProperty
(
"edmsAppCode"
);
String
getQXUrl
=
p
.
getProperty
(
"getQXUrl"
);
//获取权限url
String
getQXUrl
=
p
.
getProperty
(
"getQXUrl"
);
// String userAuthorizedApps = "";
// String userAuthorizedApps = "";
User
user
=
AppContext
.
getCurrentUser
();
User
user
=
AppContext
.
getCurrentUser
();
//用户登录后的权限
//用户登录后的权限
String
quanXian
=
getQuanXian
(
user
.
getLoginName
(),
getQXUrl
);
LOG
.
info
(
"userName:"
+
user
.
getLoginName
()+
" /-------"
+
getQXUrl
);
//获取后判断是否成功
String
quanXian
=
getQuanXian
(
user
.
getLoginName
(),
getQXUrl
);
if
(
StringUtils
.
isBlank
(
quanXian
))
{
//获取后判断是否成功
LOG
.
error
(
"获取认证权限失败"
);
if
(
StringUtils
.
isBlank
(
quanXian
))
{
return
modelAndView
;
LOG
.
error
(
"获取认证权限失败"
);
}
return
modelAndView
;
//用户截取权限
}
String
[]
split
=
quanXian
.
split
(
"\\|"
);
//用户截取权限
List
<
String
>
list
=
new
ArrayList
();
String
[]
split
=
quanXian
.
split
(
"\\|"
);
//遍历截取#号前面的有用信息
List
<
String
>
list
=
new
ArrayList
();
for
(
String
s
:
split
)
{
//遍历截取#号前面的有用信息
int
end
=
s
.
indexOf
(
"#"
);
for
(
String
s
:
split
)
{
String
substring
=
s
.
substring
(
0
,
end
);
int
end
=
s
.
indexOf
(
"#"
);
list
.
add
(
substring
);
String
substring
=
s
.
substring
(
0
,
end
);
}
list
.
add
(
substring
);
boolean
isErp
=
false
;
}
boolean
isDoc
=
false
;
boolean
isErp
=
false
;
if
(
code
.
equals
(
"erp"
))
{
boolean
isDoc
=
false
;
for
(
String
s
:
list
)
{
boolean
isEdms
=
false
;
if
(
erpAppCode
.
equals
(
s
))
{
if
(
code
.
equals
(
"erp"
))
{
isErp
=
true
;
for
(
String
s
:
list
)
{
break
;
if
(
erpAppCode
.
equals
(
s
))
{
}
isErp
=
true
;
}
break
;
if
(!
isErp
)
{
}
LOG
.
info
(
"该用户没有印刷管理权限!"
);
}
return
modelAndView
;
if
(!
isErp
)
{
}
LOG
.
info
(
"该用户没有印刷管理权限!"
);
}
else
if
(
code
.
equals
(
"doc"
)){
return
modelAndView
;
for
(
String
s
:
list
)
{
}
if
(
docAppCode
.
equals
(
s
))
{
}
else
if
(
code
.
equals
(
"doc"
)){
isDoc
=
true
;
for
(
String
s
:
list
)
{
break
;
if
(
docAppCode
.
equals
(
s
))
{
}
isDoc
=
true
;
}
break
;
if
(!
isDoc
)
{
}
LOG
.
info
(
"该用户没有印刷管理权限!"
);
}
return
modelAndView
;
if
(!
isDoc
)
{
}
LOG
.
info
(
"该用户没有数字文档权限!"
);
}
return
modelAndView
;
String
getTicketUrl
=
p
.
getProperty
(
"getTicketUrl"
);
}
String
map
=
""
;
}
else
if
(
code
.
equals
(
"edms"
)){
LOG
.
info
(
"当前登录人:"
+
user
.
getLoginName
());
for
(
String
s
:
list
)
{
if
(
code
.
equals
(
"erp"
))
{
if
(
edmsAppCode
.
equals
(
s
))
{
//如果存在erp权限,则获取token
isEdms
=
true
;
map
=
getTicket
(
getTicketUrl
,
erpAppCode
,
user
.
getLoginName
());
break
;
}
else
if
(
code
.
equals
(
"doc"
)){
}
//如果存在doc权限,则获取token
}
map
=
getTicket
(
getTicketUrl
,
docAppCode
,
user
.
getLoginName
());
if
(!
isEdms
)
{
}
LOG
.
info
(
"该用户没有文档管理权限!"
);
if
(
StringUtils
.
isNotBlank
(
map
)){
return
modelAndView
;
decodeRs
=
URLDecoder
.
decode
(
map
,
"UTF-8"
);
}
jsonObject
=
JSONObject
.
fromObject
(
decodeRs
.
replace
(
"\r\n"
,
""
));
}
}
String
getTicketUrl
=
p
.
getProperty
(
"getTicketUrl"
);
String
token
=
""
;
String
map
=
""
;
if
(
jsonObject
.
get
(
"status"
).
equals
(
"0"
)){
LOG
.
info
(
"当前登录人:"
+
user
.
getLoginName
());
token
=
(
String
)
jsonObject
.
get
(
"token"
);
if
(
code
.
equals
(
"erp"
))
{
LOG
.
info
(
"token:"
+
token
);
//如果存在erp权限,则获取token
}
else
{
map
=
getTicket
(
getTicketUrl
,
erpAppCode
,
user
.
getLoginName
());
LOG
.
error
(
jsonObject
.
get
(
"errorMsg"
));
}
else
if
(
code
.
equals
(
"doc"
)){
return
modelAndView
;
//如果存在doc权限,则获取token
}
map
=
getTicket
(
getTicketUrl
,
docAppCode
,
user
.
getLoginName
());
}
else
if
(
code
.
equals
(
"edms"
)){
//如果存在doc权限,则获取token
map
=
getTicket
(
getTicketUrl
,
edmsAppCode
,
user
.
getLoginName
());
}
if
(
StringUtils
.
isNotBlank
(
map
)){
decodeRs
=
URLDecoder
.
decode
(
map
,
"UTF-8"
);
jsonObject
=
JSONObject
.
fromObject
(
decodeRs
.
replace
(
"\r\n"
,
""
));
}
String
token
=
""
;
if
(
jsonObject
.
get
(
"status"
).
equals
(
"0"
)){
token
=
(
String
)
jsonObject
.
get
(
"token"
);
LOG
.
info
(
"token:"
+
token
);
}
else
{
LOG
.
error
(
jsonObject
.
get
(
"errorMsg"
));
return
modelAndView
;
}
// String token = (String) map.get("token");
// String token = (String) map.get("token");
modelAndView
.
addObject
(
"token"
,
token
);
modelAndView
.
addObject
(
"token"
,
token
);
return
modelAndView
;
return
modelAndView
;
}
}
//获取用户登录后的权限
//获取用户登录后的权限
private
String
getQuanXian
(
String
userName
,
String
getQuanXianUrl
)
throws
UnsupportedEncodingException
{
private
String
getQuanXian
(
String
userName
,
String
getQuanXianUrl
)
throws
UnsupportedEncodingException
{
JSONObject
jsonObject
=
new
JSONObject
();
JSONObject
jsonObject
=
new
JSONObject
();
String
decodeRs
=
null
;
String
decodeRs
=
null
;
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"loginName"
,
userName
);
map
.
put
(
"loginName"
,
userName
);
//发送请求
//发送请求
getQuanXianUrl
=
getQuanXianUrl
+
"?loginName={loginName}"
;
getQuanXianUrl
=
getQuanXianUrl
+
"?loginName={loginName}"
;
RestTemplate
rest
=
new
RestTemplate
();
RestTemplate
rest
=
new
RestTemplate
();
List
<
HttpMessageConverter
<?>>
list
=
rest
.
getMessageConverters
();
List
<
HttpMessageConverter
<?>>
list
=
rest
.
getMessageConverters
();
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
HttpMessageConverter
<?>
httpMessageConverter
=
list
.
get
(
i
);
HttpMessageConverter
<?>
httpMessageConverter
=
list
.
get
(
i
);
if
(
httpMessageConverter
.
getClass
().
equals
(
StringHttpMessageConverter
.
class
))
{
if
(
httpMessageConverter
.
getClass
().
equals
(
StringHttpMessageConverter
.
class
))
{
list
.
set
(
i
,
new
StringHttpMessageConverter
(
Charset
.
forName
(
"utf-8"
)));
list
.
set
(
i
,
new
StringHttpMessageConverter
(
Charset
.
forName
(
"utf-8"
)));
}
}
}
}
String
respnose
=
rest
.
getForObject
(
getQuanXianUrl
,
String
.
class
,
map
);
LOG
.
info
(
"getQuanXianUrl:"
+
getQuanXianUrl
+
" /-------"
);
String
code
=
""
;
String
respnose
=
rest
.
getForObject
(
getQuanXianUrl
,
String
.
class
,
map
);
if
(
StringUtils
.
isNotBlank
(
respnose
)){
String
code
=
""
;
decodeRs
=
URLDecoder
.
decode
(
respnose
,
"UTF-8"
);
if
(
StringUtils
.
isNotBlank
(
respnose
)){
jsonObject
=
JSONObject
.
fromObject
(
decodeRs
.
replace
(
"\r\n"
,
""
));
decodeRs
=
URLDecoder
.
decode
(
respnose
,
"UTF-8"
);
}
jsonObject
=
JSONObject
.
fromObject
(
decodeRs
.
replace
(
"\r\n"
,
""
));
if
(
jsonObject
.
get
(
"status"
).
equals
(
"0"
)){
}
code
=
(
String
)
jsonObject
.
get
(
"userAuthorizedApps"
);
if
(
jsonObject
.
get
(
"status"
).
equals
(
"0"
)){
LOG
.
info
(
"userAuthorizedApps:"
+
code
);
code
=
(
String
)
jsonObject
.
get
(
"userAuthorizedApps"
);
}
else
{
LOG
.
info
(
"userAuthorizedApps:"
+
code
);
LOG
.
error
(
jsonObject
.
get
(
"errorMsg"
));
}
else
{
}
LOG
.
error
(
jsonObject
.
get
(
"errorMsg"
));
return
code
;
}
}
return
code
;
}
//获取token
//获取token
private
String
getTicket
(
String
url
,
String
appCode
,
String
loginName
)
{
private
String
getTicket
(
String
url
,
String
appCode
,
String
loginName
)
{
...
...
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