测试 用electron + springboot 构建桌面应用
whyczh
2022-03-18 72ddb6d1c81bae015549347915b868591fabe7e1
更新
2个文件已修改
114 ■■■■■ 已修改文件
src/main/java/testElectronJ/FboData.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/testElectronJ/TestController.java 81 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/testElectronJ/FboData.java
@@ -132,7 +132,38 @@
        public String toString() {
            return "TestTime [hour=" + hour + ", minute=" + minute + ", second=" + second + "]";
        }
        public String hms(){
            StringBuffer sb = new StringBuffer();
            if (hour > 0) {
                if(hour<10){
                    sb.append("0"+hour + ":");
                }else{
                    sb.append(hour + ":");
                }
            }else{
                sb.append("00"+ ":");
            }
            if (minute > 0) {
                if(minute<10){
                    sb.append("0"+minute + ":");
                }else{
                    sb.append(minute + ":");
                }
            }else{
                sb.append("00" + ":");
            }
            if (second > 0) {
                if(second<10){
                    sb.append("0"+second);
                }else{
                    sb.append(second);
                }
            }else{
                sb.append("00");
            }
            return sb.toString();
        }
        
        
    }
src/main/java/testElectronJ/TestController.java
@@ -39,17 +39,11 @@
    @PostMapping("/export")
    public void export(HttpServletRequest req, HttpServletResponse resp){
        String lbottom_echart = req.getParameter("lbottom_echart");        //电池电流折线图
        String rbottom_echart = req.getParameter("rbottom_echart");        //单体电压折现图
        String curr_echart = req.getParameter("curr_echart");        //电池电流折线图
        String groupVol_echart = req.getParameter("groupVol_echart");        //组端电压折线图
        String cap_echart = req.getParameter("cap_echart");            //测试容量折线图
        String vol_echart = req.getParameter("vol_echart");            //单体电压折线图
        String rl_echart = req.getParameter("ltop_echart");            //单体容量柱状图
        String sjbg_echart = req.getParameter("rtop_echart");            //数据表格
        String zddy_echart = req.getParameter("ltop_echart");            //组端电压
        String dtdy_echart = req.getParameter("rtop_echart");            //单体电压折线图
        //int battGroupId =Integer.valueOf(req.getParameter("battGroupId"));  //电池组编号
        //int testRecordCount =Integer.valueOf(req.getParameter("testRecordCount"));  //测试编号
        String filePath = req.getParameter("filePath");
        FboDataInf fboDataInf = new FboDataInf();
@@ -60,23 +54,17 @@
        List<byte[]> bytes = new ArrayList<>();
        try {
            if (ServletUtils.isNotNull(lbottom_echart)) {
                String[] url = lbottom_echart.split(",");
            if (ServletUtils.isNotNull(curr_echart)) {
                String[] url = curr_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }if (ServletUtils.isNotNull(rbottom_echart)) {
                String[] url = rbottom_echart.split(",");
            }if (ServletUtils.isNotNull(groupVol_echart)) {
                String[] url = groupVol_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }if (ServletUtils.isNotNull(rl_echart)) {
                String[] url = rl_echart.split(",");
            }if (ServletUtils.isNotNull(cap_echart)) {
                String[] url = cap_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }if (ServletUtils.isNotNull(sjbg_echart)) {
                String[] url = sjbg_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }if (ServletUtils.isNotNull(zddy_echart)) {
                String[] url = zddy_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }if (ServletUtils.isNotNull(dtdy_echart)) {
                String[] url = dtdy_echart.split(",");
            }if (ServletUtils.isNotNull(vol_echart)) {
                String[] url = vol_echart.split(",");
                bytes.add(new BASE64Decoder().decodeBuffer(url[1]));
            }
        }catch (Exception e){
@@ -106,14 +94,26 @@
        cellTitle.setCellValue("一体机充放电数据");
        cellTitle.setCellStyle(cellStyle);
        rowNum++;
        FboDataHeadStart start = fboDataInf.fboDataStart;
        HSSFRow rowHand = sheet.createRow(rowNum);
        rowHand.createCell(0).setCellValue("电池名称:");
        rowHand.createCell(1).setCellValue(start.battNameStr);
        rowHand.createCell(2).setCellValue("电池品牌:");
        rowHand.createCell(1).setCellValue(start.battBrandStr);
        rowNum++;
        //属性栏
        HSSFRow row = sheet.createRow(rowNum);
        row.createCell(0).setCellValue("测试时长"); //创建单元格
        row.createCell(0).setCellValue("测试时间"); //创建单元格
        row.createCell(1).setCellValue("总电压");
        row.createCell(2).setCellValue("测试容量");
        row.createCell(3).setCellValue("剩余容量");
        for(int i=0;i<5;i++){
        for(int i=0;i<list.get(0).SingleVol.length;i++){
            row.createCell(4+i).setCellValue("#"+Integer.valueOf(i+1));
        }
        rowNum++;
@@ -123,11 +123,13 @@
                sheet.createRow(rowNum);  //创建行
                for(int j=0;j<5;j++){
                    FboData fbo=list.get(i+j);
                    sheet.getRow(rowNum).createCell(0).setCellValue(fbo.m_TestTime.toString());
                    sheet.getRow(rowNum).createCell(0).setCellValue(fbo.m_TestTime.hms());
                    sheet.getRow(rowNum).createCell(1).setCellValue(fbo.SumVoltage);
                    sheet.getRow(rowNum).createCell(2).setCellValue(fbo.testCap);
                    sheet.getRow(rowNum).createCell(3).setCellValue(fbo.residualCap);
                    //sheet.getRow(rowNum).createCell(4+j).setCellValue(fbo.getMonVol());
                    for (int k = 0;k<list.get(0).SingleVol.length;k++){
                        sheet.getRow(rowNum).createCell(4+k).setCellValue(fbo.SingleVol[k]);
                    }
                }
                i=i+5-1;
                rowNum++;
@@ -137,17 +139,20 @@
        //插入图片
        int picNum = 0;
        String[] picName = new String[]{
                "电池电流折线图","单体电压柱状图","单体容量柱状图","数据表格","组端电压","单体电压折线图"
                "电池电流折线图","组端电压折线图","测试容量折线图","单体电压折线图"
        };
        //for(int i=0;i<picName.length;i++){
        //    sheet.createRow(rowNum-1);
        //    sheet.getRow(rowNum-1).createCell(0).setCellValue(picName[i]);
        //    //rowNum++;
        //    HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 512, 255,(short) 0, rowNum, (short) 10, rowNum+27);
        //    anchor.setAnchorType(3);
        //    patriarch.createPicture(anchor,wb.addPicture(bytes.get(picNum),HSSFWorkbook.PICTURE_TYPE_PNG)).resize(1);
        //    picNum ++;rowNum+=27;
        //}
        if (picName.length==bytes.size()){
            for(int i=0;i<picName.length;i++){
                sheet.createRow(rowNum-1);
                sheet.getRow(rowNum-1).createCell(0).setCellValue(picName[i]);
                //rowNum++;
                HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 512, 255,(short) 0, rowNum, (short) 10, rowNum+27);
                anchor.setAnchorType(3);
                patriarch.createPicture(anchor,wb.addPicture(bytes.get(picNum),HSSFWorkbook.PICTURE_TYPE_PNG)).resize(1);
                picNum ++;
                rowNum+=27;
            }
        }
        rowNum++;