package com.vci.ubcs.code.controller; import com.vci.ubcs.code.service.IPasswordFreeLoginService; import io.swagger.annotations.Api; import lombok.extern.slf4j.Slf4j; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.tool.api.R; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import org.springframework.web.servlet.view.RedirectView; import javax.annotation.Resource; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import static com.vci.ubcs.starter.util.AESUtils.aesDecrypt; import static com.vci.ubcs.starter.util.AESUtils.aesEncrypt; /** * @author ludc * @date 2023/9/12 9:07 */ @RestController @RequestMapping("/passwordFree") @Api(value = "免密登录接口", tags = "免密登录接口") @Slf4j public class PasswordFreeLoginController { @Value("${password-free.client-id:a104c4fd2f0e4958}") private String clientId;//应用ID @Value("${password-free.secret-key:9fbd170bd83eb869}") private String secretKey;//应用秘钥 @Resource private IPasswordFreeLoginService passwordFreeLoginService; @PostMapping("/login") public R passwordFreeLogin(@RequestParam("userName") String username, HttpServletRequest request) { boolean status; try { status = passwordFreeLoginService.pwdFreeLoginByBoolean(username,request); }catch (Exception e){ throw new ServiceException("免密登录获取token失败:"+e.getMessage()); } return R.status(status); } /** * 单点登录 * @param empCode * @return * @throws Exception */ @PostMapping("/ssoLogin") public String oaSsoLogin(String empCode){ String token; try { token = passwordFreeLoginService.ssoFreeLogin(empCode); }catch (Exception e){ throw new ServiceException("单点登录获取token失败:"+e.getMessage()); } return token; } }