Commit 8ac28dbbfe80b710a2b6c2a34172c2195de88555
1 parent
abbce1f6
Exists in
dev
1:钉钉
Showing
4 changed files
with
17 additions
and
65 deletions
Show diff stats
zr-cloud/zr-modules/zr-schsf/pom.xml
@@ -159,12 +159,20 @@ | @@ -159,12 +159,20 @@ | ||
159 | </dependency> | 159 | </dependency> |
160 | 160 | ||
161 | <dependency> | 161 | <dependency> |
162 | + <groupId>com.aliyun</groupId> | ||
163 | + <artifactId>dingtalk</artifactId> | ||
164 | + <version>1.1.58</version> | ||
165 | + </dependency> | ||
166 | + | ||
167 | + <dependency> | ||
162 | <groupId>com.laiwang.lippi</groupId> | 168 | <groupId>com.laiwang.lippi</groupId> |
163 | <artifactId>lippi.oapi.encryt</artifactId> | 169 | <artifactId>lippi.oapi.encryt</artifactId> |
164 | <version>1.0.3-SNAPSHOT</version> | 170 | <version>1.0.3-SNAPSHOT</version> |
165 | <scope>system</scope> | 171 | <scope>system</scope> |
166 | <systemPath>${project.basedir}/lib/lippi-oapi-encrpt.jar</systemPath> | 172 | <systemPath>${project.basedir}/lib/lippi-oapi-encrpt.jar</systemPath> |
167 | </dependency> | 173 | </dependency> |
174 | + | ||
175 | + | ||
168 | <dependency> | 176 | <dependency> |
169 | <groupId>com.dingtalk.open</groupId> | 177 | <groupId>com.dingtalk.open</groupId> |
170 | <artifactId>client-sdk.api</artifactId> | 178 | <artifactId>client-sdk.api</artifactId> |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/DingtalkController.java
@@ -41,10 +41,10 @@ public class DingtalkController { | @@ -41,10 +41,10 @@ public class DingtalkController { | ||
41 | long timeStamp = System.currentTimeMillis(); | 41 | long timeStamp = System.currentTimeMillis(); |
42 | String nonceStr = "nonceStr"; | 42 | String nonceStr = "nonceStr"; |
43 | // 获取access token | 43 | // 获取access token |
44 | - String accessToken = dingtalkService.getAccessToken(timeStamp); | 44 | + String accessToken = dingtalkService.getAccessToken(); |
45 | log.info("成功获取access token:{}", accessToken); | 45 | log.info("成功获取access token:{}", accessToken); |
46 | // 获取jsapi ticket | 46 | // 获取jsapi ticket |
47 | - String ticket = dingtalkService.getJsapiTicket(accessToken, timeStamp); | 47 | + String ticket = dingtalkService.getJsapiTicket(accessToken); |
48 | log.info("成功获取jsapi ticket:{}", ticket); | 48 | log.info("成功获取jsapi ticket:{}", ticket); |
49 | String signature = dingtalkService.getSign(ticket, nonceStr, timeStamp, url); | 49 | String signature = dingtalkService.getSign(ticket, nonceStr, timeStamp, url); |
50 | log.info("成功签名:{}", signature); | 50 | log.info("成功签名:{}", signature); |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/DingtalkService.java
@@ -3,10 +3,10 @@ package com.chinagas.modules.schsf.service; | @@ -3,10 +3,10 @@ package com.chinagas.modules.schsf.service; | ||
3 | public interface DingtalkService { | 3 | public interface DingtalkService { |
4 | 4 | ||
5 | 5 | ||
6 | - String getAccessToken(Long timeStamp); | 6 | + String getAccessToken(); |
7 | 7 | ||
8 | 8 | ||
9 | - String getJsapiTicket(String accessToken, Long timeStamp); | 9 | + String getJsapiTicket(String accessToken); |
10 | 10 | ||
11 | String getSign(String ticket, String nonceStr, Long timeStamp, String url); | 11 | String getSign(String ticket, String nonceStr, Long timeStamp, String url); |
12 | 12 |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/impl/DingtalkServiceImpl.java
@@ -22,26 +22,14 @@ public class DingtalkServiceImpl implements DingtalkService { | @@ -22,26 +22,14 @@ public class DingtalkServiceImpl implements DingtalkService { | ||
22 | @Autowired | 22 | @Autowired |
23 | private DingtalkConstant dingtalkConstant; | 23 | private DingtalkConstant dingtalkConstant; |
24 | 24 | ||
25 | - | ||
26 | - /** | ||
27 | - * 调整到1小时50分钟 | ||
28 | - */ | ||
29 | - public static final long cacheTime = 1000 * 60 * 55 * 2; | ||
30 | - | ||
31 | @Override | 25 | @Override |
32 | - public String getAccessToken(Long timeStamp) { | ||
33 | - long curTime = timeStamp == null ? System.currentTimeMillis() : timeStamp; | 26 | + public String getAccessToken() { |
34 | String accToken = ""; | 27 | String accToken = ""; |
35 | JSONObject jsontemp = new JSONObject(); | 28 | JSONObject jsontemp = new JSONObject(); |
36 | try { | 29 | try { |
37 | ServiceFactory serviceFactory = ServiceFactory.getInstance(); | 30 | ServiceFactory serviceFactory = ServiceFactory.getInstance(); |
38 | CorpConnectionService corpConnectionService = serviceFactory.getOpenService(CorpConnectionService.class); | 31 | CorpConnectionService corpConnectionService = serviceFactory.getOpenService(CorpConnectionService.class); |
39 | accToken = corpConnectionService.getCorpToken(dingtalkConstant.getAppKey(), dingtalkConstant.getAppSecret()); | 32 | accToken = corpConnectionService.getCorpToken(dingtalkConstant.getAppKey(), dingtalkConstant.getAppSecret()); |
40 | - JSONObject jsonAccess = new JSONObject(); | ||
41 | - jsontemp.clear(); | ||
42 | - jsontemp.put("access_token", accToken); | ||
43 | - jsontemp.put("begin_time", curTime); | ||
44 | - jsonAccess.put(dingtalkConstant.getAppKey(), jsontemp); | ||
45 | } catch (Exception e) { | 33 | } catch (Exception e) { |
46 | e.printStackTrace(); | 34 | e.printStackTrace(); |
47 | } | 35 | } |
@@ -49,8 +37,7 @@ public class DingtalkServiceImpl implements DingtalkService { | @@ -49,8 +37,7 @@ public class DingtalkServiceImpl implements DingtalkService { | ||
49 | } | 37 | } |
50 | 38 | ||
51 | @Override | 39 | @Override |
52 | - public String getJsapiTicket(String accessToken, Long timeStamp) { | ||
53 | - long curTime = timeStamp == null ? System.currentTimeMillis() : timeStamp; | 40 | + public String getJsapiTicket(String accessToken) { |
54 | String jsTicket = ""; | 41 | String jsTicket = ""; |
55 | ServiceFactory serviceFactory; | 42 | ServiceFactory serviceFactory; |
56 | try { | 43 | try { |
@@ -58,17 +45,10 @@ public class DingtalkServiceImpl implements DingtalkService { | @@ -58,17 +45,10 @@ public class DingtalkServiceImpl implements DingtalkService { | ||
58 | JsapiService jsapiService = serviceFactory.getOpenService(JsapiService.class); | 45 | JsapiService jsapiService = serviceFactory.getOpenService(JsapiService.class); |
59 | JsapiTicket JsapiTicket = jsapiService.getJsapiTicket(accessToken, "jsapi"); | 46 | JsapiTicket JsapiTicket = jsapiService.getJsapiTicket(accessToken, "jsapi"); |
60 | jsTicket = JsapiTicket.getTicket(); | 47 | jsTicket = JsapiTicket.getTicket(); |
61 | - JSONObject jsonTicket = new JSONObject(); | ||
62 | - JSONObject jsontemp = new JSONObject(); | ||
63 | - jsontemp.clear(); | ||
64 | - jsontemp.put("ticket", jsTicket); | ||
65 | - jsontemp.put("begin_time", curTime); | ||
66 | - jsonTicket.put(dingtalkConstant.getAppKey(), jsontemp); | ||
67 | } catch (Exception e) { | 48 | } catch (Exception e) { |
68 | e.printStackTrace(); | 49 | e.printStackTrace(); |
69 | } | 50 | } |
70 | return jsTicket; | 51 | return jsTicket; |
71 | - | ||
72 | } | 52 | } |
73 | 53 | ||
74 | @Override | 54 | @Override |
@@ -81,43 +61,7 @@ public class DingtalkServiceImpl implements DingtalkService { | @@ -81,43 +61,7 @@ public class DingtalkServiceImpl implements DingtalkService { | ||
81 | } | 61 | } |
82 | 62 | ||
83 | 63 | ||
84 | -// @Override | ||
85 | -// public String getSign(String ticket, String nonceStr, Long timeStamp, String url) { | ||
86 | -// try { | ||
87 | -// return getJsApiSingnature(url, nonceStr, timeStamp, ticket); | ||
88 | -// } catch (Exception ex) { | ||
89 | -// throw new ServiceException(ex.getMessage()); | ||
90 | -// } | ||
91 | -// } | ||
92 | -// | ||
93 | -// public static String getJsApiSingnature(String url, String nonce, Long timeStamp, String jsTicket) { | ||
94 | -// String plainTex = "jsapi_ticket=" + jsTicket + "&noncestr=" + nonce + "×tamp=" + timeStamp + "&url=" + url; | ||
95 | -// System.out.println(plainTex); | ||
96 | -// String signature = ""; | ||
97 | -// | ||
98 | -// try { | ||
99 | -// MessageDigest crypt = MessageDigest.getInstance("SHA-1"); | ||
100 | -// crypt.reset(); | ||
101 | -// crypt.update(plainTex.getBytes("UTF-8")); | ||
102 | -// signature = byteToHex(crypt.digest()); | ||
103 | -// return signature; | ||
104 | -// } catch (Exception e) { | ||
105 | -// throw new RuntimeException("钉钉通信异常:"+e.getMessage()); | ||
106 | -// } | ||
107 | -// } | ||
108 | -// | ||
109 | -// private static String byteToHex(byte[] hash) { | ||
110 | -// Formatter formatter = new Formatter(); | ||
111 | -// byte[] var2 = hash; | ||
112 | -// int var3 = hash.length; | ||
113 | -// | ||
114 | -// for(int var4 = 0; var4 < var3; ++var4) { | ||
115 | -// byte b = var2[var4]; | ||
116 | -// formatter.format("%02x", b); | ||
117 | -// } | ||
118 | -// | ||
119 | -// String result = formatter.toString(); | ||
120 | -// formatter.close(); | ||
121 | -// return result; | ||
122 | -// } | 64 | + |
65 | + | ||
66 | + | ||
123 | } | 67 | } |