shicf
2024-08-23 2fef20fe45a1fc901b51243bcc60682524447990
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
package com.product.device.service;
 
import cn.hutool.extra.qrcode.QrCodeUtil;
import cn.hutool.extra.qrcode.QrConfig;
import com.product.device.utils.QuickResponseCode;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
 
import com.product.common.lang.StringUtils;
 
import java.io.File;
import java.io.IOException;
 
@Service
public class QuickResponseService {
    @Resource
    QrConfig qrconig;
    public void generateFile(String content, File file){
        //生成到本地文件
        QrCodeUtil.generate(content, qrconig, file);
    }
    //输出到流
    public void generateStream(String content, HttpServletResponse response) throws IOException {
        QrCodeUtil.generate(content,qrconig,"png",response.getOutputStream());
    }
    public static void generateQRFile(String content,File file) {
        //生成到本地文件
        QrCodeUtil.generate(content, QuickResponseCode.getQRConfig(), file);
    }
    /**
     * 生成设备编码的二维码
     * @param device_sn
     * @param file
     */
    public static void generateDeviceQRFile(String device_sn,String uuid,File file) {
        StringBuilder str=new StringBuilder();
        str.append("{");
        if(!StringUtils.isEmpty(device_sn)) {
            str.append( "\"asset_code\":\"").append(device_sn ).append("\"");
        }
        if(!StringUtils.isEmpty(uuid)) {
            str.append( ",\"uuid\":\"").append(uuid ).append("\"");
        }
        str.append("}");
 
        //生成到本地文件
        QrCodeUtil.generate(str.toString(), QuickResponseCode.getQRConfig(), file);
    }
 
    public static void main(String args[]) {
        QuickResponseService k=new QuickResponseService();
        File f=new File("d:/device.png");
        k.qrconig=QuickResponseCode.getQRConfig();
        k.generateFile("dfsgefsdf", f);
        for(int i=0;i<5;i++) {
            File f1=new File("d:/device"+i+".png");
            generateDeviceQRFile("device_"+i,"uuids_"+i,f1);
        }
    }
}