zhuhaiwen 3 years ago
parent
commit
244e7d99ac

+ 92 - 10
oa-app/src/main/java/com/css/oa/exam/admin/controller/CasLoginController.java

1
package com.css.oa.exam.admin.controller;
1
package com.css.oa.exam.admin.controller;
2
2
3
import cn.com.dhcc.uums.entity.SSORole;
3
import cn.com.dhcc.uums.entity.SSOUser;
4
import cn.com.dhcc.uums.entity.SSOUser;
4
import cn.com.dhcc.uums.util.SSOTools;
5
import cn.com.dhcc.uums.util.SSOTools;
5
import com.css.bpm.platform.org.dept.repository.entity.DeptEntity;
6
import com.css.bpm.platform.org.dept.repository.entity.DeptEntity;
7
import com.css.bpm.platform.org.user.repository.entity.UserEntity;
6
import com.css.oa.utils.*;
8
import com.css.oa.utils.*;
7
import com.fasterxml.jackson.databind.ObjectMapper;
9
import com.fasterxml.jackson.databind.ObjectMapper;
10
import com.google.gson.Gson;
8
import io.swagger.annotations.Api;
11
import io.swagger.annotations.Api;
9
import io.swagger.annotations.ApiOperation;
12
import io.swagger.annotations.ApiOperation;
10
import org.apache.commons.lang3.StringUtils;
13
import org.apache.commons.lang3.StringUtils;
13
import org.springframework.beans.BeanUtils;
16
import org.springframework.beans.BeanUtils;
14
import org.springframework.beans.factory.annotation.Autowired;
17
import org.springframework.beans.factory.annotation.Autowired;
15
import org.springframework.data.domain.Page;
18
import org.springframework.data.domain.Page;
19
import org.springframework.data.redis.core.RedisTemplate;
16
import org.springframework.web.bind.annotation.GetMapping;
20
import org.springframework.web.bind.annotation.GetMapping;
17
import org.springframework.web.bind.annotation.RequestMapping;
21
import org.springframework.web.bind.annotation.RequestMapping;
18
import org.springframework.web.bind.annotation.RequestParam;
22
import org.springframework.web.bind.annotation.RequestParam;
30
@RestController
34
@RestController
31
@RequestMapping("/casLogin")
35
@RequestMapping("/casLogin")
32
public class CasLoginController {
36
public class CasLoginController {
33
//
37
    //
34
//    @Autowired
38
//    @Autowired
35
//    DepartmentService departmentService;
39
//    DepartmentService departmentService;
36
//    @Autowired
40
//    @Autowired
40
44
41
    Logger log = LoggerFactory.getLogger(CasLoginController.class);
45
    Logger log = LoggerFactory.getLogger(CasLoginController.class);
42
46
47
    @Autowired
48
    RedisTemplate redisTemplate;
49
50
    @Autowired
51
    UserAPIService userAPIService;
43
52
44
    @ApiOperation(value = "登录")
53
    @ApiOperation(value = "登录")
45
    @RequestMapping("/login")
54
    @RequestMapping("/login")
46
    public void login(HttpSession session, HttpServletResponse response, HttpServletRequest request) {
55
    public void login(HttpSession session, HttpServletResponse response, HttpServletRequest request) {
47
        try {
56
        try {
48
57
            /*{
58
                "id": "fc80fa44f4ab4c389cddb17837074a34",
59
                    "persCode": "140622198906200032",
60
                    "userName": "zangtie",
61
                    "persName": "臧铁",
62
                    "orgCode": "100000002",
63
                    "orgName": "其他",
64
                    "orgJurd": "",
65
                    "jurdAreaType": "",
66
                    "adminOrgCode": "",
67
                    "depCode": "8be30b2208ff4b899be59c51465d34fe",
68
                    "depName": "临时部门",
69
                    "userState": "1",
70
                    "caCertification": "",
71
                    "ordernum": "95656",
72
                    "creater": "",
73
                    "modifier": "",
74
                    "roleInfoList": [
75
                {
76
                    "id": "9b0e3d32582d48a5be2af92a89cadc56",
77
                        "roleCode": "kfz",
78
                        "roleName": "开发者",
79
                        "roleDesc": "",
80
                        "roleType": "1",
81
                        "orgId": "",
82
                        "orgCode": "",
83
                        "orgName": "",
84
                        "orgJurd": "",
85
                        "jurdAreaType": "",
86
                        "sysId": "",
87
                        "sysCode": "2222",
88
                        "status": "1",
89
                        "creater": "",
90
                        "modifier": "",
91
                        "ordernum": "",
92
                        "note": ""
93
                },
94
                {
95
                    "id": "6b303bd8624e4c308401dfa1d3f2ac99",
96
                        "roleCode": "cdglxt",
97
                        "roleName": "菜单管理系统",
98
                        "roleDesc": "管理业务系统管理员的菜单",
99
                        "roleType": "1",
100
                        "orgId": "",
101
                        "orgCode": "",
102
                        "orgName": "",
103
                        "orgJurd": "",
104
                        "jurdAreaType": "",
105
                        "sysId": "",
106
                        "sysCode": "1001",
107
                        "status": "1",
108
                        "creater": "",
109
                        "modifier": "",
110
                        "ordernum": "",
111
                        "note": "管理业务系统管理员的菜单"
112
                }
113
  ]
114
            }
115
*/
49
            SSOUser ssoUser = SSOTools.getSSOUser(request);
116
            SSOUser ssoUser = SSOTools.getSSOUser(request);
117
            redisTemplate.opsForValue().set("131452021-SSOUSER", ssoUser);
118
            redisTemplate.opsForValue().set("131452021-ROLEINFOLIST", ssoUser.getRoleInfoList());
119
            SSOUser ssoUser1 = (SSOUser) redisTemplate.opsForValue().get("131452021-SSOUSER");
120
            List<SSORole> roleList = (List<SSORole>) redisTemplate.opsForValue().get("131452021-ROLEINFOLIST");
121
122
123
124
            UserEntity user = userAPIService.getUser(ssoUser1.getId());
125
            System.out.println(user);
126
            System.out.println(roleList);
127
128
            String json = new Gson().toJson(ssoUser);
129
            System.out.println(json);
50
            session.setAttribute("UUID", ssoUser.getId());
130
            session.setAttribute("UUID", ssoUser.getId());
51
            session.setAttribute("USER_NAME", ssoUser.getUserName());
131
            session.setAttribute("USER_NAME", ssoUser.getUserName());
52
            session.setAttribute("ORG_NAME", ssoUser.getOrgName());
132
            session.setAttribute("ORG_NAME", ssoUser.getOrgName());
53
            session.setAttribute("DEP_NAME", ssoUser.getDepName());
133
            session.setAttribute("DEP_NAME", ssoUser.getDepName());
54
            session.setAttribute("ROLE_INFO", ssoUser.getRoleInfoList().get(0));
134
            session.setAttribute("ROLE_INFO", ssoUser.getRoleInfoList().get(0));
55
            String contextPath = request.getContextPath();
135
            String contextPath = request.getContextPath();
56
            response.sendRedirect("http://localhost:8081/#/title_declaration/announcement_management");
57
        } catch (Exception e){
136
            response.sendRedirect("http://10.1.76.181:8081/zhbg/static/core/oa/TitleExamination/index.html");
137
        } catch (Exception e) {
58
            log.error("登录失败!", e);
138
            log.error("登录失败!", e);
59
        };
139
        }
140
        ;
60
    }
141
    }
61
142
62
    @ApiOperation(value = "登出")
143
    @ApiOperation(value = "登出")
63
    @RequestMapping("/logout")
144
    @RequestMapping("/logout")
64
    public void logout(HttpSession session, HttpServletResponse response, HttpServletRequest request){
145
    public void logout(HttpSession session, HttpServletResponse response, HttpServletRequest request) {
65
//        HttpSession session = request.getSession();
146
//        HttpSession session = request.getSession();
66
        try {
147
        try {
148
            System.out.print("登出---->" + session.toString());
67
            session.invalidate();
149
            session.invalidate();
68
            // http://10.1.193.115:8100/cas/logout?service=http://10.1.176.129:8081/zhbg
150
            // http://10.1.193.115:8100/cas/logout?service=http://10.1.176.129:8081/zhbg
69
            response.sendRedirect("http://10.1.193.115:8100/cas/logout?service=http://10.1.176.129:8081/zhbg");
70
        } catch (Exception e){
151
            response.sendRedirect("http://idportal_test.mwr.cn:8100/cas/logout?service=http://10.1.76.181:8081/zhbg");
152
        } catch (Exception e) {
71
            log.error("登出失败!", e);
153
            log.error("登出失败!", e);
72
        };
154
        }
155
        ;
73
156
74
    }
157
    }
75
158
76
159
77
78
}
160
}

+ 5 - 4
oa-app/src/main/resources/application.yml

2
  port: 8081
2
  port: 8081
3
  servlet:
3
  servlet:
4
    context-path: /zhbg
4
    context-path: /zhbg
5
5
spring:
6
spring:
6
  cas:
7
  cas:
7
    #夏博电脑的IP地址
8
    server-name: http://10.1.176.129:8081/zhbg
9
    #支撑平台服务地址
10
    cas-server-url-prefix: http://10.1.193.115:8100/cas
8
    #    server-name: http://10.1.176.129:8081/zhbg
9
    server-name: http://10.1.76.181:8081/zhbg
10
    #    cas-server-url-prefix: http://10.1.193.115:8100/cas
11
    cas-server-url-prefix: http://idportal_test.mwr.cn:8100/cas
11
    cas-server-login-url: ${spring.cas.cas-server-url-prefix}/login
12
    cas-server-login-url: ${spring.cas.cas-server-url-prefix}/login
12
    cas-server-logout-url: ${spring.cas.cas-server-url-prefix}/logout
13
    cas-server-logout-url: ${spring.cas.cas-server-url-prefix}/logout
13
    ignore-pattern: (register|\.js|\.img|\.css)(\?.*)?$
14
    ignore-pattern: (register|\.js|\.img|\.css)(\?.*)?$