list, HttpServletResponse response);
}
diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusinessReportInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusinessReportInfoService.java
index cc38194..5de037f 100644
--- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusinessReportInfoService.java
+++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusinessReportInfoService.java
@@ -2,8 +2,12 @@
import com.baomidou.mybatisplus.extension.service.IService;
+import com.casic.missiles.modular.system.dto.BusinessReportInfoRequest;
import com.casic.missiles.modular.system.model.BusinessReportInfo;
+import java.util.HashMap;
+import java.util.List;
+
/**
*
* 上报信息记录 服务类
@@ -14,4 +18,9 @@
*/
public interface IBusinessReportInfoService extends IService {
+
+ List> statisticsByTime(BusinessReportInfoRequest businessReportInfoRequest);
+
+ List> statisticsByPlate(BusinessReportInfoRequest businessReportInfoRequest);
+
}
diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusinessConnectTestrecordServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusinessConnectTestrecordServiceImpl.java
index 3cb69eb..0a3a448 100644
--- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusinessConnectTestrecordServiceImpl.java
+++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusinessConnectTestrecordServiceImpl.java
@@ -1,21 +1,28 @@
package com.casic.missiles.modular.system.service.impl;
+import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.casic.missiles.modular.system.config.PoolConfig;
import com.casic.missiles.modular.system.dao.BusinessConnectTestrecordMapper;
+import com.casic.missiles.modular.system.dto.BusinessConnectRecordDTO;
import com.casic.missiles.modular.system.model.BusinessConnectTestrecord;
import com.casic.missiles.modular.system.service.IBusinessConnectTestrecordService;
import com.casic.missiles.modular.system.ssl.LinkTestUtil;
import com.casic.missiles.modular.system.util.ExcelUtils;
+import com.ibiz.excel.picture.support.model.CellStyle;
+import com.ibiz.excel.picture.support.model.Sheet;
+import com.ibiz.excel.picture.support.model.Workbook;
+import com.ibiz.excel.picture.support.util.WebUtil;
import org.apache.commons.collections4.ListUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
+import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -50,20 +57,31 @@
public boolean saveBusinessConnectTestRecord(String url) {
String result = LinkTestUtil.testUrl(url);
- return this.save(new BusinessConnectTestrecord(result.split(",")));
+ return this.save(new BusinessConnectTestrecord(result.split(","), ""));
}
@Override
- public boolean saveBatchBusinessConnectTestRecord(List urls) {
- List> listList = ListUtils.partition(urls, 50);
+ public boolean saveBatchBusinessConnectTestRecord(List> urls) {
+ //小于50个测试地址直接返回,大于50用线程返回
+ if (ObjectUtil.isNotEmpty(urls) && urls.size() <= 50) {
+ List testrecordList = new ArrayList<>();
+ urls.forEach(s -> {
+ String result = LinkTestUtil.testUrl(s.get("url") + "");
+ testrecordList.add(new BusinessConnectTestrecord(result.split(","), s.get("plate") + ""));
+ });
+ return this.saveBatch(testrecordList);
+ }
+ List>> listList = ListUtils.partition(urls, 50);
listList.forEach(list -> {
threadPoolTaskExecutor.taskExecutor().execute(new Runnable() {
@Override
public void run() {
+ List testrecordList = new ArrayList<>();
list.forEach(s -> {
- String result = LinkTestUtil.testUrl(s);
- save(new BusinessConnectTestrecord(result.split(",")));
+ String result = LinkTestUtil.testUrl(s.get("url") + "");
+ testrecordList.add(new BusinessConnectTestrecord(result.split(","), s.get("plate") + ""));
});
+ saveBatch(testrecordList);
}
});
});
@@ -71,21 +89,52 @@
}
@Override
- public List parseSourceFile(MultipartFile file) {
- List stringList = new ArrayList<>();
+ public List> parseSourceFile(MultipartFile file) {
+ List> stringList = new ArrayList<>();
try {
-
- File Filefile = new File(downloadPath + file.getOriginalFilename());
+ File Filefile = new File(downloadPath + System.currentTimeMillis() + file.getOriginalFilename());
+ if (!Filefile.exists()) {
+ Filefile.mkdirs();
+ }
file.transferTo(Filefile);
FileInputStream inputStream = new FileInputStream(Filefile);
List> list = ExcelUtils.getListByExcel(inputStream, file.getOriginalFilename());
for (int i = 1; i < list.size(); i++) {
+ HashMap map = new HashMap<>();
List