spring boot + vue 实现导出excel 特定单元格字体设置为红色

这篇博客介绍了如何使用Spring Boot后端配合Vue.js前端来实现Excel导出功能,并着重讲解了如何设置导出Excel中特定单元格的字体颜色为红色。后端通过查询数据库获取数据,存入List,再填充到单元格中,最后将数据写入到OutputStream。前端使用Ant Design UI,创建了一个管理js文件定义导出方法,并在需要的页面调用该方法,通过按钮触发导出操作。
摘要由CSDN通过智能技术生成

后端:代码;

 /**
     * 导出excel
     *
     * @param request
     * @param prProject
     */
    @RequestMapping(value = "/exportXls")
    //@RequiresPermissions("prProject:exportXls")
    public void exportXls(HttpServletRequest request,HttpServletResponse response, PrProject prProject) {
   
        log.debug("开始导出_______________________" + System.currentTimeMillis());
        IPage<Map<String, Object>> datasPage = iPrCommonService.getSheetData(prProject.getName(), prProject.getProjectType(), 1, 10);
        List<Map<String, Object>> newData = new ArrayList<>();
        String temProjectId = "";
        for (Map<String, Object> data : datasPage.getRecords()) {
   
            if (data.get("project_id").equals(temProjectId)) {
   
                String subListString = (String) newData.get(newData.size() - 1).get("subList");
                List<Map> subList = JSONArray.parseArray(subListString, Map.class);
                subList.add(data);
                newData.get(newData.size() - 1).put("subList", JSON.toJSONString(subList));
            } else {
   
                temProjectId = data.get("project_id").toString();
                List<Map<String, Object>> subList = new ArrayList<>();
                subList.add(data);
                data.put("subList", JSON.toJSONString(subList));
                newData.add(data);
            }
//           }
        }
        IPage ipage = new Page();
        ipage.setSize(datasPage.getSize());
        ipage.setRecords(newData);
        ipage.setPages(datasPage.getPages());
        ipage.setTotal(datasPage.getTotal());
        ipage.setCurrent(datasPage.getCurrent());

        List<Map<String, Object>> fieldData2 = ipage.getRecords();
      /*  for (Map msp : fieldData2) {
            System.out.println("____________" + msp.toString());
        }
*/
        /*得到表头*/
        List<PrStepField> prStepFields = new ArrayList<>();
        List<PrStep> prSteps = iPrStepService.getByProjectType(prProject.getProjectType());
        for (PrStep step : prSteps) 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值