From c84fcee9ba1d4acad303aca2f18e64301b31a341 Mon Sep 17 00:00:00 2001
From: zzc <1278921369@qq.com>
Date: Sun, 20 Oct 2024 23:48:08 +0800
Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=B8=85=E7=90=86=E5=8F=8A?=
=?UTF-8?q?=E7=94=A8=E6=88=B7=E5=81=9C=E7=94=A8=E5=90=AF=E7=94=A8=E5=88=A0?=
=?UTF-8?q?=E9=99=A4=E5=8A=9F=E8=83=BD=E6=B7=BB=E5=8A=A0=E5=8F=8A=E4=B8=AA?=
=?UTF-8?q?=E6=8E=A8=E6=B5=8B=E8=AF=95=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ruoyi-admin/pom.xml | 8 +
.../java/org/dromara/DromaraApplication.java | 2 +
.../org/dromara/web/config/GeTuiConfig.java | 42 +++++
.../web/domain/vo/EqUserEquipmentVo.java | 6 +
.../main/java/org/dromara/web/msg/Msg.java | 19 +++
.../java/org/dromara/web/msg/PushUtils.java | 150 ++++++++++++++++++
.../web/service/IEqEquipmentLogService.java | 7 +
.../impl/EqEquipmentLogServiceImpl.java | 7 +
.../java/org/dromara/web/task/DataTask.java | 55 +++++++
.../src/main/resources/application-dev.yml | 9 ++
.../mapper/device/EqEquipmentMapper.xml | 2 +
11 files changed, 307 insertions(+)
create mode 100644 ruoyi-admin/src/main/java/org/dromara/web/config/GeTuiConfig.java
create mode 100644 ruoyi-admin/src/main/java/org/dromara/web/msg/Msg.java
create mode 100644 ruoyi-admin/src/main/java/org/dromara/web/msg/PushUtils.java
create mode 100644 ruoyi-admin/src/main/java/org/dromara/web/task/DataTask.java
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 924518fac..44f3555a0 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -121,6 +121,14 @@
3.5.1
+
+
+
+ com.getui.push
+ restful-sdk
+ 1.0.5.0
+
+
diff --git a/ruoyi-admin/src/main/java/org/dromara/DromaraApplication.java b/ruoyi-admin/src/main/java/org/dromara/DromaraApplication.java
index 8ef33fe5f..a45b40b96 100644
--- a/ruoyi-admin/src/main/java/org/dromara/DromaraApplication.java
+++ b/ruoyi-admin/src/main/java/org/dromara/DromaraApplication.java
@@ -3,6 +3,7 @@ package org.dromara;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup;
+import org.springframework.scheduling.annotation.EnableScheduling;
/**
* 启动程序
@@ -10,6 +11,7 @@ import org.springframework.boot.context.metrics.buffering.BufferingApplicationSt
* @author Lion Li
*/
+@EnableScheduling
@SpringBootApplication
public class DromaraApplication {
diff --git a/ruoyi-admin/src/main/java/org/dromara/web/config/GeTuiConfig.java b/ruoyi-admin/src/main/java/org/dromara/web/config/GeTuiConfig.java
new file mode 100644
index 000000000..968ecebb6
--- /dev/null
+++ b/ruoyi-admin/src/main/java/org/dromara/web/config/GeTuiConfig.java
@@ -0,0 +1,42 @@
+package org.dromara.web.config;
+
+import com.getui.push.v2.sdk.ApiHelper;
+import com.getui.push.v2.sdk.GtApiConfiguration;
+import com.getui.push.v2.sdk.api.PushApi;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+
+public class GeTuiConfig {
+
+ @Value("${getui.baseUrl}")
+ private String baseUrl;
+
+ @Value("${getui.appId}")
+ private String appId;
+
+ @Value("${getui.appKey}")
+ private String appKey;
+
+ @Value("${getui.appSecret}")
+ private String appSecret;
+
+ @Value("${getui.masterSecret}")
+ private String masterSecret;
+
+ @Bean(name = "pushApi")
+ public PushApi pushApi() {
+ GtApiConfiguration apiConfiguration = new GtApiConfiguration();
+ //填写应用配置
+ apiConfiguration.setAppId(appId);
+ apiConfiguration.setAppKey(appKey);
+ apiConfiguration.setMasterSecret(masterSecret);
+ // 接口调用前缀,请查看文档: 接口调用规范 -> 接口前缀, 可不填写appId
+ apiConfiguration.setDomain(baseUrl);
+ // 实例化ApiHelper对象,用于创建接口对象
+ ApiHelper apiHelper = ApiHelper.build(apiConfiguration);
+ // 创建对象,建议复用。目前有PushApi、StatisticApi、UserApi
+ PushApi pushApi = apiHelper.creatApi(PushApi.class);
+ return pushApi;
+ }
+
+}
diff --git a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/EqUserEquipmentVo.java b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/EqUserEquipmentVo.java
index f06531828..11c5978ec 100644
--- a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/EqUserEquipmentVo.java
+++ b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/EqUserEquipmentVo.java
@@ -41,6 +41,12 @@ public class EqUserEquipmentVo implements Serializable {
@ExcelProperty(value = "绑定账号")
private String userName;
+ /**
+ * 帐号状态(0正常 1停用)
+ */
+ @ExcelProperty(value = "账号状态")
+ private String status;
+
/**
* 绑定设备(个)
*/
diff --git a/ruoyi-admin/src/main/java/org/dromara/web/msg/Msg.java b/ruoyi-admin/src/main/java/org/dromara/web/msg/Msg.java
new file mode 100644
index 000000000..b16a4865f
--- /dev/null
+++ b/ruoyi-admin/src/main/java/org/dromara/web/msg/Msg.java
@@ -0,0 +1,19 @@
+package org.dromara.web.msg;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @ClassName : Msg
+ * @Author : ZZC
+ * @Date : 2024/10/20 20:39
+ * @Description :
+ **/
+@Data
+public class Msg implements Serializable {
+ private String cid;
+ private String title;
+ private String content;
+ private String uid;
+}
diff --git a/ruoyi-admin/src/main/java/org/dromara/web/msg/PushUtils.java b/ruoyi-admin/src/main/java/org/dromara/web/msg/PushUtils.java
new file mode 100644
index 000000000..0edeaa9a4
--- /dev/null
+++ b/ruoyi-admin/src/main/java/org/dromara/web/msg/PushUtils.java
@@ -0,0 +1,150 @@
+package org.dromara.web.msg;
+
+import com.getui.push.v2.sdk.api.PushApi;
+import com.getui.push.v2.sdk.api.UserApi;
+import com.getui.push.v2.sdk.common.ApiResult;
+import com.getui.push.v2.sdk.dto.CommonEnum;
+import com.getui.push.v2.sdk.dto.req.Audience;
+import com.getui.push.v2.sdk.dto.req.Settings;
+import com.getui.push.v2.sdk.dto.req.Strategy;
+import com.getui.push.v2.sdk.dto.req.message.PushChannel;
+import com.getui.push.v2.sdk.dto.req.message.PushDTO;
+import com.getui.push.v2.sdk.dto.req.message.PushMessage;
+import com.getui.push.v2.sdk.dto.req.message.android.AndroidDTO;
+import com.getui.push.v2.sdk.dto.req.message.android.ThirdNotification;
+import com.getui.push.v2.sdk.dto.req.message.android.Ups;
+import com.getui.push.v2.sdk.dto.req.message.ios.Alert;
+import com.getui.push.v2.sdk.dto.req.message.ios.Aps;
+import com.getui.push.v2.sdk.dto.req.message.ios.IosDTO;
+import com.google.common.collect.Sets;
+import org.dromara.common.core.domain.R;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
+
+public class PushUtils {
+
+ @Resource
+ PushApi pushApi;
+
+ UserApi userApi;
+
+ /**
+ * 查询用户状态
+ *
+ * @param cid 客户端标识
+ */
+ public void queryUserStatus(String cid) {
+ System.out.println(userApi.queryUserStatus(Sets.newHashSet(cid)));
+ }
+
+ /**
+ * 根据CID单推
+ *
+ * @throws InterruptedException
+ */
+ public R