Browse Source

excel 接口

main
maochaoying 2 years ago
parent
commit
5674646820
  1. 28
      src/main/java/com/iflytop/nuclear/controller/TaskController.java
  2. 11
      src/main/java/com/iflytop/nuclear/controller/UploadController.java
  3. 2
      src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java
  4. 2
      src/main/java/com/iflytop/nuclear/service/UploadService.java
  5. 14
      src/main/java/com/iflytop/nuclear/service/impl/TaskServiceImpl.java
  6. 5
      src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java
  7. 2
      src/main/java/com/iflytop/nuclear/vo/TaskVO.java
  8. BIN
      uploadfiles/xlsx/20230630/堆芯模版.xlsx

28
src/main/java/com/iflytop/nuclear/controller/TaskController.java

@ -1,7 +1,11 @@
package com.iflytop.nuclear.controller;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.iflytop.nuclear.model.Account;
import com.iflytop.nuclear.model.NuclearCoreConfig;
import com.iflytop.nuclear.model.Task;
import com.iflytop.nuclear.service.NuclearCoreConfigService;
import com.iflytop.nuclear.service.TaskService;
import com.iflytop.nuclear.utils.JwtTokenUtils;
import com.iflytop.nuclear.utils.ResponseData;
@ -30,6 +34,8 @@ public class TaskController {
@Autowired
TaskService taskService;
@Autowired
NuclearCoreConfigService nuclearCoreConfigService;
@Autowired
HttpServletRequest request;
@PostMapping("/create")
@ -42,7 +48,7 @@ public class TaskController {
return ResponseData.success(jsonObject);
}
@GetMapping("list")
@GetMapping("/list")
public ResponseData getTaskListByUserId() {
String token = request.getHeader("Authorization");
if (token.length() > 0){
@ -56,4 +62,24 @@ public class TaskController {
}
return ResponseData.fail("用户登陆信息错误");
}
@PostMapping("/delete/{id}")
public ResponseData deleteTask(@PathVariable(name = "id") int id) {
boolean b = taskService.removeById(id);
JSONObject jo = new JSONObject();
jo.put("result", b);
return ResponseData.success(jo);
}
@PostMapping("/delete/excel/{id}")
public ResponseData deleteTaskExcel(@PathVariable(name = "id") int id) {
QueryWrapper<NuclearCoreConfig> nuclearCoreConfigQueryWrapper = new QueryWrapper<>();
nuclearCoreConfigQueryWrapper.eq("task_id", id);
boolean remove = nuclearCoreConfigService.remove(nuclearCoreConfigQueryWrapper);
JSONObject jo = new JSONObject();
jo.put("result", remove);
return ResponseData.success(jo);
}
}

11
src/main/java/com/iflytop/nuclear/controller/UploadController.java

@ -7,10 +7,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
@ -34,14 +31,14 @@ public class UploadController {
@Autowired
UploadService uploadService;
@PostMapping("/upload")
public ResponseData uploadToLocal(MultipartFile file) throws IOException {
@PostMapping("/upload/{id}")
public ResponseData uploadToLocal(MultipartFile file, @PathVariable(name = "id") int taskId) throws IOException {
// 对当前文件中内容格式进行校验
boolean isValid = uploadService.verifyFileFormat(file);
if (!isValid) {
return ResponseData.fail("上传文件内容未按照标准版式排版");
}
boolean isSuccess = uploadService.saveFileContentToDB(file);
boolean isSuccess = uploadService.saveFileContentToDB(file, taskId);
// 获取文件原本的名字
String originName = file.getOriginalFilename();
// 判断文件是否是pdf文件

2
src/main/java/com/iflytop/nuclear/model/NuclearCoreConfig.java

@ -22,7 +22,7 @@ public class NuclearCoreConfig {
@TableId
private Long id;
@TableField("task_id")
private Long taskId;
private int taskId;
@TableField("first_sign")
private String firstSign;
@TableField("serial_number")

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;
boolean saveFileContentToDB(MultipartFile file) throws IOException;
boolean saveFileContentToDB(MultipartFile file, int taskId) throws IOException;
}

14
src/main/java/com/iflytop/nuclear/service/impl/TaskServiceImpl.java

@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.iflytop.nuclear.mapper.TaskMapper;
import com.iflytop.nuclear.model.Account;
import com.iflytop.nuclear.model.NuclearCoreConfig;
import com.iflytop.nuclear.model.Task;
import com.iflytop.nuclear.service.NuclearCoreConfigService;
import com.iflytop.nuclear.service.TaskService;
import com.iflytop.nuclear.vo.TaskVO;
import org.springframework.beans.factory.annotation.Autowired;
@ -20,6 +22,9 @@ import java.util.List;
@Service
public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
@Autowired
NuclearCoreConfigService nuclearCoreConfigService;
@Override
public List<TaskVO> getTaskInfoByUsername(String username, String user_role) {
List<Task> list = null;
@ -32,6 +37,14 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
}
List<TaskVO> result= new ArrayList<>();
for (Task task: list) {
// 查询该task上传过excel吗
QueryWrapper<NuclearCoreConfig> nuclearCoreConfigQueryWrapper = new QueryWrapper<>();
nuclearCoreConfigQueryWrapper.eq("task_id", task.getId());
List<NuclearCoreConfig> nuclearCoreConfigList = nuclearCoreConfigService.list(nuclearCoreConfigQueryWrapper);
boolean canUpload = true;
if (nuclearCoreConfigList.size() > 0) {
canUpload = false;
}
TaskVO taskVO = TaskVO.builder()
.taskName(task.getTaskName())
.checkOrder(task.getCheckOrder())
@ -42,6 +55,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
.operatorName(task.getOperatorId())
.startTime(task.getStartTime())
.endTime(task.getEndTime())
.canUpload(canUpload)
.build();
result.add(taskVO);
}

5
src/main/java/com/iflytop/nuclear/service/impl/UploadServiceImpl.java

@ -49,7 +49,7 @@ public class UploadServiceImpl implements UploadService {
}
@Override
public boolean saveFileContentToDB(MultipartFile file) throws IOException {
public boolean saveFileContentToDB(MultipartFile file, int taskId) throws IOException {
InputStream inputStream = file.getInputStream();
Workbook wb = new XSSFWorkbook(inputStream);
Sheet sheet = wb.getSheetAt(0);
@ -90,12 +90,11 @@ public class UploadServiceImpl implements UploadService {
String serialNumber = startIndex + "-" + (j + 1) ;
// 创建存储数据库对象list
// 临时taskid
Long taskid = 1L;
NuclearCoreConfig nuclearCoreConfig = NuclearCoreConfig.builder()
.percent(s2)
.firstSign(s1)
.secondSign(s3)
.taskId(taskid)
.taskId(taskId)
.serialNumber(serialNumber)
.build();
nuclearCoreConfigArrayList.add(nuclearCoreConfig);

2
src/main/java/com/iflytop/nuclear/vo/TaskVO.java

@ -35,5 +35,7 @@ public class TaskVO {
private Date startTime;
private boolean canUpload;
private Date endTime;
}

BIN
uploadfiles/xlsx/20230630/堆芯模版.xlsx

Loading…
Cancel
Save