ZQN
2024-08-14 5cbb2e7fc3d81ac895548179a7be9a65fa726c6d
企业二维码批量下载
2个文件已修改
37 ■■■■■ 已修改文件
project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
project-common/src/main/java/com/project/common/utils/zip/ZipUtils.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java
@@ -1,9 +1,7 @@
package com.project.admin.controller.system;
import cn.hutool.core.convert.Convert;
import com.project.common.annotation.Log;
import com.project.common.annotation.RepeatSubmit;
import com.project.common.config.ProjectConfig;
import com.project.common.core.controller.BaseController;
import com.project.common.core.domain.AjaxResult;
import com.project.common.core.page.TableDataInfo;
@@ -59,18 +57,29 @@
    @ApiOperation("下载二维码")
    @GetMapping("/downloadQrcode")
    public void downloadQrcode(SysCompanyQueryBo bo, HttpServletResponse response)
    public void downloadQrcode(String companyIds, HttpServletResponse response)
    {
        List<SysCompanyVo> list = iSysCompanyService.queryList(bo);
        list.forEach(e->{
            if (StringUtils.isEmpty(e.getQrcodeImg())){
                String qrcode = ImageUtils.createQrcode(e.getCompanyCode(), e.getCompanyName(), "2");
                e.setQrcodeImg(qrcode);
                iSysCompanyService.updateById(Convert.convert(SysCompany.class, e));
        if (StringUtils.isNotEmpty(companyIds)){
            String[] split = companyIds.split(",");
            List<Long> longs = new ArrayList<>();
            for (String s : split) {
                long l = Long.parseLong(s);
                longs.add(l);
            }
        });
        List<String> collect = list.stream().map(SysCompanyVo::getQrcodeImg).collect(Collectors.toList());
        ZipUtils.downloadToZip(collect, response);
            List<SysCompany> list = iSysCompanyService.list(iSysCompanyService.lq()
                    .in(StringUtils.isNotEmpty(longs), SysCompany::getCompanyId, longs)
            );
            list.forEach(e->{
                if (StringUtils.isEmpty(e.getQrcodeImg())){
                    String qrcode = ImageUtils.createQrcode(e.getCompanyCode(), e.getCompanyName(), "2");
                    e.setQrcodeImg(qrcode);
                    iSysCompanyService.updateById(e);
                }
            });
            List<String> collect = list.stream().map(SysCompany::getQrcodeImg).collect(Collectors.toList());
            List<String> names = list.stream().map(SysCompany::getCompanyName).collect(Collectors.toList());
            ZipUtils.downloadToZip(collect,names, response);
        }
    }
project-common/src/main/java/com/project/common/utils/zip/ZipUtils.java
@@ -27,7 +27,7 @@
     * @param list 图片数组
     * @param response  响应
     */
    public static void downloadToZip(List<String> list, HttpServletResponse response)
    public static void downloadToZip(List<String> list, List<String> names, HttpServletResponse response)
    {
        int i = 0;
        //如果有附件 进行zip处理
@@ -43,7 +43,7 @@
                    InputStream ins = Files.newInputStream(Paths.get(localPath + s));
                    //塞入流数组中
                    srcFiles[i] = ins;
                    srcFileNames[i] = path.substring(path.lastIndexOf("/",path.lastIndexOf("-")));
                    srcFileNames[i] = names.get(list.indexOf(path))+".png";
                    i++;
                }
                response.setCharacterEncoding("UTF-8");