Browse Source

根据taskid查询excel信息

main
maochaoying 2 years ago
parent
commit
38af78e0c9
  1. 36
      src/main/java/com/iflytop/nuclear/controller/NuclearCoreConfigController.java
  2. 2
      src/main/java/com/iflytop/nuclear/controller/UploadController.java
  3. 2
      src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java
  4. 4
      src/main/java/com/iflytop/nuclear/service/NuclearCoreConfigService.java
  5. 4
      src/main/java/com/iflytop/nuclear/service/NuclearCoreService.java
  6. 2
      src/main/java/com/iflytop/nuclear/service/UploadService.java
  7. 12
      src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreConfigServiceImpl.java
  8. 4
      src/main/java/com/iflytop/nuclear/service/impl/NuclearCoreServiceImpl.java
  9. 40
      src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java

36
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<NuclearCoreConfig> nuclearCoreConfigList = nuclearCoreConfigService.getNuclearCoreConfigByTaskid(taskId);
JSONObject res = new JSONObject();
res.put("list", nuclearCoreConfigList);
return ResponseData.success(res);
}
}

2
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文件

2
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")

4
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<NuclearCoreConfig> {
List<NuclearCoreConfig> getNuclearCoreConfigByTaskid(String taskId);
}

4
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<NuclearCore> {
}

2
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;
}

12
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<NuclearCoreConfigMapper, NuclearCoreConfig> implements NuclearCoreConfigService {
@Override
public List<NuclearCoreConfig> getNuclearCoreConfigByTaskid(String taskId) {
QueryWrapper<NuclearCoreConfig> nuclearCoreConfigQueryWrapper = new QueryWrapper<>();
nuclearCoreConfigQueryWrapper.eq("task_id", taskId);
List<NuclearCoreConfig> list = this.list(nuclearCoreConfigQueryWrapper);
return list;
}
}

4
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<NuclearCoreMapper, NuclearCore> implements NuclearCoreService {
}

40
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<NuclearCoreConfig> nuclearCoreConfigArrayList = new ArrayList<NuclearCoreConfig>();
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;
}
}
Loading…
Cancel
Save