diff --git a/dating-agency-mall-server/pom.xml b/dating-agency-mall-server/pom.xml
index 7d8d338..5507d12 100644
--- a/dating-agency-mall-server/pom.xml
+++ b/dating-agency-mall-server/pom.xml
@@ -101,6 +101,12 @@
dating-agency-service-sdk
0.0.1-SNAPSHOT
+
+
+ taobao.sdk.java
+ auto_1479188381469-20191226
+ 1.0.0
+
diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/order/user/OrderUserQueryController.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/order/user/OrderUserQueryController.java
index e6723d4..bc3626a 100644
--- a/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/order/user/OrderUserQueryController.java
+++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/order/user/OrderUserQueryController.java
@@ -1,10 +1,12 @@
package com.qniao.dam.api.query.order.user;
+import com.alibaba.fastjson.JSONObject;
import com.qniao.dam.api.query.order.user.request.UserPageOrderByOperatorQueryParam;
import com.qniao.dam.api.query.order.user.response.GetOrderStatisticsByOperatorVo;
import com.qniao.dam.api.query.order.user.response.UserOrderRecordVo;
import com.qniao.dam.api.query.order.user.response.UserPageOrderByOperatorVo;
import com.qniao.dam.domian.aggregate.order.constant.OrderStatusEnum;
+import com.qniao.dam.infrastructure.utils.DingTalkWarningUtil;
import com.qniao.dam.query.order.OrderQueryService;
import com.qniao.dau.infrastructure.constant.RequestHeaderFields;
import com.qniao.domain.QnPage;
@@ -14,6 +16,8 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.stream.Collectors;
@RestController
@RequestMapping("user")
@@ -22,6 +26,8 @@ public class OrderUserQueryController {
@Resource
private OrderQueryService orderQueryService;
+ @Resource
+ private DingTalkWarningUtil dingTalkWarningUtil;
@GetMapping("page/order/by/operator")
@ApiOperation("运营获取订单分页列表")
@@ -45,9 +51,20 @@ public class OrderUserQueryController {
@GetMapping("page/user/order/record")
@ApiOperation("客户获取订单记录分页列表")
public QnPage userUserOrderRecord(PageUtil pageUtil,
- @RequestParam("miId") Long miId,
- @RequestParam("userId") Long userId) {
+ @RequestParam("miId") Long miId,
+ @RequestParam("userId") Long userId) {
+
+ return orderQueryService.userUserOrderRecord(pageUtil, miId, userId);
+ }
+
+ @GetMapping("test/test")
+ public void testtest() {
+ String msg = "用户:就是不吃饭/支付1998/购买活动";
- return orderQueryService.userUserOrderRecord(pageUtil,miId,userId);
+ HashMap body = new HashMap<>();
+ body.put("Msgtype", "markdown");
+ body.put("content", msg);
+ body.put("contextSize", "2000");
+ dingTalkWarningUtil.send("aac04fe8b940a53244d21607ff2801df95b9e8461b30319ef5ea4fd1915903ea", body);
}
}
diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/utils/DingTalkWarningUtil.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/utils/DingTalkWarningUtil.java
new file mode 100644
index 0000000..24356e1
--- /dev/null
+++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/utils/DingTalkWarningUtil.java
@@ -0,0 +1,97 @@
+package com.qniao.dam.infrastructure.utils;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.dingtalk.api.DefaultDingTalkClient;
+import com.dingtalk.api.DingTalkClient;
+import com.dingtalk.api.request.OapiRobotSendRequest;
+import com.taobao.api.ApiException;
+import com.taobao.api.TaobaoResponse;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+@Component
+@Slf4j
+public class DingTalkWarningUtil {
+
+ @Value("${payment-order-paid-dingTalk-token}")
+ private String paymentOrderPaidToken;
+ private static Integer contextSize = 600;
+
+ private final static String dingTalkUrl = "https://oapi.dingtalk.com/robot/send?access_token=";
+
+ /**
+ * 发送钉钉报错信息
+ *
+ * @param data 数据
+ * @return
+ */
+ public static boolean send(String accessToken, Map data) {
+ OapiRobotSendRequest request = new OapiRobotSendRequest();
+ if (data.containsKey("Msgtype")) {
+ request.setMsgtype(data.get("Msgtype"));
+ } else {
+ request.setMsgtype("text");
+
+ }
+ OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
+ String content = "";
+
+ if (data.containsKey("time")) {
+ content = content + data.get("time");
+ }
+ if (data.containsKey("traceId")) {
+ content = content + "[" + data.get("traceId") + "]";
+ }
+ if (data.containsKey("requestUri")) {
+ content = content + "[" + data.get("requestUri") + "]";
+ }
+
+ if (data.containsKey("content")) {
+ content = content + data.get("content");
+ }
+ Integer csize = contextSize;
+ if (data.containsKey("contextSize")) {
+ csize = Integer.parseInt(data.get("contextSize"));
+ }
+ if (content.length() > csize) {
+ content = content.substring(0, csize);
+ }
+ log.info(content);
+ if (data.containsKey("Msgtype") && data.get("Msgtype").equals("markdown")) {
+ OapiRobotSendRequest.Markdown markdown = new OapiRobotSendRequest.Markdown();
+ markdown.setTitle(data.get("toastType"));
+ if (data.containsKey("RemindUser")) {
+ content = "@" + data.get("RemindUser") + "
" + content;
+ }
+ markdown.setText(content);
+ request.setMarkdown(markdown);
+ } else {
+ if (data.containsKey("toastType")) {
+ content = data.get("toastType") + content;
+ }
+ text.setContent(content);
+ request.setText(text);
+ }
+ try {
+ TaobaoResponse response = getTalkClient(accessToken).execute(request);
+ if (response.getErrorCode() != null && !response.getErrorCode().equals("0")) {
+ log.error("DingTalk接口异常", response);
+ return false;
+ }
+ } catch (ApiException e) {
+ log.error("DingTalk接口异常", e);
+ return false;
+ }
+ return true;
+ }
+
+ private static DingTalkClient getTalkClient(String accessToken) {
+ return StringUtils.isNotBlank(accessToken) ? new DefaultDingTalkClient(dingTalkUrl + accessToken) : null;
+ }
+
+}