|
@@ -1,12 +1,8 @@
|
|
package com.qmth.teachcloud.cas.api;
|
|
package com.qmth.teachcloud.cas.api;
|
|
|
|
|
|
import com.qmth.boot.api.annotation.Aac;
|
|
import com.qmth.boot.api.annotation.Aac;
|
|
-import com.qmth.boot.api.annotation.BOOL;
|
|
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
-import com.qmth.teachcloud.cas.util.CdutCasUtil;
|
|
+import com.qmth.teachcloud.cas.util.*;
|
|
-import com.qmth.teachcloud.cas.util.GdpuCasUtil;
|
|
|
|
-import com.qmth.teachcloud.cas.util.SxufeCasUtil;
|
|
|
|
-import com.qmth.teachcloud.cas.util.XjtuCasUtil;
|
|
|
|
import com.qmth.teachcloud.cas.util.supwisdom.CasUtils;
|
|
import com.qmth.teachcloud.cas.util.supwisdom.CasUtils;
|
|
import com.qmth.teachcloud.cas.util.sxufe.Constants;
|
|
import com.qmth.teachcloud.cas.util.sxufe.Constants;
|
|
import com.qmth.teachcloud.exchange.common.bean.params.RedirectParams;
|
|
import com.qmth.teachcloud.exchange.common.bean.params.RedirectParams;
|
|
@@ -16,7 +12,6 @@ import com.qmth.teachcloud.exchange.common.enums.SchoolCodeEnum;
|
|
import com.qmth.teachcloud.exchange.common.service.CommonService;
|
|
import com.qmth.teachcloud.exchange.common.service.CommonService;
|
|
import com.qmth.teachcloud.exchange.common.util.JacksonUtil;
|
|
import com.qmth.teachcloud.exchange.common.util.JacksonUtil;
|
|
import com.qmth.teachcloud.exchange.common.util.Result;
|
|
import com.qmth.teachcloud.exchange.common.util.Result;
|
|
-import com.qmth.teachcloud.exchange.common.util.ResultUtil;
|
|
|
|
import com.qmth.teachcloud.exchange.common.util.ServletUtil;
|
|
import com.qmth.teachcloud.exchange.common.util.ServletUtil;
|
|
import io.swagger.annotations.*;
|
|
import io.swagger.annotations.*;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
@@ -60,10 +55,13 @@ public class OpenApiController {
|
|
@Resource
|
|
@Resource
|
|
GdpuCasUtil gdpuCasUtil;
|
|
GdpuCasUtil gdpuCasUtil;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ SxmuCasUtil sxmuCasUtil;
|
|
|
|
+
|
|
@ApiOperation(value = "cas鉴权接口")
|
|
@ApiOperation(value = "cas鉴权接口")
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@RequestMapping(value = "/{schoolCode}/authentication", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/{schoolCode}/authentication", method = RequestMethod.GET)
|
|
- @Aac(auth = BOOL.FALSE)
|
|
+ @Aac(auth = false)
|
|
public void authentication(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
public void authentication(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
@ApiParam(value = "工号") @RequestParam(required = false) String code,
|
|
@ApiParam(value = "工号") @RequestParam(required = false) String code,
|
|
@ApiParam(value = "系统参数") @RequestParam(required = false) String state,
|
|
@ApiParam(value = "系统参数") @RequestParam(required = false) String state,
|
|
@@ -85,6 +83,9 @@ public class OpenApiController {
|
|
case GDPU:
|
|
case GDPU:
|
|
redirectParams = gdpuCasUtil.authentication(schoolCode);
|
|
redirectParams = gdpuCasUtil.authentication(schoolCode);
|
|
break;
|
|
break;
|
|
|
|
+ case SXMU:
|
|
|
|
+ redirectParams = sxmuCasUtil.authentication(schoolCode);
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -96,7 +97,7 @@ public class OpenApiController {
|
|
@ApiOperation(value = "cas鉴权退出接口")
|
|
@ApiOperation(value = "cas鉴权退出接口")
|
|
@RequestMapping(value = "/{schoolCode}/authentication/logout", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/{schoolCode}/authentication/logout", method = RequestMethod.GET)
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
- @Aac(auth = BOOL.FALSE)
|
|
+ @Aac(auth = false)
|
|
public void logout(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
public void logout(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
@ApiParam(value = "sessionId", required = false) @RequestParam(required = false) String gSessionId) throws IOException {
|
|
@ApiParam(value = "sessionId", required = false) @RequestParam(required = false) String gSessionId) throws IOException {
|
|
switch (SchoolCodeEnum.valueOf(schoolCode.toUpperCase())) {
|
|
switch (SchoolCodeEnum.valueOf(schoolCode.toUpperCase())) {
|
|
@@ -112,6 +113,9 @@ public class OpenApiController {
|
|
case GDPU:
|
|
case GDPU:
|
|
gdpuCasUtil.logout(schoolCode);
|
|
gdpuCasUtil.logout(schoolCode);
|
|
break;
|
|
break;
|
|
|
|
+ case SXMU:
|
|
|
|
+ sxmuCasUtil.logout(schoolCode);
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -120,9 +124,8 @@ public class OpenApiController {
|
|
@ApiOperation(value = "跳转知学知考")
|
|
@ApiOperation(value = "跳转知学知考")
|
|
@RequestMapping(value = "/{schoolCode}/authentication/zxzk_login", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/{schoolCode}/authentication/zxzk_login", method = RequestMethod.GET)
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
- @Aac(auth = BOOL.FALSE)
|
|
+ @Aac(auth = false)
|
|
public void zxzkLogin(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode) throws IOException {
|
|
public void zxzkLogin(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode) throws IOException {
|
|
- HttpServletRequest request = ServletUtil.getRequest();
|
|
|
|
HttpServletResponse response = ServletUtil.getResponse();
|
|
HttpServletResponse response = ServletUtil.getResponse();
|
|
RedirectParams redirectParams = null;
|
|
RedirectParams redirectParams = null;
|
|
switch (SchoolCodeEnum.valueOf(schoolCode.toUpperCase())) {
|
|
switch (SchoolCodeEnum.valueOf(schoolCode.toUpperCase())) {
|
|
@@ -131,7 +134,7 @@ public class OpenApiController {
|
|
if (Objects.nonNull(redirectParams)) {
|
|
if (Objects.nonNull(redirectParams)) {
|
|
commonService.redirectLogic(FunctionalTypeEnum.HOME.name(), redirectParams.getEmployeeNo(), redirectParams.getSchoolCode(), redirectParams.getReturnUrl(), Objects.nonNull(redirectParams.getOpenParams()) ? JacksonUtil.parseJson(redirectParams.getOpenParams()) : null);
|
|
commonService.redirectLogic(FunctionalTypeEnum.HOME.name(), redirectParams.getEmployeeNo(), redirectParams.getSchoolCode(), redirectParams.getReturnUrl(), Objects.nonNull(redirectParams.getOpenParams()) ? JacksonUtil.parseJson(redirectParams.getOpenParams()) : null);
|
|
} else {
|
|
} else {
|
|
- String loginUrl = CasUtils.getLoginUrl(request);
|
|
+ String loginUrl = CasUtils.getLoginUrl();
|
|
response.sendRedirect(loginUrl);
|
|
response.sendRedirect(loginUrl);
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
@@ -153,6 +156,15 @@ public class OpenApiController {
|
|
response.sendRedirect(com.qmth.teachcloud.cas.util.gdpu.Constants.CAS_LOGIN_URL);
|
|
response.sendRedirect(com.qmth.teachcloud.cas.util.gdpu.Constants.CAS_LOGIN_URL);
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
|
|
+ case SXMU:
|
|
|
|
+ redirectParams = sxmuCasUtil.zxzkLogin(schoolCode);
|
|
|
|
+ if (Objects.nonNull(redirectParams)) {
|
|
|
|
+ commonService.redirectLogic(FunctionalTypeEnum.HOME.name(), redirectParams.getEmployeeNo(), redirectParams.getSchoolCode(), redirectParams.getReturnUrl(), Objects.nonNull(redirectParams.getOpenParams()) ? JacksonUtil.parseJson(redirectParams.getOpenParams()) : null);
|
|
|
|
+ } else {
|
|
|
|
+ response.setHeader("Access-Control-Allow-Origin", SystemConstant.PATH_MATCH);
|
|
|
|
+ response.sendRedirect(com.qmth.teachcloud.cas.util.sxmu.Constants.CAS_LOGIN_URL);
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -161,7 +173,7 @@ public class OpenApiController {
|
|
@ApiOperation(value = "cas_mq鉴权接口")
|
|
@ApiOperation(value = "cas_mq鉴权接口")
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回消息", response = Result.class)})
|
|
@RequestMapping(value = "/{schoolCode}/mq/account", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/{schoolCode}/mq/account", method = RequestMethod.GET)
|
|
- @Aac(auth = BOOL.FALSE)
|
|
+ @Aac(auth = false)
|
|
public void maAccount(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
public void maAccount(@ApiParam(value = "学校编码") @PathVariable("schoolCode") String schoolCode,
|
|
@ApiParam(value = "员工工号") @RequestParam(required = false) String employeeNo) throws IOException {
|
|
@ApiParam(value = "员工工号") @RequestParam(required = false) String employeeNo) throws IOException {
|
|
RedirectParams redirectParams = null;
|
|
RedirectParams redirectParams = null;
|