From cf4ad99fd0e0f7133114e3c5ae6b7db91dc88055 Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 24 Aug 2021 10:56:03 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=8F=91=E9=80=81=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/utils/DingdingMsgSender.java | 74 ++----------------- 1 file changed, 5 insertions(+), 69 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DingdingMsgSender.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DingdingMsgSender.java index 4cde837bc9..bb663ac327 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DingdingMsgSender.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DingdingMsgSender.java @@ -2,7 +2,6 @@ package com.epmet.commons.tools.utils; import com.alibaba.fastjson.JSON; import com.epmet.commons.tools.dto.form.DingTalkTextMsg; -import com.epmet.commons.tools.exception.EpmetErrorCode; import com.google.common.collect.Lists; import org.apache.commons.codec.binary.Base64; import org.apache.commons.lang3.StringUtils; @@ -13,13 +12,9 @@ import org.springframework.stereotype.Component; import javax.annotation.PreDestroy; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; -import java.io.BufferedReader; import java.io.IOException; -import java.io.InputStreamReader; -import java.io.PrintWriter; -import java.net.URL; -import java.net.URLConnection; import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.util.concurrent.ArrayBlockingQueue; /** @@ -104,7 +99,7 @@ public class DingdingMsgSender { } private Thread getThread() { - Thread sendMsgThread = new Thread("MsgSender-Thread") { + return new Thread("MsgSender-Thread") { @Override public void run() { while (running) { @@ -112,7 +107,6 @@ public class DingdingMsgSender { } } }; - return sendMsgThread; } @@ -139,77 +133,19 @@ public class DingdingMsgSender { try { String stringToSign = timestamp + "\n" + param.getSecret(); Mac mac = Mac.getInstance("HmacSHA256"); - mac.init(new SecretKeySpec(param.getSecret().getBytes("UTF-8"), "HmacSHA256")); - byte[] signData = mac.doFinal(stringToSign.getBytes("UTF-8")); + mac.init(new SecretKeySpec(param.getSecret().getBytes(StandardCharsets.UTF_8), "HmacSHA256")); + byte[] signData = mac.doFinal(stringToSign.getBytes(StandardCharsets.UTF_8)); String sign = URLEncoder.encode(new String(Base64.encodeBase64(signData)), "UTF-8"); String url = param.getWebHook(); url = url.concat("×tamp=" + timestamp + "&sign=" + sign); String jsonStrParam = param.getMsgContent(); - result = this.sendPostByJSON(url, jsonStrParam); + result = HttpClientManager.getInstance().sendPostByJSON(url, jsonStrParam); } catch (Exception e) { logger.warn("sendPostByJSON error", e); } return result; } - /** - * 发送POST 请求 - * - * @param url 发送请求的 URL - * @param param 请求参数,JSON格式 - * @return - */ - public Result sendPostByJSON(String url, String param) throws IOException { - if (StringUtils.isEmpty(url) || StringUtils.isEmpty(param)) { - throw new IllegalArgumentException("参数不能为空"); - } - PrintWriter out = null; - BufferedReader in = null; - String result = ""; - try { - URL realUrl = new URL(url); - // 打开和URL之间的连接 - URLConnection conn = realUrl.openConnection(); - // 设置通用的请求属性 - conn.setRequestProperty("accept", "*/*"); - conn.setRequestProperty("Content-Type", "application/json"); - conn.setRequestProperty("connection", "Keep-Alive"); - conn.setRequestProperty("user-agent", - "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); - // 发送POST请求必须设置如下两行 - conn.setDoOutput(true); - conn.setDoInput(true); - // 获取URLConnection对象对应的输出流 - out = new PrintWriter(conn.getOutputStream()); - // 发送请求参数 - out.print(param); - // flush输出流的缓冲 - out.flush(); - // 定义BufferedReader输入流来读取URL的响应 - in = new BufferedReader( - new InputStreamReader(conn.getInputStream())); - String line; - while ((line = in.readLine()) != null) { - result += line; - } - } catch (Exception e) { - logger.warn("sendPostByJSON error", e); - return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), e.getMessage()); - } finally { - try { - if (out != null) { - out.close(); - } - if (in != null) { - in.close(); - } - } catch (IOException ex) { - } - - } - return new Result().ok(result); - } - public static void main(String[] args) { for (int i = 0; i < 50; i++) { From 2a904497ffb22d4dd27b8e8f24b827161acdafea Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 24 Aug 2021 14:02:10 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=BE=A4=E4=BC=97=E7=9B=B4=E6=8A=A5?= =?UTF-8?q?=E5=BE=85=E5=A4=84=E7=90=86=E3=80=81=E5=A4=84=E7=90=86=E4=B8=AD?= =?UTF-8?q?=E3=80=81=E5=B7=B2=E5=8A=9E=E7=BB=93=E5=9B=BE=E7=89=87=E5=8D=87?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/ResiEventDao.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index f9fc875f7e..e77383613a 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -49,7 +49,12 @@ ORDER BY re.CLOSE_CASE_TIME DESC )t - LEFT JOIN resi_event_attachment rea ON (rea.RESI_EVENT_ID = t.eventId AND rea.DEL_FLAG = '0' AND rea.ATTACHMENT_TYPE = 'image' AND (rea.SORT = 3 OR rea.SORT = 1 OR rea.SORT = 2)) + LEFT JOIN resi_event_attachment rea + ON (rea.RESI_EVENT_ID = t.eventId + AND rea.DEL_FLAG = '0' + AND rea.ATTACHMENT_TYPE = 'image' + AND (rea.SORT = 3 OR rea.SORT = 1 OR rea.SORT = 2)) + order by rea.sort asc