From f7f3c893514f1408305c1dfb9be64ed95d5f695f Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期五, 17 七月 2020 16:58:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/web/FileController.java | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/common/web/FileController.java b/src/main/java/com/zy/common/web/FileController.java index d7b9c83..37a78dd 100644 --- a/src/main/java/com/zy/common/web/FileController.java +++ b/src/main/java/com/zy/common/web/FileController.java @@ -1,25 +1,39 @@ package com.zy.common.web; import com.alibaba.excel.EasyExcel; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.common.BaseRes; +import com.core.common.Cools; import com.core.common.R; -import com.zy.common.utils.excel.ExcelUtils; +import com.zy.asrs.entity.MatCode; +import com.zy.asrs.service.MatCodeService; +import com.zy.common.config.AdminInterceptor; +import com.zy.common.utils.BarcodeUtils; +import com.zy.common.utils.QrCode; import com.zy.common.utils.excel.matcode.MatCodeExcel; import com.zy.common.utils.excel.matcode.MatCodeExcelListener; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.imageio.ImageIO; import javax.servlet.http.HttpServletResponse; +import java.awt.image.BufferedImage; import java.io.IOException; import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; /** * todo * Created by vincent on 2019-11-25 */ @RestController -@RequestMapping("excel/") +@RequestMapping("file/") public class FileController { + @Autowired + private MatCodeService matCodeService; /** * 鏂囦欢涓婁紶 */ @@ -35,13 +49,49 @@ */ @GetMapping("download") public void download(HttpServletResponse response) throws IOException { + List<MatCode> list = matCodeService.selectList(new EntityWrapper<>()); + + List<MatCodeExcel> excels = new ArrayList<>(); + for (MatCode matCode : list) { + MatCodeExcel excel = new MatCodeExcel(); + excel.setMatNo(matCode.getMatNo()); + excel.setBarcode(matCode.getBarcode()); + excel.setMatName(matCode.getMatName()); + excel.setStr1(matCode.getStr1()); + excels.add(excel); + } // 杩欓噷娉ㄦ剰 鏈夊悓瀛﹀弽搴斾娇鐢╯wagger 浼氬鑷村悇绉嶉棶棰橈紝璇风洿鎺ョ敤娴忚鍣ㄦ垨鑰呯敤postman response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("utf-8"); // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 String fileName = URLEncoder.encode("娴嬭瘯", "UTF-8"); response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); - EasyExcel.write(response.getOutputStream(), MatCodeExcel.class).sheet("妯℃澘").doWrite(ExcelUtils.data()); + EasyExcel.write(response.getOutputStream(), MatCodeExcel.class).sheet("妯℃澘").doWrite(excels); + } + + @RequestMapping(value = "/barcode/qrcode/auth") +// @ManagerAuth(memo = "鐗╂枡缂栫爜鏉″舰鐮佽幏鍙�(type:1(鏉″舰鐮�);2(浜岀淮鐮�)") + public R matCodeBarcode(@RequestParam(defaultValue = "1") Integer type + , @RequestParam String param + , @RequestParam(required = false) Integer width + , @RequestParam(required = false) Integer height + , HttpServletResponse response) throws Exception { + AdminInterceptor.cors(response); + if (Cools.isEmpty(param)){ + return R.parse(BaseRes.EMPTY); + } + BufferedImage img; + if (type == 1) { + img = BarcodeUtils.encode(param, width, height); + } else { + img = QrCode.createImg(param, width, height); + } + if (!ImageIO.write(img, "jpg", response.getOutputStream())) { + throw new IOException("Could not write an image of format jpg"); + } + response.getOutputStream().flush(); + response.getOutputStream().close(); + return R.ok(); } } -- Gitblit v1.9.1