Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cloud-fb
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
王衍超
cloud-fb
Commits
be0ec07f
Commit
be0ec07f
authored
Mar 24, 2021
by
shiwenbo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
authcInfo接口增加currentRegionalCompany信息的返回
parent
add51102
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
49 additions
and
35 deletions
+49
-35
RESTAppAuthenticationSuccessHandler.java
...tication/handler/RESTAppAuthenticationSuccessHandler.java
+0
-27
RESTAuthenticationSuccessHandler.java
...hentication/handler/RESTAuthenticationSuccessHandler.java
+30
-0
AuthcInfoController.java
.../java/com/beecode/inz/common/web/AuthcInfoController.java
+14
-0
XystDinasCommonAllScene.java
...yst/dinas/biz/internal/scene/XystDinasCommonAllScene.java
+5
-8
No files found.
backend/inz.authentication/src/main/java/com/beecode/inz/authentication/handler/RESTAppAuthenticationSuccessHandler.java
View file @
be0ec07f
...
@@ -34,11 +34,6 @@ import com.beecode.inz.authentication.util.LoginLogUtil;
...
@@ -34,11 +34,6 @@ import com.beecode.inz.authentication.util.LoginLogUtil;
@Component
@Component
public
class
RESTAppAuthenticationSuccessHandler
extends
SimpleUrlAuthenticationSuccessHandler
{
public
class
RESTAppAuthenticationSuccessHandler
extends
SimpleUrlAuthenticationSuccessHandler
{
/**
* 登录时区域公司的参数key
*/
private
final
static
String
REQUEST_CURRENTREGIONALCOMPANY_KEY
=
"currentRegionalCompany"
;
@Autowired
@Autowired
private
TenantUserService
tenantUserService
;
private
TenantUserService
tenantUserService
;
@Autowired
@Autowired
...
@@ -61,9 +56,6 @@ public class RESTAppAuthenticationSuccessHandler extends SimpleUrlAuthentication
...
@@ -61,9 +56,6 @@ public class RESTAppAuthenticationSuccessHandler extends SimpleUrlAuthentication
request
.
getSession
().
setAttribute
(
"mobile"
,
true
);
request
.
getSession
().
setAttribute
(
"mobile"
,
true
);
request
.
getSession
().
setMaxInactiveInterval
(
30
*
24
*
60
*
60
);
request
.
getSession
().
setMaxInactiveInterval
(
30
*
24
*
60
*
60
);
//构建当前用户数据集
buildCurrentUserDatas
(
request
);
loginLog
.
setTenantId
(
tenantUser
.
getTenantId
());
loginLog
.
setTenantId
(
tenantUser
.
getTenantId
());
loginLogService
.
insert
(
loginLog
);
loginLogService
.
insert
(
loginLog
);
...
@@ -83,25 +75,6 @@ public class RESTAppAuthenticationSuccessHandler extends SimpleUrlAuthentication
...
@@ -83,25 +75,6 @@ public class RESTAppAuthenticationSuccessHandler extends SimpleUrlAuthentication
}
}
}
}
/**
* 构造当前用户数据集
*/
private
void
buildCurrentUserDatas
(
HttpServletRequest
request
)
{
HttpSession
session
=
request
.
getSession
();
//获取当前用户区域公司参数,存入当前用户数据集(session)
String
currentRegionalCompany
=
obtainCurrentRegionalCompany
(
request
);
Map
<
String
,
String
>
datas
=
new
ConcurrentHashMap
<>();
datas
.
put
(
REQUEST_CURRENTREGIONALCOMPANY_KEY
,
currentRegionalCompany
);
//目前数据集只存了用户区域公司
session
.
setAttribute
(
AuthcConstants
.
CURRENTUSERDATAS
,
datas
);
}
private
String
obtainCurrentRegionalCompany
(
HttpServletRequest
request
)
{
return
request
.
getParameter
(
REQUEST_CURRENTREGIONALCOMPANY_KEY
);
}
public
LoginLog
getLoginLog
(
HttpServletRequest
request
){
public
LoginLog
getLoginLog
(
HttpServletRequest
request
){
LoginLog
loginLog
=
new
LoginLog
();
LoginLog
loginLog
=
new
LoginLog
();
String
userAgent
=
request
.
getHeader
(
LoginLogConstants
.
USER_AGENT
);
String
userAgent
=
request
.
getHeader
(
LoginLogConstants
.
USER_AGENT
);
...
...
backend/inz.authentication/src/main/java/com/beecode/inz/authentication/handler/RESTAuthenticationSuccessHandler.java
View file @
be0ec07f
...
@@ -2,10 +2,13 @@ package com.beecode.inz.authentication.handler;
...
@@ -2,10 +2,13 @@ package com.beecode.inz.authentication.handler;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.Map
;
import
java.util.concurrent.ConcurrentHashMap
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -32,6 +35,11 @@ import com.beecode.inz.authentication.util.LoginLogUtil;
...
@@ -32,6 +35,11 @@ import com.beecode.inz.authentication.util.LoginLogUtil;
@Component
@Component
public
class
RESTAuthenticationSuccessHandler
extends
SimpleUrlAuthenticationSuccessHandler
{
public
class
RESTAuthenticationSuccessHandler
extends
SimpleUrlAuthenticationSuccessHandler
{
/**
* 登录时区域公司的参数key
*/
private
final
static
String
REQUEST_CURRENTREGIONALCOMPANY_KEY
=
"currentRegionalCompany"
;
@Autowired
@Autowired
private
TenantUserService
tenantUserService
;
private
TenantUserService
tenantUserService
;
@Autowired
@Autowired
...
@@ -52,6 +60,10 @@ public class RESTAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuc
...
@@ -52,6 +60,10 @@ public class RESTAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuc
request
.
getSession
().
setAttribute
(
AuthcConstants
.
SESSION_TENANTID
,
tenant
);
request
.
getSession
().
setAttribute
(
AuthcConstants
.
SESSION_TENANTID
,
tenant
);
request
.
getSession
().
setAttribute
(
AuthcConstants
.
USERNAME
,
tenantUser
.
getUsername
());
request
.
getSession
().
setAttribute
(
AuthcConstants
.
USERNAME
,
tenantUser
.
getUsername
());
request
.
getSession
().
setAttribute
(
AuthcConstants
.
USERID
,
tenantUser
.
getUserId
());
request
.
getSession
().
setAttribute
(
AuthcConstants
.
USERID
,
tenantUser
.
getUserId
());
//构建当前用户数据集
buildCurrentUserDatas
(
request
);
loginLog
.
setTenantId
(
tenantUser
.
getTenantId
());
loginLog
.
setTenantId
(
tenantUser
.
getTenantId
());
loginLogService
.
insert
(
loginLog
);
loginLogService
.
insert
(
loginLog
);
ServletRequestAttributes
attr
=
(
ServletRequestAttributes
)
RequestContextHolder
.
currentRequestAttributes
();
ServletRequestAttributes
attr
=
(
ServletRequestAttributes
)
RequestContextHolder
.
currentRequestAttributes
();
...
@@ -69,9 +81,27 @@ public class RESTAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuc
...
@@ -69,9 +81,27 @@ public class RESTAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuc
}
finally
{
}
finally
{
}
}
}
/**
* 构造当前用户数据集
*/
private
void
buildCurrentUserDatas
(
HttpServletRequest
request
)
{
HttpSession
session
=
request
.
getSession
();
//获取当前用户区域公司参数,存入当前用户数据集(session)
String
currentRegionalCompany
=
obtainCurrentRegionalCompany
(
request
);
Map
<
String
,
String
>
datas
=
new
ConcurrentHashMap
<>();
datas
.
put
(
REQUEST_CURRENTREGIONALCOMPANY_KEY
,
currentRegionalCompany
);
//目前数据集只存了用户区域公司
session
.
setAttribute
(
AuthcConstants
.
CURRENTUSERDATAS
,
datas
);
}
}
private
String
obtainCurrentRegionalCompany
(
HttpServletRequest
request
)
{
return
request
.
getParameter
(
"regionalCompany"
);
}
public
LoginLog
getLoginLog
(
HttpServletRequest
request
){
public
LoginLog
getLoginLog
(
HttpServletRequest
request
){
LoginLog
loginLog
=
new
LoginLog
();
LoginLog
loginLog
=
new
LoginLog
();
String
userAgent
=
request
.
getHeader
(
LoginLogConstants
.
USER_AGENT
);
String
userAgent
=
request
.
getHeader
(
LoginLogConstants
.
USER_AGENT
);
...
...
backend/inz.common/src/main/java/com/beecode/inz/common/web/AuthcInfoController.java
View file @
be0ec07f
package
com
.
beecode
.
inz
.
common
.
web
;
package
com
.
beecode
.
inz
.
common
.
web
;
import
java.util.Map
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpHeaders
;
...
@@ -11,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
...
@@ -11,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
com.beecode.bap.staff.BapContext
;
import
com.beecode.bcp.User
;
import
com.beecode.bcp.User
;
import
com.beecode.bcp.authz.Identity
;
import
com.beecode.bcp.authz.Identity
;
import
com.beecode.bcp.core.context.AminoContext
;
import
com.beecode.bcp.core.context.AminoContext
;
...
@@ -21,6 +25,9 @@ import com.fasterxml.jackson.databind.ObjectMapper;
...
@@ -21,6 +25,9 @@ import com.fasterxml.jackson.databind.ObjectMapper;
@RestController
@RestController
public
class
AuthcInfoController
{
public
class
AuthcInfoController
{
@Autowired
private
BapContext
bapContext
;
@Autowired
@Autowired
private
ObjectMapper
objectMapper
;
private
ObjectMapper
objectMapper
;
...
@@ -55,6 +62,13 @@ public class AuthcInfoController {
...
@@ -55,6 +62,13 @@ public class AuthcInfoController {
authcInfoObject
.
put
(
AminoContextConstants
.
CURRENTORG
,
objectMapper
.
writeValueAsString
(
org
));
authcInfoObject
.
put
(
AminoContextConstants
.
CURRENTORG
,
objectMapper
.
writeValueAsString
(
org
));
if
(
null
!=
identity
)
if
(
null
!=
identity
)
authcInfoObject
.
put
(
AminoContextConstants
.
CURRENTIDENTITY
,
objectMapper
.
writeValueAsString
(
identity
));
authcInfoObject
.
put
(
AminoContextConstants
.
CURRENTIDENTITY
,
objectMapper
.
writeValueAsString
(
identity
));
Map
<
String
,
String
>
map
=
bapContext
.
getCurrentUserDatas
();
String
currentRegionalCompany
=
map
.
get
(
"currentRegionalCompany"
);
authcInfoObject
.
put
(
"currentRegionalCompany"
,
currentRegionalCompany
);
return
new
ResponseEntity
<
String
>(
authcInfoObject
.
toString
(),
headers
,
HttpStatus
.
OK
);
return
new
ResponseEntity
<
String
>(
authcInfoObject
.
toString
(),
headers
,
HttpStatus
.
OK
);
}
}
/**
/**
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/internal/scene/XystDinasCommonAllScene.java
View file @
be0ec07f
...
@@ -13,6 +13,7 @@ import com.beecode.bcp.type.json.JSONObjectUtils;
...
@@ -13,6 +13,7 @@ import com.beecode.bcp.type.json.JSONObjectUtils;
import
com.beecode.inz.common.internal.scene.FollowerQueryScene
;
import
com.beecode.inz.common.internal.scene.FollowerQueryScene
;
import
com.beecode.inz.query.exception.SceneExecuteException
;
import
com.beecode.inz.query.exception.SceneExecuteException
;
import
com.beecode.inz.query.scene.SceneExecuteContext
;
import
com.beecode.inz.query.scene.SceneExecuteContext
;
import
com.xyst.dinas.biz.enumeration.OrganizationTypeEnum
;
public
class
XystDinasCommonAllScene
extends
FollowerQueryScene
{
public
class
XystDinasCommonAllScene
extends
FollowerQueryScene
{
...
@@ -20,22 +21,18 @@ public class XystDinasCommonAllScene extends FollowerQueryScene {
...
@@ -20,22 +21,18 @@ public class XystDinasCommonAllScene extends FollowerQueryScene {
public
void
execute
(
SceneExecuteContext
context
)
throws
SceneExecuteException
{
public
void
execute
(
SceneExecuteContext
context
)
throws
SceneExecuteException
{
KObject
currentRegionalCompany
=
this
.
getCurrentLoginRegionalCompany
();
KObject
currentRegionalCompany
=
this
.
getCurrentLoginRegionalCompany
();
if
(
null
==
currentRegionalCompany
||
currentRegionalCompany
.
isNull
()){
if
(
null
==
currentRegionalCompany
||
currentRegionalCompany
.
isNull
()){
throw
new
SceneExecuteException
(
"无法获取当前登录
区域公司
"
);
throw
new
SceneExecuteException
(
"无法获取当前登录
组织机构
"
);
}
}
CriteriaBuilder
builder
=
context
.
getCriteriaBuilder
();
CriteriaBuilder
builder
=
context
.
getCriteriaBuilder
();
Predicate
p0
=
addCurrentRegionalCompanyQuery
(
context
,
builder
);
Predicate
p0
=
builder
.
equal
(
context
.
getRoot
().
get
(
"regionalCompany"
).
get
(
"id"
),
currentRegionalCompany
.
getUuid
(
"id"
)
);
if
(
currentRegionalCompany
.
getString
(
"type"
).
equals
(
"REGIONAL_COMPANY"
))
{
if
(
currentRegionalCompany
.
getString
(
"type"
).
equals
(
OrganizationTypeEnum
.
REGIONAL_COMPANY
.
name
()
))
{
context
.
getCriteriaQuery
().
and
(
p0
);
context
.
getCriteriaQuery
().
and
(
p0
);
}
}
}
}
protected
Predicate
addCurrentRegionalCompanyQuery
(
SceneExecuteContext
context
,
CriteriaBuilder
builder
)
{
return
builder
.
equal
(
context
.
getRoot
().
get
(
"regionalCompany"
).
get
(
"id"
),
getCurrentLoginRegionalCompany
().
getUuid
(
"id"
));
}
/**
/**
* 获取当前登录的区域公司
* 获取当前登录的区域公司
...
@@ -45,7 +42,7 @@ public class XystDinasCommonAllScene extends FollowerQueryScene {
...
@@ -45,7 +42,7 @@ public class XystDinasCommonAllScene extends FollowerQueryScene {
String
currentRegionalCompany
=
(
String
)
((
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
())
String
currentRegionalCompany
=
(
String
)
((
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
())
.
getRequest
().
getSession
().
getAttribute
(
"currentRegionalCompany"
);
.
getRequest
().
getSession
().
getAttribute
(
"currentRegionalCompany"
);
if
(
null
==
currentRegionalCompany
||
currentRegionalCompany
.
trim
().
length
()
==
0
)
{
if
(
null
==
currentRegionalCompany
||
currentRegionalCompany
.
trim
().
length
()
==
0
)
{
throw
new
RuntimeException
(
"从session中获取
区域公司
失败"
);
throw
new
RuntimeException
(
"从session中获取
组织机构
失败"
);
}
}
KClass
kClass
=
Amino
.
getApplicationMetadataContext
().
getBean
(
"com.xyst.dinas.biz.datamodel.Organization"
,
KClass
kClass
=
Amino
.
getApplicationMetadataContext
().
getBean
(
"com.xyst.dinas.biz.datamodel.Organization"
,
KClass
.
class
);
KClass
.
class
);
...
...
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