Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gic-platform-auth
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
base_platform_enterprise
gic-platform-auth
Commits
c17e06dd
Commit
c17e06dd
authored
Nov 13, 2019
by
guojuxing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
运营平台单点登录
parent
8f6f543e
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
120 additions
and
12 deletions
+120
-12
LoginController.java
...ain/java/com/gic/auth/web/controller/LoginController.java
+117
-12
dubbo-gic-platform-auth-web.xml
...th-web/src/main/resources/dubbo-gic-platform-auth-web.xml
+3
-0
No files found.
gic-platform-auth-web/src/main/java/com/gic/auth/web/controller/LoginController.java
View file @
c17e06dd
package
com
.
gic
.
auth
.
web
.
controller
;
package
com
.
gic
.
auth
.
web
.
controller
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletResponse
;
import
com.gic.enterprise.ano.IgnoreLogin
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.log4j.LogManager
;
import
org.apache.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.auth.dto.MenuDTO
;
import
com.gic.auth.dto.MenuDTO
;
import
com.gic.auth.dto.OperationUserDTO
;
import
com.gic.auth.dto.UserDTO
;
import
com.gic.auth.dto.UserDTO
;
import
com.gic.auth.service.MenuApiService
;
import
com.gic.auth.service.MenuApiService
;
import
com.gic.auth.service.OperationUserApiService
;
import
com.gic.auth.service.UserApiService
;
import
com.gic.auth.service.UserApiService
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.Md5Util
;
import
com.gic.commons.util.Md5Util
;
...
@@ -11,24 +30,13 @@ import com.gic.commons.webapi.reponse.RestResponse;
...
@@ -11,24 +30,13 @@ import com.gic.commons.webapi.reponse.RestResponse;
import
com.gic.enterprise.base.EnterpriseInfo
;
import
com.gic.enterprise.base.EnterpriseInfo
;
import
com.gic.enterprise.base.MenuInfo
;
import
com.gic.enterprise.base.MenuInfo
;
import
com.gic.enterprise.base.UserInfo
;
import
com.gic.enterprise.base.UserInfo
;
import
com.gic.enterprise.context.UserContext
;
import
com.gic.enterprise.dto.EnterpriseDTO
;
import
com.gic.enterprise.dto.EnterpriseDTO
;
import
com.gic.enterprise.error.ErrorCode
;
import
com.gic.enterprise.error.ErrorCode
;
import
com.gic.enterprise.response.EnterpriseRestResponse
;
import
com.gic.enterprise.response.EnterpriseRestResponse
;
import
com.gic.enterprise.service.EnterpriseApiService
;
import
com.gic.enterprise.service.EnterpriseApiService
;
import
com.gic.enterprise.utils.UserDetail
;
import
com.gic.enterprise.utils.UserDetail
;
import
com.gic.enterprise.utils.UserDetailUtils
;
import
com.gic.enterprise.utils.UserDetailUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.log4j.LogManager
;
import
org.apache.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RestController
public
class
LoginController
{
public
class
LoginController
{
...
@@ -40,6 +48,8 @@ public class LoginController {
...
@@ -40,6 +48,8 @@ public class LoginController {
private
UserApiService
userApiService
;
private
UserApiService
userApiService
;
@Autowired
@Autowired
private
MenuApiService
menuApiService
;
private
MenuApiService
menuApiService
;
@Autowired
private
OperationUserApiService
operationUserApiService
;
@RequestMapping
(
"list-enterprise-by-phone"
)
@RequestMapping
(
"list-enterprise-by-phone"
)
public
RestResponse
listUserEnterprise
(
String
phoneNumber
){
public
RestResponse
listUserEnterprise
(
String
phoneNumber
){
...
@@ -131,4 +141,99 @@ public class LoginController {
...
@@ -131,4 +141,99 @@ public class LoginController {
UserDetailUtils
.
destory
();
UserDetailUtils
.
destory
();
return
RestResponse
.
success
();
return
RestResponse
.
success
();
}
}
/**
* 运营平台单点登录
* @Title: login
* @Description:
* @author guojuxing
* @param enterpriseId
* @param phone
* @param realName
* @param redirectUrl
* @param response
* @return com.gic.commons.webapi.reponse.RestResponse
*/
@IgnoreLogin
@RequestMapping
(
"login-for-operation"
)
public
RestResponse
login
(
Integer
enterpriseId
,
String
phone
,
String
realName
,
String
redirectUrl
,
HttpServletResponse
response
)
throws
IOException
{
if
(
UserContext
.
getContext
().
get
().
getEnterpriseId
()
!=
null
)
{
//已有登录信息
//跳转到页面
//暂时写死跳转到计费中心首页
if
(
StringUtils
.
isBlank
(
redirectUrl
))
{
//默认跳转到首页
response
.
sendRedirect
(
"https://four.gicdev.com/cost-center/billing-center/overview"
);
}
else
{
response
.
sendRedirect
(
redirectUrl
);
}
return
RestResponse
.
success
();
}
ServiceResponse
<
OperationUserDTO
>
userResult
=
operationUserApiService
.
getByPhone
(
phone
,
enterpriseId
);
if
(
userResult
.
isSuccess
())
{
//获取运营实施信息
OperationUserDTO
user
=
userResult
.
getResult
();
if
(
user
==
null
)
{
//新建运营实施账号
OperationUserDTO
temp
=
new
OperationUserDTO
();
temp
.
setEnterpriseId
(
enterpriseId
);
temp
.
setPhoneNumber
(
phone
);
temp
.
setOperationUserName
(
realName
);
ServiceResponse
<
Integer
>
saveResult
=
operationUserApiService
.
save
(
temp
);
user
=
temp
;
user
.
setOperationUserId
(
saveResult
.
getResult
());
}
//gic用户信息塞入
UserDetail
userDetail
=
new
UserDetail
();
//设置登录用户信息
userDetail
.
setUserId
(
user
.
getOperationUserId
());
UserInfo
userInfo
=
new
UserInfo
();
userInfo
.
setPhoneNumber
(
phone
);
userInfo
.
setEnterpriseId
(
enterpriseId
);
userInfo
.
setSuperAdmin
(
1
);
userInfo
.
setUserName
(
user
.
getOperationUserName
());
userInfo
.
setUserId
(
user
.
getOperationUserId
());
userDetail
.
setUserInfo
(
userInfo
);
//设置企业资料
ServiceResponse
<
EnterpriseDTO
>
enterprise
=
this
.
enterpriseApiService
.
getEnterpriseById
(
enterpriseId
);
if
(
enterprise
.
isSuccess
())
{
EnterpriseDTO
enterpriseDTO
=
enterprise
.
getResult
();
if
(
enterpriseDTO
!=
null
)
{
userDetail
.
setEnterpriseInfo
(
EntityUtil
.
changeEntityNew
(
EnterpriseInfo
.
class
,
enterpriseDTO
));
}
}
//设置权限
//获取超管的用户ID,用来获取超管权限
ServiceResponse
<
UserDTO
>
adminResult
=
userApiService
.
getUserByEnterpriseId
(
enterpriseId
);
Integer
adminUserId
=
adminResult
.
getResult
().
getUserId
();
ServiceResponse
<
List
<
MenuDTO
>>
menuResult
=
menuApiService
.
listUserMenu
(
adminUserId
);
if
(
menuResult
.
isSuccess
())
{
List
<
MenuDTO
>
menuList
=
menuResult
.
getResult
();
List
<
MenuInfo
>
menuInfoList
=
EntityUtil
.
changeEntityListNew
(
MenuInfo
.
class
,
menuList
);
Map
<
String
,
Object
>
map
=
new
HashMap
<>(
16
);
Map
<
String
,
MenuInfo
>
moduleMap
=
new
HashMap
<>(
16
);
for
(
MenuInfo
menuDTO
:
menuInfoList
)
{
if
(
StringUtils
.
isBlank
(
menuDTO
.
getMenuUrl
()))
{
continue
;
}
moduleMap
.
put
(
menuDTO
.
getProjectUrlForWeb
()
+
menuDTO
.
getMenuUrl
(),
menuDTO
);
map
.
put
(
menuDTO
.
getMenuUrl
(),
menuDTO
);
}
userDetail
.
setMenuInfoList
(
menuInfoList
);
userDetail
.
setMenuUrlMap
(
map
);
userDetail
.
setModuleUrlMap
(
moduleMap
);
}
//塞缓存
UserDetailUtils
.
setUserDetail
(
userDetail
);
//跳转到页面
//暂时写死跳转到计费中心首页
if
(
StringUtils
.
isBlank
(
redirectUrl
))
{
response
.
sendRedirect
(
"https://four.gicdev.com/cost-center/billing-center/overview"
);
}
else
{
response
.
sendRedirect
(
redirectUrl
);
}
}
return
RestResponse
.
success
();
}
}
}
gic-platform-auth-web/src/main/resources/dubbo-gic-platform-auth-web.xml
View file @
c17e06dd
...
@@ -66,4 +66,6 @@
...
@@ -66,4 +66,6 @@
<!--应用-->
<!--应用-->
<dubbo:reference
interface=
"com.gic.open.api.service.ApplicationSubApiService"
id=
"applicationSubApiService"
timeout=
"6000"
/>
<dubbo:reference
interface=
"com.gic.open.api.service.ApplicationSubApiService"
id=
"applicationSubApiService"
timeout=
"6000"
/>
<dubbo:reference
interface=
"com.gic.open.api.service.AppTokenApiService"
id=
"appTokenApiService"
timeout=
"6000"
/>
<dubbo:reference
interface=
"com.gic.open.api.service.AppTokenApiService"
id=
"appTokenApiService"
timeout=
"6000"
/>
<!--运营管理员-->
<dubbo:reference
interface=
"com.gic.auth.service.OperationUserApiService"
id=
"operationUserApiService"
timeout=
"6000"
/>
</beans>
</beans>
\ No newline at end of file
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