| | |
| | | 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; |
| | |
| | | @Autowired |
| | | private SysPermissionService permissionService; |
| | | |
| | | @Autowired |
| | | private DingTalkService dingTalkService; |
| | | |
| | | |
| | | /** |
| | | * 微信OpenID登录方法 |
| | |
| | | return ajax; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 登录方法 |
| | | * |
| | |
| | | @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; |