package com.gxwebsoft.gxmu.auth; import com.gxwebsoft.common.core.web.ApiResult; import com.gxwebsoft.common.core.web.BaseController; import com.gxwebsoft.common.system.result.LoginResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; /** * 学校统一身份认证登录接口。 * *

小程序端不再走 CAS 网页跳转,而是直接收集 学号 + 统一身份认证密码交给后端, * 由后端调认证平台 {@code /v2/checkPwd}、{@code /v2/getUserInfo} 完成校验。 * 密码只用于当次校验,本系统不保存。 * * @author Codex * @since 2026-09-15 */ @RestController @RequestMapping("/api/sso") @Api(tags = "学校统一身份认证登录API") public class SsoLoginController extends BaseController { @Resource private SsoLoginService ssoLoginService; @ApiOperation("学校统一身份认证登录(学号 + 统一身份认证密码)") @PostMapping("/login") public ApiResult login(@RequestBody SsoLoginParam param, HttpServletRequest request) { return success("登录成功", ssoLoginService.login(param.getUsername(), param.getPassword(), getTenantId(), request)); } @ApiOperation("学校统一身份认证登录是否可用") @GetMapping("/available") public ApiResult available() { return success(ssoLoginService.available()); } }