地质所 沉降监测网建设项目
chenhuan
2024-05-16 f992b4e508b358eba4170b1e9b1bb21319f7a3cd
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package com.javaweb.third.controller;
 
import com.alibaba.fastjson.JSONObject;
import com.javaweb.common.core.controller.BaseController;
import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.common.utils.spring.SpringUtils;
import com.javaweb.third.baidu.baiduSite.BaiduPushTypeEnum;
import com.javaweb.third.baidu.baiduSite.BaiduPushUtil;
import com.javaweb.third.baidu.baiduSite.UrlBuildUtil;
import com.javaweb.third.config.ThirdConfig;
import com.javaweb.third.service.impl.LeYunSmsCallBackImpl;
import com.javaweb.third.sms.SmsUtil;
import com.javaweb.third.tencent.TencentIpUtil;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.Map;
 
/**
 * 第三方APIController
 * 
 * @author wujiyue
 * @date 2019-10-11
 */
@Controller
@RequestMapping("/third/api")
public class ThirdApiController extends BaseController
{
    private String prefix = "third/api";
 
    @RequiresPermissions("third:api:view")
    @GetMapping()
    public String smsHis()
    {
        return prefix + "/thirdApi";
    }
 
 
    /**
     * 发送短信
     */
    @RequiresPermissions("third:api:sendSms")
    @PostMapping("/sendSms")
    @ResponseBody
    public AjaxResult sendSms(String phone,String prefix,String content)
    {
        LeYunSmsCallBackImpl leYunSmsCallBack= SpringUtils.getBean("leYunSmsCallBack");
        Map map=new HashMap<String,Object>();
        map.put("phone",phone);
        map.put("prefix",prefix);
        map.put("content",content);
        leYunSmsCallBack.setParams(map);
        AjaxResult result= SmsUtil.sendLeYunSms(phone,prefix,content,leYunSmsCallBack);
        return result;
    }
    /**
     * 查询IP
     */
    @RequiresPermissions("third:api:queryIp")
    @PostMapping("/queryIp")
    @ResponseBody
    public AjaxResult queryIp(String ip)
    {
        AjaxResult res=TencentIpUtil.queryIpLocation(ip);
        return res;
    }
 
    /**
     * 查询IP
     */
    @RequiresPermissions("third:api:baiduPush")
    @PostMapping("/baiduPush/{type}")
    @ResponseBody
    public AjaxResult baiduPush(@PathVariable("type") BaiduPushTypeEnum type,String url)
    {
        String str = UrlBuildUtil.getBaiduPushUrl(type.toString(), ThirdConfig.getBaiduPushDomain(), ThirdConfig.getBaiduPushToken());
        /**
         * success               int        成功推送的url条数
         * remain               int        当天剩余的可推送url条数
         * not_same_site    array    由于不是本站url而未处理的url列表
         * not_valid           array    不合法的url列表
         */
        // {"remain":4999997,"success":1,"not_same_site":[],"not_valid":[]}
        /**
         * error    是    int          错误码,与状态码相同
         * message    是    string      错误描述
         */
        //{error":401,"message":"token is not valid"}
        String result = BaiduPushUtil.doPush(str, url);
 
        JSONObject resultJson = JSONObject.parseObject(result);
 
        /*if (resultJson.containsKey("error")) {
            return AjaxResult.error(resultJson.getString("message"));
        }*/
        return AjaxResult.success(resultJson);
    }
 
}