类 UserThirdpartDingdingController

java.lang.Object
net.sohelp.boot.admin.core.base.BaseController
net.sohelp.boot.dev.web.user.UserThirdpartDingdingController

@RestController("dev-user-thirdpart-dingding") @RequestMapping("/dev/user/dingding") public class UserThirdpartDingdingController extends BaseController
用户第三方登录控制器,用于处理与钉钉相关的用户绑定、解绑及消息发送功能。
从以下版本开始:
2024/10/22 13:39
作者:
AaronFung
  • 构造器详细资料

    • UserThirdpartDingdingController

      public UserThirdpartDingdingController()
  • 方法详细资料

    • dingdingUnbind

      @PostMapping("/unbind") @Permission("ADMIN") @Transactional(rollbackFor=java.lang.Exception.class) public ApiResult<String> dingdingUnbind() throws Exception
      解除当前用户的钉钉绑定关系。 删除数据库中对应用户和类型为6(钉钉)的记录。
      返回:
      返回操作结果提示信息
      抛出:
      Exception - 数据库操作异常时抛出
    • dingdingBinding

      @GetMapping("/binding") @Permission("ADMIN") public ApiResult<String> dingdingBinding() throws IOException, TokenAuthenticationException
      跳转至钉钉授权页面进行绑定操作。 检查系统是否已正确配置钉钉登录相关参数,并重定向到钉钉OAuth认证地址。
      返回:
      成功则跳转到钉钉授权页,失败返回错误信息
      抛出:
      IOException - IO异常
      TokenAuthenticationException - 认证异常
    • invokeDingdingBinding

      @RequestMapping(value="/invoke/binding", method={GET,POST}) @Transactional(rollbackFor=java.lang.Exception.class) @Permission("ADMIN") public Object invokeDingdingBinding(@RequestParam Map<String,Object> paramMap) throws Exception
      处理钉钉授权后的回调请求,完成用户与钉钉账号的绑定流程。 根据授权码获取钉钉用户信息并更新数据库中的绑定状态。
      参数:
      paramMap - 请求参数集合,包含 authCode 和 state 字段
      返回:
      绑定成功后重定向到指定页面或失败时跳转到错误页面
      抛出:
      Exception - 异常情况如网络问题等
    • sendDingDing

      @PostMapping("/sendDingDing") @Permission("ADMIN") @Transactional(rollbackFor=java.lang.Exception.class) public ApiResult<String> sendDingDing(@RequestBody Map<String,Object> paramMap) throws Exception
      向指定用户发送钉钉通知消息。 先检查目标用户是否已绑定钉钉,然后插入通知记录并调用服务实际推送消息。
      参数:
      paramMap - 包含 to_user_id 和 message 的参数映射
      返回:
      发送成功的响应对象
      抛出:
      Exception - 数据库或其他业务逻辑异常