/**
    * 查询未打印订单
    * @param req
    * @param sort
    * @param order
    * @param rows
    * @param page
    * @return
    */
   public JSONObject queryOrder(HttpServletRequest req,String startDate,String endDate){
       Date date = new Date();
       DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
       String time=format.format(date);    //获得当前时间
       StringBuffer sql1 = new StringBuffer("select ifnull(u.parentUserCode,'')parentUserCode,"
                  + "ifnull(u.siteName,'')siteName,ifnull(e.expressNO,'')expressNO,"
                 + "ifnull(date_format(e.takeDate,'%Y-%m-%d %H:%m:%s'),'')takeDate,"
                 + "ifnull(date_format(e.enterDate,'%Y-%m-%d %H:%m:%s'),'')enterDate,"
                 + "from express e join loginuser u "
                 + "where e.loginUserCode = u.userCode  and  e.STATUS = 1 ");

       if((startDate != null && !"".equals(startDate)) && (endDate != null && !"".equals(endDate))){
           sql1.append(" and e.takeDate between '"+startDate+"' "+" and "+" '" + endDate+"'");
       }  else{
          sql1.append(" and e.takeDate like '%"+time+"%' ");   //导出当前时间的数据
      }

       List<Map<String, Object>> list = jdbcTemplate.queryForList(sql1.toString());

       JSONArray array = new JSONArray();
         JSONObject obj = new JSONObject();
         if(list !=null && list.size()>0){
             JSONObject jo = new JSONObject();
             for (Map<String, Object> map : list){
                 jo.put("parentUserCode", map.get("parentUserCode"));
                jo.put("siteName", map.get("siteName"));
                jo.put("expressNO", map.get("expressNO"));
                jo.put("takeDate", map.get("takeDate"));
                jo.put("enterDate", map.get("enterDate"));
               array.add(jo);
             }

             obj.put("rows", array);
         }else{

             obj.put("rows", null);
         }
         return obj;
   }
/**
    * 导出未打印订单
    * @param req
    * @param response
    * @return
    */
   public String exportExcleO(HttpServletRequest req,HttpServletResponse response,String startDate,String endDate){
      startDate = req.getParameter("startDate");
         endDate = req.getParameter("endDate");
        JSONObject jso = queryOrder(req, startDate, endDate);
                 JSONArray json = jso.getJSONArray("rows");

                 if (json.size()<0 && json==null) {
                     return null;
                 } else {
                     HSSFWorkbook wb = new HSSFWorkbook();
                     HSSFSheet sheet = wb.createSheet("表1");
                     HSSFRow row = sheet.createRow((int) 0);
                     HSSFCellStyle style = wb.createCellStyle();
                     style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式

                     HSSFCell cell = row.createCell((short) 0);
                     cell.setCellValue("站点编号");
                     cell.setCellStyle(style);
                     cell = row.createCell((short) 1);
                     cell.setCellValue("站点名称");
                     cell.setCellStyle(style);
                     cell = row.createCell((short) 2);
                     cell.setCellValue("接单时间");
                     cell.setCellStyle(style);
                     cell = row.createCell((short) 3);
                     cell.setCellValue("下单时间");
                     cell.setCellStyle(style);
                    for (int i = 0; i < json.size(); i++) {
                         JSONObject f = json.getJSONObject(i);
                         row = sheet.createRow((int) i + 1);
                         row.createCell((short) 0).setCellValue(f.getString("parentUserCode"));
                         sheet.setColumnWidth(0, 20 * 200);
                         row.createCell((short) 1).setCellValue(f.getString("siteName"));
                         sheet.setColumnWidth(1, 20 * 300);
                         row.createCell((short) 2).setCellValue(f.getString("takeDate"));
                         sheet.setColumnWidth(2, 20 * 300);
                         row.createCell((short) 3).setCellValue(f.getString("enterDate"));
                         sheet.setColumnWidth(3, 20 * 300);
                        }
                     response.reset();
                     response.setContentType("application/x-msdownload");
                     String pName = "未打印订单记录";
                     try {
                         response.setHeader("Content-Disposition", "attachment; filename="
                                 + new String(pName.getBytes("gb2312"), "ISO-8859-1")
                                 + ".xls");
                     } catch (UnsupportedEncodingException e1) {
                         // TODO Auto-generated catch block
                         e1.printStackTrace();
                     }
                     ServletOutputStream outStream = null;

                     try {
                         outStream = response.getOutputStream();
                         wb.write(outStream);
                     } catch (Exception e) {
                         e.printStackTrace();
                     } finally {
                         try {
                             outStream.close();
                         } catch (IOException e) {
                             e.printStackTrace();
                         }
                     }
                     return pName;
                     }
     }
   
/***
     * 导出未打印订单
     */
    @RequestMapping(value = "/Orderdownload", method = { RequestMethod.POST,
            RequestMethod.GET })
    @ResponseBody
    public void exportOrder(
            @RequestParam("startDate") String startDate,
            @RequestParam("endDate") String endDate,HttpServletResponse resp,HttpServletRequest req) {

        nceServiceImpl.exportExcleO(req, resp, startDate, endDate);
    }

将数据导入Excel的更多相关文章

  1. [Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  2. C#变成数据导入Excel和导出Excel

    excel 基础 •整个excel 表格叫工作表:workbook:工作表包含的叫页:sheet:行:row:单元格:cell. •excel 中的电话号码问题,看起来像数字的字符串以半角单引号开头就 ...

  3. 如何将页面上的数据导入excel中

    网上关于页面数据导入excel的文章很多,但是大部分都是关于 ActiveXObject 对象,可是ActiveXObject 对象是只支持IE的,可我连IE11也测试了,还是无法识别,又查到消息,好 ...

  4. C#Winfrom Listview数据导入Excel

    需引用 public void ExportToExecl() { System.Windows.Forms.SaveFileDialog sfd = new SaveFileDialog(); sf ...

  5. 转:[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  6. python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图

    python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...

  7. excel数据 入库mysql 和 mysql数据 导入excel文件

    1.excel数据入库mysql 首先准备excel文件, 标红的地方需要留意,一个是字段名所在行,一个表名对应页: 然后私用mysql工具 navicat, 选择数据库,然后导入文件, 选中相应ex ...

  8. Java将数据库数据导入EXCEL

    一般的数据库数据怎么导入excel中呢??这让人非常疑惑,今天我找到了一个方法能够实现 须要导入一个第三方包下载地址 详细内容例如以下: 里面含有指导文档,index.html里面含有怎样读取数据库文 ...

  9. SQLServer外部数据导入--Excel版

    例如要在test表里插入多行数据 假设字段有: ID.Name 首先要有需要导入的数据的Excel A1 对应ID B1 对应Name 选中Excel第一行的空白处,比如C1,在工具栏的函数文本框里输 ...

  10. java数据库数据导入excel

    data导出入excel中 controller: package com.longfor.hrssc.api.controller; import com.longfor.hrssc.api.mod ...

随机推荐

  1. js压缩xml字符串,将xml字符串转换为xml对象,将xml对象转换为json对象

    /** * 压缩xml字符串 */ function compressXmlStr(str){ var prefix, suffix; var i = str.indexOf("\r&quo ...

  2. 格式工厂 v4.0.0 最新去广告绿色纯净版

    最好用的多媒体格式转换利器:格式工厂现已更新至v4.0,此次更新加入最新的HEVC(H265)编码,MP4,MKV的压缩比大幅度提高!格式工厂,轻松转换一切你想要的格式!利器在手,转换不愁! 格式工厂 ...

  3. BZOJ 3931: [CQOI2015]网络吞吐量

    3931: [CQOI2015]网络吞吐量 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1555  Solved: 637[Submit][Stat ...

  4. EventDispatcher 事件分发组件

    引言 考虑这样一个问题,现在你想给为你的项目提供一个插件系统,插件可以添加一些方法,或者在某些方法执行之前或者之后做些事情,而不干扰其他插件.要实现这个系统,简单的单继承不是个好办法,即使多继承在PH ...

  5. CentOS 7 防火墙 firewall 的使用

    1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disabl ...

  6. ios 生成问题

    上午的时候遇到ios打包的时候出现问题,生成没有问题,但是安装到手机的时候出现问题,错误如下 The certificate used to sign "AppName" has ...

  7. A couple of notes about .NET Framework 4.6 setup behaviors

    https://blogs.msdn.microsoft.com/astebner/2015/06/17/a-couple-of-notes-about-net-framework-4-6-setup ...

  8. js图片延迟加载

    什么是图片延迟加载? 也叫懒加载. 当页面有多屏的时候,页面中的图片比较多. 那么,在页面载入完毕的时候,并不会把所有的图片都加载进来. 而是当用户拖动滚动条的时候,图片要进入用户的视野了,才开始加载 ...

  9. Python之路【第二十三篇】爬虫

    difference between urllib and urllib2 自己翻译的装逼必备 What is the difference between urllib and urllib2 mo ...

  10. 初识pipeline

    1.pipeline的产生 从一个现象说起,有一家咖啡吧生意特别好,每天来的客人络绎不绝,客人A来到柜台,客人B紧随其后,客人C排在客人B后面,客人D排在客人C后面,客人E排在客人D后面,一直排到店面 ...