From 38af78e0c9ae46af4616fad7c8a9e2bc5ae2cd1f Mon Sep 17 00:00:00 2001 From: maochaoying <925670706@qq.com> Date: Wed, 28 Jun 2023 17:00:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B9=E6=8D=AEtaskid=E6=9F=A5=E8=AF=A2excel?= =?UTF-8?q?=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/NuclearCoreConfigController.java | 36 +++++++++++++++++++ .../nuclear/controller/UploadController.java | 2 +- .../iflytop/nuclear/model/NuclearCoreConfig.java | 2 +- .../nuclear/service/NuclearCoreConfigService.java | 4 +++ .../nuclear/service/NuclearCoreService.java | 4 +++ .../com/iflytop/nuclear/service/UploadService.java | 2 +- .../service/impl/NuclearCoreConfigServiceImpl.java | 12 +++++++ .../service/impl/NuclearCoreServiceImpl.java | 4 +++ .../nuclear/service/impl/UploadServiceImpl.java | 40 ++++++++++++++++++++-- 9 files changed, 100 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/iflytop/nuclear/controller/NuclearCoreConfigController.java diff --git a/src/main/java/com/iflytop/nuclear/controller/NuclearCoreConfigController.java b/src/main/java/com/iflytop/nuclear/controller/NuclearCoreConfigController.java new file mode 100644 index 0000000..501eb12 --- /dev/null +++ b/src/main/java/com/iflytop/nuclear/controller/NuclearCoreConfigController.java @@ -0,0 +1,36 @@ +package com.iflytop.nuclear.controller; + +import com.alibaba.fastjson2.JSONObject; +import com.iflytop.nuclear.model.NuclearCore; +import com.iflytop.nuclear.model.NuclearCoreConfig; +import com.iflytop.nuclear.service.NuclearCoreConfigService; +import com.iflytop.nuclear.service.NuclearCoreService; +import com.iflytop.nuclear.utils.ResponseData; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author cool + * @date 2023/6/28 16:17 + */ +@Slf4j +@RestController +@CrossOrigin +@RequestMapping("/nuclear") +public class NuclearCoreConfigController { + + @Autowired + NuclearCoreConfigService nuclearCoreConfigService; + + @GetMapping("/config/{id}") + public ResponseData getNuclearCoreConfig(@PathVariable(name = "id") String taskId) { + List nuclearCoreConfigList = nuclearCoreConfigService.getNuclearCoreConfigByTaskid(taskId); + JSONObject res = new JSONObject(); + res.put("list", nuclearCoreConfigList); + return ResponseData.success(res); + } + +} diff --git a/src/main/java/com/iflytop/nuclear/controller/UploadController.java b/src/main/java/com/iflytop/nuclear/controller/UploadController.java index c013534..ea31da1 100644 --- a/src/main/java/com/iflytop/nuclear/controller/UploadController.java +++ b/src/main/java/com/iflytop/nuclear/controller/UploadController.java @@ -39,7 +39,7 @@ public class UploadController { if (!isValid) { return ResponseData.fail("上传文件内容未按照标准版式排版"); } - Long saveId = uploadService.saveFileContentToDB(file); + boolean isSuccess = uploadService.saveFileContentToDB(file); // 获取文件原本的名字 String originName = file.getOriginalFilename(); // 判断文件是否是pdf文件 diff --git a/src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java b/src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java index 482b7aa..29a5db6 100644 --- a/src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java +++ b/src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java @@ -29,7 +29,7 @@ public class NuclearCoreConfig { private String serialNumber; @TableField("second_sign") private String secondSign; - private Double percent; + private String percent; @TableField("result_serial") private String resultSerial; @TableField("result_img") diff --git a/src/main/java/com/iflytop/nuclear/service/NuclearCoreConfigService.java b/src/main/java/com/iflytop/nuclear/service/NuclearCoreConfigService.java index a65ecf2..dd816d1 100644 --- a/src/main/java/com/iflytop/nuclear/service/NuclearCoreConfigService.java +++ b/src/main/java/com/iflytop/nuclear/service/NuclearCoreConfigService.java @@ -4,10 +4,14 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.iflytop.nuclear.model.NuclearCoreConfig; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + /** * @author cool * @date 2023/6/28 13:58 */ @Transactional public interface NuclearCoreConfigService extends IService { + + List getNuclearCoreConfigByTaskid(String taskId); } diff --git a/src/main/java/com/iflytop/nuclear/service/NuclearCoreService.java b/src/main/java/com/iflytop/nuclear/service/NuclearCoreService.java index 8e3c1af..1400885 100644 --- a/src/main/java/com/iflytop/nuclear/service/NuclearCoreService.java +++ b/src/main/java/com/iflytop/nuclear/service/NuclearCoreService.java @@ -2,12 +2,16 @@ package com.iflytop.nuclear.service; import com.baomidou.mybatisplus.extension.service.IService; import com.iflytop.nuclear.model.NuclearCore; +import com.iflytop.nuclear.model.NuclearCoreConfig; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + /** * @author cool * @date 2023/6/28 13:58 */ @Transactional public interface NuclearCoreService extends IService { + } diff --git a/src/main/java/com/iflytop/nuclear/service/UploadService.java b/src/main/java/com/iflytop/nuclear/service/UploadService.java index 5405405..55333f2 100644 --- a/src/main/java/com/iflytop/nuclear/service/UploadService.java +++ b/src/main/java/com/iflytop/nuclear/service/UploadService.java @@ -13,5 +13,5 @@ import java.io.IOException; public interface UploadService { boolean verifyFileFormat(MultipartFile file) throws IOException; - Long saveFileContentToDB(MultipartFile file) throws IOException; + boolean saveFileContentToDB(MultipartFile file) throws IOException; } diff --git a/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreConfigServiceImpl.java b/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreConfigServiceImpl.java index d8020b7..31e7c1c 100644 --- a/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreConfigServiceImpl.java +++ b/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreConfigServiceImpl.java @@ -1,15 +1,27 @@ package com.iflytop.nuclear.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.iflytop.nuclear.mapper.NuclearCoreConfigMapper; +import com.iflytop.nuclear.model.Account; +import com.iflytop.nuclear.model.NuclearCore; import com.iflytop.nuclear.model.NuclearCoreConfig; import com.iflytop.nuclear.service.NuclearCoreConfigService; import org.springframework.stereotype.Service; +import java.util.List; + /** * @author cool * @date 2023/6/28 14:03 */ @Service public class NuclearCoreConfigServiceImpl extends ServiceImpl implements NuclearCoreConfigService { + @Override + public List getNuclearCoreConfigByTaskid(String taskId) { + QueryWrapper nuclearCoreConfigQueryWrapper = new QueryWrapper<>(); + nuclearCoreConfigQueryWrapper.eq("task_id", taskId); + List list = this.list(nuclearCoreConfigQueryWrapper); + return list; + } } diff --git a/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreServiceImpl.java b/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreServiceImpl.java index 3725f4f..484a3c8 100644 --- a/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreServiceImpl.java +++ b/src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreServiceImpl.java @@ -3,13 +3,17 @@ package com.iflytop.nuclear.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.iflytop.nuclear.mapper.NuclearCoreMapper; import com.iflytop.nuclear.model.NuclearCore; +import com.iflytop.nuclear.model.NuclearCoreConfig; import com.iflytop.nuclear.service.NuclearCoreService; import org.springframework.stereotype.Service; +import java.util.List; + /** * @author cool * @date 2023/6/28 14:03 */ @Service public class NuclearCoreServiceImpl extends ServiceImpl implements NuclearCoreService { + } diff --git a/src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java b/src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java index f37cf8f..b2910f3 100644 --- a/src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java +++ b/src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java @@ -1,11 +1,15 @@ package com.iflytop.nuclear.service.impl; +import com.iflytop.nuclear.model.Account; +import com.iflytop.nuclear.model.NuclearCoreConfig; +import com.iflytop.nuclear.service.NuclearCoreConfigService; import com.iflytop.nuclear.service.UploadService; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -20,6 +24,10 @@ import java.util.List; */ @Service public class UploadServiceImpl implements UploadService { + + @Autowired + NuclearCoreConfigService nuclearCoreConfigService; + @Override public boolean verifyFileFormat(MultipartFile file) throws IOException { InputStream inputStream = file.getInputStream(); @@ -41,7 +49,7 @@ public class UploadServiceImpl implements UploadService { } @Override - public Long saveFileContentToDB(MultipartFile file) throws IOException { + public boolean saveFileContentToDB(MultipartFile file) throws IOException { InputStream inputStream = file.getInputStream(); Workbook wb = new XSSFWorkbook(inputStream); Sheet sheet = wb.getSheetAt(0); @@ -68,7 +76,33 @@ public class UploadServiceImpl implements UploadService { } System.out.println(result); // 对result进行遍历组合成每条数据 插入数据库中 - - return null; + List nuclearCoreConfigArrayList = new ArrayList(); + for(int i = 0; i < result.size(); i++) { + int startIndex = i + 1; + ArrayList rowData = result.get(i); + for (int j = 0; j < 13; j++) { + ArrayList line1 = (ArrayList) rowData.get(0); + ArrayList line2 = (ArrayList) rowData.get(1); + ArrayList line3 = (ArrayList) rowData.get(2); + String s1 = (String) line1.get(j); + String s2 = (String) line2.get(j); + String s3 = (String) line3.get(j); + String serialNumber = startIndex + "-" + (j + 1) ; + // 创建存储数据库对象list + // 临时taskid + Long taskid = 1L; + NuclearCoreConfig nuclearCoreConfig = NuclearCoreConfig.builder() + .percent(s2) + .firstSign(s1) + .secondSign(s3) + .taskId(taskid) + .serialNumber(serialNumber) + .build(); + nuclearCoreConfigArrayList.add(nuclearCoreConfig); + } + } + // 批量插入 如果该taskid 存在数据 需要删除 在前端进行判断 + boolean b = nuclearCoreConfigService.saveBatch(nuclearCoreConfigArrayList); + return b; } }