0.3.114 • Published 1 year ago

@zecaishao/kunchi-table v0.3.114

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

以下是一份示范代码,基于 Spring Boot,完成了 Excel 文件上传、解析、查询、排序、导出功能。

@RestController
@RequestMapping(\"/orders\")
public class OrderController {

@Autowired
private ProductService productService;

@PostMapping(\"/upload\")
public ResponseEntity uploadFile(@RequestParam(\"file\") MultipartFile file) throws IOException {
// 读取上传的 Excel 文件
InputStream inputStream = file.getInputStream();
Workbook workbook = WorkbookFactory.create(inputStream);

// 解析文件中的订单号
Set orderIds = new HashSet<>();
Sheet sheet = workbook.getSheetAt(0);
for (Row row : sheet) {
Cell orderIdCell = row.getCell(0);
if (orderIdCell != null && orderIdCell.getCellType() == CellType.STRING) {
orderIds.add(orderIdCell.getStringCellValue());
}
}

// 根据订单号查询商品信息,并按库存数量降序排列
List products = productService.findByOrderIds(orderIds);
Collections.sort(products, Comparator.comparing(Product::getStock).reversed());

// 导出查询结果到 Excel 文件中
Workbook resultWorkbook = new XSSFWorkbook();
Sheet resultSheet = resultWorkbook.createSheet(\"Products\");
int rowIndex = 0;
for (Product product : products) {
Row row = resultSheet.createRow(rowIndex++);
row.createCell(0).setCellValue(product.getName());
row.createCell(1).setCellValue(product.getStock());
}

// 将导出结果保存至文件中
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
resultWorkbook.write(outputStream);

LocalDate date = LocalDate.now();
String filename = String.format(\"ProductStock-%s.xlsx\", date.toString());
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
headers.setContentDispositionFormData(\"attachment\", filename);
return new ResponseEntity<> (outputStream.toString(), headers, HttpStatus.OK);
}

}

这段代码实现了在 /orders/upload 路径下接收一个名为 file 的文件,并完成对这个文件的解析、查询、排序、导出操作。最终导出的 Excel 文件以附件形式发送给管理员。

开发者需要根据具体业务需求,对代码中的 ProductService 做相应的调整,以保证获取商品信息的正确性。

0.3.114

1 year ago

0.3.113

1 year ago

0.3.112

1 year ago

0.3.111

1 year ago

0.3.110

1 year ago

0.3.109

1 year ago

0.3.108

1 year ago

0.3.107

1 year ago

0.3.106

1 year ago

0.3.105

1 year ago

0.3.104

1 year ago

0.3.103

1 year ago

0.3.102

1 year ago

0.3.101

1 year ago

0.3.100

1 year ago

0.3.99

1 year ago

0.3.98

1 year ago

0.3.97

1 year ago

0.3.96

1 year ago

0.3.95

1 year ago

0.3.94

1 year ago

0.3.93

1 year ago

0.3.92

1 year ago

0.3.91

1 year ago

0.3.90

1 year ago

0.3.89

1 year ago

0.3.88

1 year ago

0.3.87

1 year ago

0.3.86

1 year ago

0.3.85

1 year ago

0.3.84

1 year ago

0.3.83

1 year ago

0.3.82

1 year ago

0.3.81

1 year ago

0.3.80

1 year ago

0.3.79

1 year ago

0.3.78

1 year ago

0.3.77

1 year ago

0.3.76

1 year ago

0.3.75

1 year ago

0.3.74

1 year ago

0.3.73

1 year ago

0.3.72

1 year ago

0.3.71

1 year ago

0.3.70

1 year ago

0.3.68

1 year ago

0.3.67

1 year ago

0.3.66

1 year ago

0.3.65

1 year ago

0.3.64

1 year ago

0.3.63

1 year ago

0.3.62

1 year ago

0.3.61

1 year ago

0.3.60

1 year ago

0.3.59

1 year ago

0.3.58

1 year ago

0.3.57

1 year ago

0.3.56

1 year ago

0.3.55

1 year ago

0.3.54

1 year ago

0.3.53

1 year ago

0.3.52

1 year ago

0.3.51

1 year ago

0.3.50

1 year ago

0.3.49

1 year ago

0.3.48

1 year ago

0.3.47

1 year ago

0.3.46

1 year ago

0.3.45

1 year ago

0.3.44

1 year ago

0.3.43

1 year ago

0.3.42

1 year ago

0.3.41

1 year ago

0.3.40

1 year ago

0.3.39

1 year ago

0.3.38

1 year ago

0.3.37

1 year ago

0.3.36

1 year ago

0.3.35

1 year ago

0.3.34

1 year ago

0.3.33

1 year ago

0.3.32

1 year ago

0.3.31

1 year ago

0.3.30

1 year ago

0.3.29

1 year ago

0.3.28

1 year ago

0.3.27

1 year ago

0.3.26

1 year ago

0.3.25

1 year ago

0.3.24

1 year ago

0.3.23

1 year ago

0.3.22

1 year ago

0.3.21

1 year ago

0.3.20

1 year ago

0.3.19

1 year ago

0.3.18

1 year ago

0.3.17

1 year ago

0.3.16

1 year ago

0.3.15

1 year ago

0.3.14

1 year ago

0.3.13

1 year ago

0.3.12

1 year ago

0.3.11

1 year ago

0.3.10

1 year ago

0.3.9

1 year ago

0.3.8

1 year ago

0.3.7

1 year ago

0.3.6

1 year ago

0.3.5

1 year ago

0.3.4

1 year ago

0.3.3

1 year ago

0.3.2

1 year ago

0.3.1

1 year ago

0.3.0

1 year ago

0.2.9

1 year ago

0.2.8

1 year ago

0.2.7

1 year ago

0.2.6

1 year ago

0.2.5

1 year ago

0.2.4

1 year ago

0.2.3

1 year ago

0.2.2

1 year ago