From 2f13f59f023fba63aa993172d48c14bcaaafb233 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 16 五月 2024 13:53:34 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 24 ++++++++++++++++++++++-- 1 files changed, 22 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index 6328a4c..ba0c22b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -1,12 +1,19 @@ package com.ruoyi.web.controller.system; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.UUID; +import com.aliyun.dingtalkoauth2_1_0.models.GetSsoUserInfoResponseBody; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.domain.model.LoginBodyByOpenID; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.project.service.DingTalkService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; @@ -39,6 +46,9 @@ @Autowired private SysPermissionService permissionService; + @Autowired + private DingTalkService dingTalkService; + /** * 寰俊OpenID鐧诲綍鏂规硶 @@ -55,7 +65,6 @@ return ajax; } - /** * 鐧诲綍鏂规硶 * @@ -67,8 +76,19 @@ @PostMapping("/login") public AjaxResult login(@RequestBody LoginBody loginBody) { AjaxResult ajax = AjaxResult.success(); +// dingTalkService.deptidList(1L, 1); + Map<String, Object> userIdMap = null; + if (StringUtils.isNotEmpty(loginBody.getAuthCode())) { + Map<String, Object> map = dingTalkService.noLogin(loginBody.getAuthCode()); + userIdMap = (Map<String, Object>) map.get("result"); + } // 鐢熸垚浠ょ墝 - String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid(), loginBody.getOpenid()); + String token = null; + if (!ObjectUtils.isEmpty(userIdMap)) { + token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid(), loginBody.getOpenid(), userIdMap.get("userid").toString()); + } else { + token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid(), loginBody.getOpenid(), null); + } ajax.put(Constants.TOKEN, token); return ajax; -- Gitblit v1.9.3