liusheng
2024-05-16 2f13f59f023fba63aa993172d48c14bcaaafb233
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package com.ruoyi.web.controller.project;
 
import com.aliyun.dingtalkoauth2_1_0.models.GetSsoUserInfoResponseBody;
import com.aliyun.tea.Validation;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.project.domain.vo.DingTalkReqVo;
import com.ruoyi.project.service.DingTalkService;
import com.taobao.api.ApiException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.*;
 
/**
 * 钉钉接口
 *
 * @author liusheng
 * @date 2023-05-15
 */
@Slf4j
@Api(description = "钉钉接口")
@RestController
@RequestMapping("/smartor/dingtalk")
@PropertySource(value = {"classpath:application-druid.yml"})
public class DingTalkController extends BaseController {
 
    @Value("${dingAppid}")
    private String dingAppid;
 
    @Value("${dingAppSecret}")
    private String dingAppSecret;
 
    @Autowired
    private DingTalkService dingTalkService;
 
    /**
     * 发送钉钉消息
     *
     * @param dingTalkReqVo 发送内容
     * @throws ApiException
     */
    @ApiOperation("发送钉钉消息")
    @PostMapping("/sendNotification")
    public AjaxResult sendNotification(@RequestBody DingTalkReqVo dingTalkReqVo) {
        log.info("发送钉钉消息:{}", dingTalkReqVo);
        Boolean aBoolean = dingTalkService.sendNotification(dingTalkReqVo);
        if (aBoolean) {
            return success();
        }
        return error();
    }
 
    /**
     * 给部门下的用户信息赋dingUserId,并记录到sys_user表中
     *
     * @param deptID
     * @return
     */
    @ApiOperation("给部门下的用户信息赋dingUserId")
    @GetMapping("/deptidList/{deptID}")
    public AjaxResult deptidList(@PathVariable("deptID") Long deptID) {
        dingTalkService.deptidList(deptID, 1);
        return success();
    }
 
}