lianna 发表于 2019-7-4 17:20:57

导入导出求讲解

请问有大佬能帮忙讲解一下导入导出这块吗?小白看不明白

lianna 发表于 2019-7-4 17:27:06

前端的导出代码:/* 导出 */
    handleExportXls() {
      let paramsStr = encodeURI(JSON.stringify(this.getQueryParams()));
      let url = `${window._CONFIG['domianURL']}/${this.url.exportXlsUrl}?paramsStr=${paramsStr}`;
      window.location.href = url;
    }后端的代码:public ModelAndView exportXls(AmMaterial param, HttpServletRequest request, HttpServletResponse response) {
      // Step.1 组装查询条件
      QueryWrapper<AmMaterial> queryWrapper = QueryGenerator.initQueryWrapper(param, request.getParameterMap());
      try {
            String paramsStr = request.getParameter("paramsStr");
            if (oConvertUtils.isNotEmpty(paramsStr)) {
                String deString = URLDecoder.decode(paramsStr, "UTF-8");
                AmMaterial amMaterial = JSON.parseObject(deString, AmMaterial.class);
                queryWrapper = QueryGenerator.initQueryWrapper(amMaterial, request.getParameterMap());
            }
      } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
      }

      SysUser sysUser = (SysUser)SecurityUtils.getSubject().getPrincipal();
//      SysUser sysUser=JwtUtil.getCurrentUser(request);
      String user = "";
      if(sysUser!=null){
            user = sysUser.getUsername();
      }

      //Step.2 AutoPoi 导出Excel
      ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
      List<AmMaterial> pageList = amMaterialService.list(queryWrapper);
      //导出文件名称
      mv.addObject(NormalExcelConstants.FILE_NAME, "物料信息列表");
      mv.addObject(NormalExcelConstants.CLASS, AmMaterial.class);
      mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("物料信息", "导出人:" + user, "导出信息"));
      mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
      return mv;
    }

admin_jh9 发表于 2019-7-8 18:52:16

http://jeecg-boot.mydoc.io/?t=345708
页: [1]
查看完整版本: 导入导出求讲解