From ca9cdafe4bac278dc35627bde319b0d41644a1b6 Mon Sep 17 00:00:00 2001
From: qyx <565485304@qq.com>
Date: Thu, 24 Sep 2020 17:46:54 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=A4=A7=E6=95=B0=E6=8D=AE?=
=?UTF-8?q?=E7=9B=B8=E5=85=B3=E7=9A=84=E6=B5=8B=E8=AF=95=E5=92=8C=E5=8F=91?=
=?UTF-8?q?=E9=80=81=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
eladmin-system/pom.xml | 9 +
.../common/{ => http}/CommonResponse.java | 2 +-
.../common/{ => http}/ResponseCode.java | 2 +-
.../json}/PushDBJsonContent.java | 4 +-
.../abmessage/rest/AbMessageController.java | 4 +-
.../buildrecord/domain/BuildRecord.java | 6 +-
.../rest/BuildRecordController.java | 85 +++++++++
.../rest/vo/BuildRecordBuildVO.java | 19 ++
.../rest/vo/BuildRecordSendVO.java | 41 ++++
.../service/dto/BuildRecordDto.java | 4 +
.../service/dto/BuildRecordQueryCriteria.java | 6 +
.../buildrecord/task/ProduceBigDataTask.java | 127 +++++++++++++
.../buildrecord/task/SendBigDataTask.java | 176 ++++++++++++++++++
.../BuildTaskQueryParamJsonConvert.java | 34 ++++
.../buildrecord/task/dto/SendBigDataDTO.java | 29 +++
.../taskrecord/rest/TaskRecordController.java | 32 ++--
...ordBuildVO.java => TaskBuildRecordVO.java} | 3 +-
.../taskrecord/rest/vo/TaskRecordSendVO.java | 15 ++
.../task/MergeRecordFilesTask.java | 2 +-
.../task/ProduceLocalFileTask.java | 2 +-
.../taskrecord}/task/SendRecordTask.java | 46 +++--
.../taskrecord/task/dto/SendRecordDTO.java | 36 ++++
.../main/resources/config/application-dev.yml | 13 +-
.../resources/config/application-prod.yml | 2 +-
.../java/me/zhengjie/LocalSpatial4JTest.java | 74 ++++++++
.../test/java/me/zhengjie/SpringJPATest.java | 53 ++++++
26 files changed, 781 insertions(+), 45 deletions(-)
rename eladmin-system/src/main/java/me/zhengjie/common/{ => http}/CommonResponse.java (98%)
rename eladmin-system/src/main/java/me/zhengjie/common/{ => http}/ResponseCode.java (97%)
rename eladmin-system/src/main/java/me/zhengjie/{modules/taskrecord/rest/dto => common/json}/PushDBJsonContent.java (85%)
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/vo/BuildRecordBuildVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/vo/BuildRecordSendVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/task/ProduceBigDataTask.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/task/SendBigDataTask.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/task/convert/BuildTaskQueryParamJsonConvert.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/task/dto/SendBigDataDTO.java
rename eladmin-system/src/main/java/me/zhengjie/modules/taskrecord/rest/vo/{TaskRecordBuildVO.java => TaskBuildRecordVO.java} (74%)
rename eladmin-system/src/main/java/me/zhengjie/{ => modules/taskrecord}/task/MergeRecordFilesTask.java (99%)
rename eladmin-system/src/main/java/me/zhengjie/{ => modules/taskrecord}/task/ProduceLocalFileTask.java (99%)
rename eladmin-system/src/main/java/me/zhengjie/{ => modules/taskrecord}/task/SendRecordTask.java (82%)
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/taskrecord/task/dto/SendRecordDTO.java
create mode 100644 eladmin-system/src/test/java/me/zhengjie/LocalSpatial4JTest.java
diff --git a/eladmin-system/pom.xml b/eladmin-system/pom.xml
index 6ccc148..3c0ea45 100644
--- a/eladmin-system/pom.xml
+++ b/eladmin-system/pom.xml
@@ -86,6 +86,15 @@
oshi-core
5.0.1
+
+
+
+
+ com.spatial4j
+ spatial4j
+ 0.5
+
+
diff --git a/eladmin-system/src/main/java/me/zhengjie/common/CommonResponse.java b/eladmin-system/src/main/java/me/zhengjie/common/http/CommonResponse.java
similarity index 98%
rename from eladmin-system/src/main/java/me/zhengjie/common/CommonResponse.java
rename to eladmin-system/src/main/java/me/zhengjie/common/http/CommonResponse.java
index e307759..85a37eb 100644
--- a/eladmin-system/src/main/java/me/zhengjie/common/CommonResponse.java
+++ b/eladmin-system/src/main/java/me/zhengjie/common/http/CommonResponse.java
@@ -1,4 +1,4 @@
-package me.zhengjie.common;
+package me.zhengjie.common.http;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
diff --git a/eladmin-system/src/main/java/me/zhengjie/common/ResponseCode.java b/eladmin-system/src/main/java/me/zhengjie/common/http/ResponseCode.java
similarity index 97%
rename from eladmin-system/src/main/java/me/zhengjie/common/ResponseCode.java
rename to eladmin-system/src/main/java/me/zhengjie/common/http/ResponseCode.java
index 7c50eb6..f5507b9 100644
--- a/eladmin-system/src/main/java/me/zhengjie/common/ResponseCode.java
+++ b/eladmin-system/src/main/java/me/zhengjie/common/http/ResponseCode.java
@@ -1,4 +1,4 @@
-package me.zhengjie.common;
+package me.zhengjie.common.http;
/**
* FileName: ResponseCode
diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/taskrecord/rest/dto/PushDBJsonContent.java b/eladmin-system/src/main/java/me/zhengjie/common/json/PushDBJsonContent.java
similarity index 85%
rename from eladmin-system/src/main/java/me/zhengjie/modules/taskrecord/rest/dto/PushDBJsonContent.java
rename to eladmin-system/src/main/java/me/zhengjie/common/json/PushDBJsonContent.java
index 1652f16..dd5d9e0 100644
--- a/eladmin-system/src/main/java/me/zhengjie/modules/taskrecord/rest/dto/PushDBJsonContent.java
+++ b/eladmin-system/src/main/java/me/zhengjie/common/json/PushDBJsonContent.java
@@ -1,4 +1,4 @@
-package me.zhengjie.modules.taskrecord.rest.dto;
+package me.zhengjie.common.json;
import lombok.AllArgsConstructor;
import lombok.Data;
@@ -7,7 +7,7 @@ import lombok.NoArgsConstructor;
import java.util.List;
/**
- * 用于向下游进行推送的Json转换实体
+ * 用于向下游进行推送的Json转换实体 - 用于外呼端通用
*/
@Data
@AllArgsConstructor
diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/abmessage/rest/AbMessageController.java b/eladmin-system/src/main/java/me/zhengjie/modules/abmessage/rest/AbMessageController.java
index 2d708ba..7a58581 100644
--- a/eladmin-system/src/main/java/me/zhengjie/modules/abmessage/rest/AbMessageController.java
+++ b/eladmin-system/src/main/java/me/zhengjie/modules/abmessage/rest/AbMessageController.java
@@ -16,8 +16,8 @@
package me.zhengjie.modules.abmessage.rest;
import me.zhengjie.annotation.Log;
-import me.zhengjie.common.CommonResponse;
-import me.zhengjie.common.ResponseCode;
+import me.zhengjie.common.http.CommonResponse;
+import me.zhengjie.common.http.ResponseCode;
import me.zhengjie.modules.abmessage.domain.AbMessage;
import me.zhengjie.modules.abmessage.service.AbMessageService;
import me.zhengjie.modules.abmessage.service.dto.AbMessageDto;
diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/domain/BuildRecord.java b/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/domain/BuildRecord.java
index aaefb75..742f984 100644
--- a/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/domain/BuildRecord.java
+++ b/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/domain/BuildRecord.java
@@ -39,8 +39,8 @@ public class BuildRecord implements Serializable {
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
@ApiModelProperty(value = "id")
- private Integer id;
+ private Integer id;
@Column(name = "gmt_create")
@ApiModelProperty(value = "创建时间")
private Timestamp gmtCreate;
@@ -89,6 +89,10 @@ public class BuildRecord implements Serializable {
@ApiModelProperty(value = "上次发送总记录数")
private Long sendTotal;
+ @Column(name = "task_build_id")
+ @ApiModelProperty(value = "活动任务ID")
+ private Long taskBuildId;
+
public void copy(BuildRecord source){
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
}
diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/BuildRecordController.java b/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/BuildRecordController.java
index 02a89c0..904e5b5 100644
--- a/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/BuildRecordController.java
+++ b/eladmin-system/src/main/java/me/zhengjie/modules/buildrecord/rest/BuildRecordController.java
@@ -15,19 +15,33 @@
*/
package me.zhengjie.modules.buildrecord.rest;
+import cn.hutool.core.bean.BeanUtil;
+import me.zhengjie.annotation.AnonymousAccess;
import me.zhengjie.annotation.Log;
+import me.zhengjie.common.http.CommonResponse;
+import me.zhengjie.common.http.ResponseCode;
import me.zhengjie.modules.buildrecord.domain.BuildRecord;
+import me.zhengjie.modules.buildrecord.rest.vo.BuildRecordBuildVO;
+import me.zhengjie.modules.buildrecord.rest.vo.BuildRecordSendVO;
import me.zhengjie.modules.buildrecord.service.BuildRecordService;
+import me.zhengjie.modules.buildrecord.service.dto.BuildRecordDto;
import me.zhengjie.modules.buildrecord.service.dto.BuildRecordQueryCriteria;
+import me.zhengjie.modules.buildrecord.task.ProduceBigDataTask;
+import me.zhengjie.modules.buildrecord.task.SendBigDataTask;
+import me.zhengjie.modules.buildrecord.task.dto.SendBigDataDTO;
+import me.zhengjie.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.*;
import java.io.IOException;
+import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
@@ -43,6 +57,11 @@ public class BuildRecordController {
private final BuildRecordService buildRecordService;
+ @Autowired
+ private ProduceBigDataTask produceBigDataTask;
+ @Autowired
+ private SendBigDataTask sendBigDataTask;
+
@Log("导出数据")
@ApiOperation("导出数据")
@GetMapping(value = "/download")
@@ -84,4 +103,70 @@ public class BuildRecordController {
buildRecordService.deleteAll(ids);
return new ResponseEntity<>(HttpStatus.OK);
}
+
+
+ // ========================= 自定义的大数据平台相关的接口 start =========================
+ /**
+ * 新建课包任务
+ *
+ * @param taskRecordBuildVO 新建任务对应的VO映射
+ * @return 返回建立任务完成的状态
+ */
+ @PostMapping("/buildTask")
+ @Log("新建课包任务")
+ @ApiOperation("新建课包任务")
+// @PreAuthorize("@el.check('taskRecord:add')")
+ @AnonymousAccess // fixme 需要测试完成后进行去除和使用上面的权限注解
+ public ResponseEntity