jxl导出excel(合并行、合并列、单元格居中、单元格固定宽度、字体加粗、分页签)
2016-06-28 10:00
501 查看
public ActionForward performExport(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException { String exportType = request.getParameter("exportType"); if ("check".equals(exportType)) { request.setAttribute("check", "y"); } String tableName = "工单数据表"; String excelFileName = new String(("工单数据表" + DateUtil.getSysDateString() + ".xls").getBytes("GBK"), "iso-8859-1"); List list = null; PosOrderBO poBO = new PosOrderBO(); //2016-06-24修改成根据工单类型分页签导出 //String sql = getSelectSQL5(request, (PubForm) form); String sql = getWorkOrderGroupByWorkOrderTypeSQL(request,(PubForm)form)[0]; String sqlNumSql = getWorkOrderGroupByWorkOrderTypeSQL(request,(PubForm)form)[1]; // 导出所有 try { list =poBO.list(sql); List xjNumList = poBO.list(sqlNumSql); response.setContentType("application/vnd.ms-excel"); response.setHeader("Content_Length", "10000000"); if (request.getHeader("User-Agent").indexOf("MSIE 5.5") != -1) { /** MS IE5.5 */ response.setHeader("Content-disposition", "filename=\"" + excelFileName + "\""); } else { /** 非MS IE5.5 */ response.setHeader("Content-disposition", "attachment;filename=\"" + excelFileName + "\""); } // ExcelFileUtil.writePosOrderExcel3(list, response.getOutputStream(), tableName); ExcelFileUtil.writePosOrderExcel4(list,xjNumList, response.getOutputStream(), tableName); } catch (Exception ex) { ex.printStackTrace(); response.setStatus(HttpServletResponse.SC_OK); } finally { if (response != null && response.getOutputStream() != null) { response.getOutputStream().close(); } } return null; }public String[] getWorkOrderGroupByWorkOrderTypeSQL(HttpServletRequest request, ActionForm form){ Manager manager = (Manager) request.getSession().getAttribute(SystemConst.MANAGER); ShopRole role = manager.getRoleObject(); String roleName =role.getName(); String type = request.getParameter("type"); String queryDate = request.getParameter("date"); String bussOrgId = ""; if(roleName.equals("片区组长")){ List list = StoreHelper.getOrgsByManagerId(manager.getId()); if(list != null && list.size() > 0){ for(int i=0;i= 7){ resDate = lastDate.substring(0,4) + "年" + lastDate.substring(5,7) + "月"; }else{ resDate = lastDate; } request.setAttribute("queryDate", queryDate); request.setAttribute("queryType", type); request.setAttribute("resDate", resDate); } String backType = request.getParameter("bean.orderType"); String storeNo = request.getParameter("bean.storeNo"); String terminalNo = request.getParameter("bean.terminalNo"); String searchExecOper = request.getParameter("bean.execOper"); List managerIds = PosManagerHelpler.getManagerIdsByName(searchExecOper); String backDeviceSn = request.getParameter("bean.deviceSn"); String backStatus = request.getParameter("bean.orderStatus"); String startDate = request.getParameter("startDate"); String endDate = request.getParameter("endDate"); String deviceStatus = request.getParameter("deviceStatus"); String deviceType = request.getParameter("deviceType"); request.setAttribute("bussOrgId", bussOrgId); request.setAttribute("bussManagerName", bussManagerName); request.setAttribute("searchExecOper", searchExecOper); request.setAttribute("backDeviceSn", backDeviceSn); request.setAttribute("deviceStatus", deviceStatus); request.setAttribute("deviceType", deviceType); if(!StringUtil.isEmpty(deviceType)){ sql.append(" and pd.deviceType ='"+deviceType+"'"); xjSql.append(" and pd.deviceType ='"+deviceType+"'"); } if(!StringUtil.isEmpty(deviceStatus)){ sql.append(" and pd.status ='"+deviceStatus+"'"); xjSql.append(" and pd.status ='"+deviceStatus+"'"); } if(!StringUtil.isEmpty(bussOrgId)){ if("9".equals(bussOrgId)){//选择常州,就总计所有片区 sql.append(" "); xjSql.append(" "); }else if("33".equals(bussOrgId)){//选择其他区,就统计 sql.append(" AND (s.bussOrgId='9' or s.bussOrgId='33') "); xjSql.append(" AND (s.bussOrgId='9' or s.bussOrgId='33') "); }else{ sql.append(" AND s.bussOrgId='"+bussOrgId+"'"); xjSql.append(" AND s.bussOrgId='"+bussOrgId+"'"); } } if(!StringUtil.isEmpty(bussManagerName)){ sql.append(" and po.execOperNo like '%"+bussManagerName+"%'"); xjSql.append(" and po.execOperNo like '%"+bussManagerName+"%'"); } if (!StringUtil.isEmpty(storeNo)) { sql.append(" and s.storeNo like '%" + storeNo + "%'"); xjSql.append(" and s.storeNo like '%" + storeNo + "%'"); } if (!StringUtil.isEmpty(terminalNo)) { sql.append(" and po.terminalNo like '%" + terminalNo + "%'"); xjSql.append(" and po.terminalNo like '%" + terminalNo + "%'"); } if(!StringUtil.isEmpty(searchExecOper)){ if(managerIds != null && managerIds.size()>0){ sql.append(" and ("); xjSql.append(" and ("); for(int i = 0;i0){ mapXJ=(HashMap) xjNumList.get(0); } try { Label lableXJ = null; Label lableXZ = null; Label lableHZ = null; Label lableSJ = null; Label lableQJ = null; Label lableYJ = null; Label lableGJ = null; lableXJ = new Label(0,0,"状态",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,0,"细分状态",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,0,"数量",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(3,0,"总数",titleFormat); sheetXJ.addCell(lableXJ); //复合表格 sheetXJ.mergeCells(0, 1, 0, 3); lableXJ = new Label(0,1,"正常",titleFormat); sheetXJ.addCell(lableXJ); sheetXJ.mergeCells(3, 1, 3, 3); lableXJ = new Label(3,1,mapXJ==null?"0":(mapXJ.get("zcZongShu")==null?"0":mapXJ.get("zcZongShu").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,1,"正常适用",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,1,mapXJ==null?"0":(mapXJ.get("zcsy")==null?"0":mapXJ.get("zcsy").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,2,"机具故障",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,2,mapXJ==null?"0":(mapXJ.get("jjgz")==null?"0":mapXJ.get("jjgz").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,3,"线路故障",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,3,mapXJ==null?"0":(mapXJ.get("xlgz")==null?"0":mapXJ.get("xlgz").toString()),detFormat); sheetXJ.addCell(lableXJ); sheetXJ.mergeCells(0, 4, 0, 18); lableXJ = new Label(0,4,"异常",titleFormat); sheetXJ.addCell(lableXJ); sheetXJ.mergeCells(3, 4, 3, 18); lableXJ = new Label(3,4,mapXJ==null?"0":(mapXJ.get("ycZongShu")==null?"0":mapXJ.get("ycZongShu").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,4,"不使用",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,4,mapXJ==null?"0":(mapXJ.get("bsy")==null?"0":mapXJ.get("bsy").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,5,"常连海",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,5,mapXJ==null?"0":(mapXJ.get("clh")==null?"0":mapXJ.get("clh").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,6,"电子银行部",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,6,mapXJ==null?"0":(mapXJ.get("dzyhb")==null?"0":mapXJ.get("dzyhb").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,7,"外区",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,7,mapXJ==null?"0":(mapXJ.get("wq")==null?"0":mapXJ.get("wq").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,8,"移机",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,8,mapXJ==null?"0":(mapXJ.get("yj")==null?"0":mapXJ.get("yj").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,9,"异常(有机具)",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,9,mapXJ==null?"0":(mapXJ.get("ycyjj")==null?"0":mapXJ.get("ycyjj").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,10,"不配合(待定)",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,10,mapXJ==null?"0":(mapXJ.get("bphdd")==null?"0":mapXJ.get("bphdd").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,11,"不配合(有机具)",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,11,mapXJ==null?"0":(mapXJ.get("bphyjj")==null?"0":mapXJ.get("bphyjj").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,12,"遗失",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,12,mapXJ==null?"0":(mapXJ.get("ys")==null?"0":mapXJ.get("ys").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,13,"支行回收",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,13,mapXJ==null?"0":(mapXJ.get("zhhs")==null?"0":mapXJ.get("zhhs").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,14,"注销",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,14,mapXJ==null?"0":(mapXJ.get("zx")==null?"0":mapXJ.get("zx").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,15,"切机",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,15,mapXJ==null?"0":(mapXJ.get("qj")==null?"0":mapXJ.get("qj").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,16,"套码",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,16,mapXJ==null?"0":(mapXJ.get("tm")==null?"0":mapXJ.get("tm").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,17,"地址更新",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,17,mapXJ==null?"0":(mapXJ.get("dzgx")==null?"0":mapXJ.get("dzgx").toString()),detFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(1,18,"其他",titleFormat); sheetXJ.addCell(lableXJ); lableXJ = new Label(2,18,mapXJ==null?"0":(mapXJ.get("kb")==null?"0":mapXJ.get("kb").toString()),detFormat); sheetXJ.addCell(lableXJ); sheetXJ.mergeCells(0, 19, 2, 19); lableXJ = new Label(0,19,"合计",titleFormat); sheetXJ.addCell(lableXJ); // lableXJ = new Label(3,19,mapXJ==null?"0":(mapXJ.get("hjZongShu")==null?"0":mapXJ.get("hjZongShu").toString()),detFormat); lableXJ = new Label(3,19, String.valueOf(Integer.parseInt(mapXJ==null?"0":(mapXJ.get("zcZongShu")==null?"0":mapXJ.get("zcZongShu").toString()))+Integer.parseInt(mapXJ==null?"0":(mapXJ.get("ycZongShu")==null?"0":mapXJ.get("ycZongShu").toString()))) ,detFormat); sheetXJ.addCell(lableXJ); int columnXJ = 4; int columnXZ = 0; int columnHZ = 0; int columnSJ = 0; int columnQJ = 0; int columnYJ = 0; int columnGJ = 0; // sheet.setRowView(0, 588, false); lableXJ = new Label(columnXJ++, 0, "设备状态", titleFormat); lableXZ = new Label(columnXZ++, 0, "设备状态", titleFormat); lableHZ = new Label(columnHZ++, 0, "设备状态", titleFormat); lableSJ = new Label(columnSJ++, 0, "设备状态", titleFormat); lableQJ = new Label(columnQJ++, 0, "设备状态", titleFormat); lableYJ = new Label(columnYJ++, 0, "设备状态", titleFormat); lableGJ = new Label(columnGJ++, 0, "设备状态", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheetXJ.setColumnView(1, 9); lableXJ = new Label(columnXJ++, 0, "工单备注", titleFormat); lableXZ = new Label(columnXZ++, 0, "工单备注", titleFormat); lableHZ = new Label(columnHZ++, 0, "工单备注", titleFormat); lableSJ = new Label(columnSJ++, 0, "工单备注", titleFormat); lableQJ = new Label(columnQJ++, 0, "工单备注", titleFormat); lableYJ = new Label(columnYJ++, 0, "工单备注", titleFormat); lableGJ = new Label(columnGJ++, 0, "工单备注", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(2, 9); lableXJ = new Label(columnXJ++, 0, "区域", titleFormat); lableXZ = new Label(columnXZ++, 0, "区域", titleFormat); lableHZ = new Label(columnHZ++, 0, "区域", titleFormat); lableSJ = new Label(columnSJ++, 0, "区域", titleFormat); lableQJ = new Label(columnQJ++, 0, "区域", titleFormat); lableYJ = new Label(columnYJ++, 0, "区域", titleFormat); lableGJ = new Label(columnGJ++, 0, "区域", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(3, 9); lableXJ = new Label(columnXJ++, 0, "确认人", titleFormat); lableXZ = new Label(columnXZ++, 0, "确认人", titleFormat); lableHZ = new Label(columnHZ++, 0, "确认人", titleFormat); lableSJ = new Label(columnSJ++, 0, "确认人", titleFormat); lableQJ = new Label(columnQJ++, 0, "确认人", titleFormat); lableYJ = new Label(columnYJ++, 0, "确认人", titleFormat); lableGJ = new Label(columnGJ++, 0, "确认人", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(4, 9); lableXJ = new Label(columnXJ++, 0, "客户经理", titleFormat); lableXZ = new Label(columnXZ++, 0, "客户经理", titleFormat); lableHZ = new Label(columnHZ++, 0, "客户经理", titleFormat); lableSJ = new Label(columnSJ++, 0, "客户经理", titleFormat); lableQJ = new Label(columnQJ++, 0, "客户经理", titleFormat); lableYJ = new Label(columnYJ++, 0, "客户经理", titleFormat); lableGJ = new Label(columnGJ++, 0, "客户经理", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(5, 9); lableXJ = new Label(columnXJ++, 0, "客户经理电话", titleFormat); lableXZ = new Label(columnXZ++, 0, "客户经理电话", titleFormat); lableHZ = new Label(columnHZ++, 0, "客户经理电话", titleFormat); lableSJ = new Label(columnSJ++, 0, "客户经理电话", titleFormat); lableQJ = new Label(columnQJ++, 0, "客户经理电话", titleFormat); lableYJ = new Label(columnYJ++, 0, "客户经理电话", titleFormat); lableGJ = new Label(columnGJ++, 0, "客户经理电话", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(6, 15); // sheet.setColumnView(7, cellView); lableXJ = new Label(columnXJ++, 0, "商户代码 ", titleFormat); lableXZ = new Label(columnXZ++, 0, "商户代码", titleFormat); lableHZ = new Label(columnHZ++, 0, "商户代码", titleFormat); lableSJ = new Label(columnSJ++, 0, "商户代码", titleFormat); lableQJ = new Label(columnQJ++, 0, "商户代码", titleFormat); lableYJ = new Label(columnYJ++, 0, "商户代码", titleFormat); lableGJ = new Label(columnGJ++, 0, "商户代码", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(8, cellView); lableXJ = new Label(columnXJ++, 0, "终端号", titleFormat); lableXZ = new Label(columnXZ++, 0, "终端号", titleFormat); lableHZ = new Label(columnHZ++, 0, "终端号", titleFormat); lableSJ = new Label(columnSJ++, 0, "终端号", titleFormat); lableQJ = new Label(columnQJ++, 0, "终端号", titleFormat); lableYJ = new Label(columnYJ++, 0, "终端号", titleFormat); lableGJ = new Label(columnGJ++, 0, "终端号", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(9, cellView); lableXJ = new Label(columnXJ++, 0, "商户中文名称", titleFormat); lableXZ = new Label(columnXZ++, 0, "商户中文名称", titleFormat); lableHZ = new Label(columnHZ++, 0, "商户中文名称", titleFormat); lableSJ = new Label(columnSJ++, 0, "商户中文名称", titleFormat); lableQJ = new Label(columnQJ++, 0, "商户中文名称", titleFormat); lableYJ = new Label(columnYJ++, 0, "商户中文名称", titleFormat); lableGJ = new Label(columnGJ++, 0, "商户中文名称", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(10, 100); lableXJ = new Label(columnXJ++, 0, "经营地址", titleFormat); lableXZ = new Label(columnXZ++, 0, "经营地址", titleFormat); lableHZ = new Label(columnHZ++, 0, "经营地址", titleFormat); lableSJ = new Label(columnSJ++, 0, "经营地址", titleFormat); lableQJ = new Label(columnQJ++, 0, "经营地址", titleFormat); lableYJ = new Label(columnYJ++, 0, "经营地址", titleFormat); lableGJ = new Label(columnGJ++, 0, "经营地址", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(11, cellView); lableXJ = new Label(columnXJ++, 0, "商户新址", titleFormat); lableXZ = new Label(columnXZ++, 0, "商户新址", titleFormat); lableHZ = new Label(columnHZ++, 0, "商户新址", titleFormat); lableSJ = new Label(columnSJ++, 0, "商户新址", titleFormat); lableQJ = new Label(columnQJ++, 0, "商户新址", titleFormat); lableYJ = new Label(columnYJ++, 0, "商户新址", titleFormat); lableGJ = new Label(columnGJ++, 0, "商户新址", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(12, cellView); lableXJ = new Label(columnXJ++, 0, "商户联系人 ", titleFormat); lableXZ = new Label(columnXZ++, 0, "商户联系人 ", titleFormat); lableHZ = new Label(columnHZ++, 0, "商户联系人 ", titleFormat); lableSJ = new Label(columnSJ++, 0, "商户联系人 ", titleFormat); lableQJ = new Label(columnQJ++, 0, "商户联系人 ", titleFormat); lableYJ = new Label(columnYJ++, 0, "商户联系人 ", titleFormat); lableGJ = new Label(columnGJ++, 0, "商户联系人 ", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(13, cellView); lableXJ = new Label(columnXJ++, 0, "商户联系人电话", titleFormat); lableXZ = new Label(columnXZ++, 0, "商户联系人电话", titleFormat); lableHZ = new Label(columnHZ++, 0, "商户联系人电话", titleFormat); lableSJ = new Label(columnSJ++, 0, "商户联系人电话", titleFormat); lableQJ = new Label(columnQJ++, 0, "商户联系人电话", titleFormat); lableYJ = new Label(columnYJ++, 0, "商户联系人电话", titleFormat); lableGJ = new Label(columnGJ++, 0, "商户联系人电话", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(14, cellView); lableXJ = new Label(columnXJ++, 0, "开户日期", titleFormat); lableXZ = new Label(columnXZ++, 0, "开户日期", titleFormat); lableHZ = new Label(columnHZ++, 0, "开户日期", titleFormat); lableSJ = new Label(columnSJ++, 0, "开户日期", titleFormat); lableQJ = new Label(columnQJ++, 0, "开户日期", titleFormat); lableYJ = new Label(columnYJ++, 0, "开户日期", titleFormat); lableGJ = new Label(columnGJ++, 0, "开户日期", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(15, cellView); lableXJ = new Label(columnXJ++, 0, "安全模块号", titleFormat); lableXZ = new Label(columnXZ++, 0, "安全模块号", titleFormat); lableHZ = new Label(columnHZ++, 0, "安全模块号", titleFormat); lableSJ = new Label(columnSJ++, 0, "安全模块号", titleFormat); lableQJ = new Label(columnQJ++, 0, "安全模块号", titleFormat); lableYJ = new Label(columnYJ++, 0, "安全模块号", titleFormat); lableGJ = new Label(columnGJ++, 0, "安全模块号", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(16, cellView); lableXJ = new Label(columnXJ++, 0, "终端序列号", titleFormat); lableXZ = new Label(columnXZ++, 0, "终端序列号", titleFormat); lableHZ = new Label(columnHZ++, 0, "终端序列号", titleFormat); lableSJ = new Label(columnSJ++, 0, "终端序列号", titleFormat); lableQJ = new Label(columnQJ++, 0, "终端序列号", titleFormat); lableYJ = new Label(columnYJ++, 0, "终端序列号", titleFormat); lableGJ = new Label(columnGJ++, 0, "终端序列号", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(17, cellView); lableXJ = new Label(columnXJ++, 0, "绑定固定电话号码", titleFormat); lableXZ = new Label(columnXZ++, 0, "绑定固定电话号码", titleFormat); lableHZ = new Label(columnHZ++, 0, "绑定固定电话号码", titleFormat); lableSJ = new Label(columnSJ++, 0, "绑定固定电话号码", titleFormat); lableQJ = new Label(columnQJ++, 0, "绑定固定电话号码", titleFormat); lableYJ = new Label(columnYJ++, 0, "绑定固定电话号码", titleFormat); lableGJ = new Label(columnGJ++, 0, "绑定固定电话号码", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(18, cellView); lableXJ = new Label(columnXJ++, 0, "设备类型", titleFormat); lableXZ = new Label(columnXZ++, 0, "设备类型", titleFormat); lableHZ = new Label(columnHZ++, 0, "设备类型", titleFormat); lableSJ = new Label(columnSJ++, 0, "设备类型", titleFormat); lableQJ = new Label(columnQJ++, 0, "设备类型", titleFormat); lableYJ = new Label(columnYJ++, 0, "设备类型", titleFormat); lableGJ = new Label(columnGJ++, 0, "设备类型", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(19, cellView); lableXJ = new Label(columnXJ++, 0, "开户行", titleFormat); lableXZ = new Label(columnXZ++, 0, "开户行", titleFormat); lableHZ = new Label(columnHZ++, 0, "开户行", titleFormat); lableSJ = new Label(columnSJ++, 0, "开户行", titleFormat); lableQJ = new Label(columnQJ++, 0, "开户行", titleFormat); lableYJ = new Label(columnYJ++, 0, "开户行", titleFormat); lableGJ = new Label(columnGJ++, 0, "开户行", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); // sheet.setColumnView(20, cellView); lableXJ = new Label(columnXJ++, 0, "确认日期", titleFormat); lableXZ = new Label(columnXZ++, 0, "确认日期", titleFormat); lableHZ = new Label(columnHZ++, 0, "确认日期", titleFormat); lableSJ = new Label(columnSJ++, 0, "确认日期", titleFormat); lableQJ = new Label(columnQJ++, 0, "确认日期", titleFormat); lableYJ = new Label(columnYJ++, 0, "确认日期", titleFormat); lableGJ = new Label(columnGJ++, 0, "确认日期", titleFormat); sheetXJ.addCell(lableXJ); sheetXZ.addCell(lableXZ); sheetHZ.addCell(lableHZ); sheetSJ.addCell(lableSJ); sheetQJ.addCell(lableQJ); sheetYJ.addCell(lableYJ); sheetGJ.addCell(lableGJ); CellView cellView = new CellView(); cellView.setAutosize(true); //设置自动大小 if (result != null && result.size() > 0) { // int row = 0; // int firstRow = 1; int rowXJ=1,rowXZ=1,rowHZ=1,rowSJ=1,rowQJ=1,rowYJ=1,rowGJ=1; String type=""; boolean isEnd = true; for (int i = 0; i < result.size(); i++) { columnXJ = 4; columnXZ = 0; columnHZ = 0; columnSJ = 0; columnQJ = 0; columnYJ = 0; columnGJ = 0; Object[] obj = (Object[]) result.get(i); String deviceStatus = (String) obj[0]; String bussManagerName = (String) obj[4]; String orderType = (String) obj[20]; String workType = (String) obj[21]; if(orderType.contains(",")){ type = "综合工单"; }else{ type=orderType.equals("14")?PosConst.posServiceOrderType.get(workType):PosConst.posOrderType.get(orderType); } Manager manager = PosManagerHelpler.getManagerById(bussManagerName); String deviceStatus1 = PosConst.deviceStatus.get(deviceStatus); if(orderType.contains("15")){//巡检 sheetXJ=getSheet(sheetXJ,lableXJ,columnXJ,rowXJ,obj); rowXJ++; } if(orderType.contains("10")){//新装 sheetXZ=getSheet(sheetXZ,lableXZ,columnXZ,rowXZ,obj); rowXZ++; } if(orderType.contains("11")){//换装 sheetHZ=getSheet(sheetHZ,lableHZ,columnHZ,rowHZ,obj); rowHZ++; } if(orderType.contains("14") && workType.contains("3")){//程序升级 sheetSJ=getSheet(sheetSJ,lableSJ,columnSJ,rowSJ,obj); rowSJ++; } if("18".equals(deviceStatus)){//切机 sheetQJ=getSheet(sheetQJ,lableQJ,columnQJ,rowQJ,obj); rowQJ++; } if("07".equals(deviceStatus)){//移机 sheetYJ=getSheet(sheetYJ,lableYJ,columnYJ,rowYJ,obj); rowYJ++; } if("22".equals(deviceStatus)){//跟进 sheetGJ=getSheet(sheetGJ,lableGJ,columnGJ,rowGJ,obj); rowGJ++; } // row++; // firstRow++; } } } catch (Exception ex) { ex.printStackTrace(); throw ex; } finally { if (workbook != null) { workbook.write(); workbook.close(); } if (os != null) { os.close(); } } } public static WritableSheet getSheet(WritableSheet sheet,Label lable,int column,int row,Object[] obj) throws RowsExceededException, WriteException{ String deviceStatus = (String) obj[0]; String statusExplain = (String) obj[1]; String bussOrgId = (String) obj[2]; String execOperNo = (String) obj[3]; String bussManagerName = (String) obj[4]; String storeNo = (String) obj[5]; String terminalNo = (String) obj[6]; String companyFullName = (String) obj[7]; String companyDoor = (String) obj[8]; String address = (String) obj[9]; String businessName = (String) obj[10]; String businessMobile = (String) obj[11]; String registrationDate = (String) obj[12]; String securityModuleCode = (String) obj[13]; String deviceSn = (String) obj[14]; String businessPhone = (String) obj[15]; String deviceType = (String) obj[16]; String openingBank = (String) obj[17]; String orderTime = (String) obj[18]; String orderStatus = (String) obj[19]; String orderType = (String) obj[20]; String workType = (String) obj[21]; String managerName = (String)obj[22]; String managerPhone = (String)obj[23]; String remark = (String)obj[24]; String type = ""; if(orderType.contains(",")){ type = "综合工单"; }else{ type=orderType.equals("14")?PosConst.posServiceOrderType.get(workType):PosConst.posOrderType.get(orderType); } Manager manager = PosManagerHelpler.getManagerById(bussManagerName); String deviceStatus1 = PosConst.deviceStatus.get(deviceStatus); //设备状态 sheet.setColumnView(column, 10);//根据内容固定列宽 lable = new Label(column++, row, (deviceStatus1==null?"":deviceStatus1), detFormat); sheet.addCell(lable); //工单备注 sheet.setColumnView(column, 50); lable = new Label(column++, row, remark, detFormat); sheet.addCell(lable); //区域 sheet.setColumnView(column, 10); lable = new Label(column++, row, StoreHelper.getOrgNameByOrgId(bussOrgId), detFormat); sheet.addCell(lable); //确认人 sheet.setColumnView(column, 10); lable = new Label(column++, row,PosManagerHelpler.getManagerNameById(execOperNo), detFormat); sheet.addCell(lable); //客户经理 sheet.setColumnView(column, 10); lable = new Label(column++, row,managerName, detFormat); sheet.addCell(lable); //客户经理电话 sheet.setColumnView(column, 15); lable = new Label(column++, row, managerPhone, detFormat); sheet.addCell(lable); //商户代码 sheet.setColumnView(column, 25); lable = new Label(column++, row, storeNo, detFormat); sheet.addCell(lable); //终端号 sheet.setColumnView(column, 15); lable = new Label(column++, row, terminalNo, detFormat); sheet.addCell(lable); //商户中文名称 sheet.setColumnView(column, 50); lable = new Label(column++, row, companyFullName, detFormat); sheet.addCell(lable); //经营地址 sheet.setColumnView(column, 50); lable = new Label(column++, row, companyDoor, detFormat); sheet.addCell(lable); //商户新址 sheet.setColumnView(column, 50); lable = new Label(column++, row, address, detFormat); sheet.addCell(lable); //商户联系人 sheet.setColumnView(column, 10); lable = new Label(column++, row, businessName,detFormat); sheet.addCell(lable); //商户联系人电话 sheet.setColumnView(column, 15); lable = new Label(column++, row, businessMobile, detFormat); sheet.addCell(lable); //开户日期 sheet.setColumnView(column, 20); lable = new Label(column++, row, registrationDate, detFormat); sheet.addCell(lable); //安全模块号 sheet.setColumnView(column, 25); lable = new Label(column++, row, securityModuleCode, detFormat); sheet.addCell(lable); //终端序列号 sheet.setColumnView(column, 20); lable = new Label(column++, row, deviceSn,detFormat); sheet.addCell(lable); //绑定固定电话号码 sheet.setColumnView(column, 15); lable = new Label(column++, row, businessPhone,detFormat); sheet.addCell(lable); //设备类型 sheet.setColumnView(column, 10); lable = new Label(column++, row, (deviceType.equals("0")?"商务通":(deviceType.equals("1")?"POS":"")),detFormat); sheet.addCell(lable); //开户行 sheet.setColumnView(column, 30); lable = new Label(column++, row, openingBank,detFormat); sheet.addCell(lable); //确认日期 sheet.setColumnView(column, 20); lable = new Label(column++, row, orderTime,detFormat); sheet.addCell(lable); // lable = new Label(column++, row, PosConst.posOrderStatus.get(orderStatus),detFormat); // sheet.addCell(lable); // lable = new Label(column++, row, type,detFormat); // sheet.addCell(lable); // lable = new Label(column++, row, statusExplain, detFormat); // sheet.addCell(lable); return sheet; }
相关文章推荐
- Shiro 3 filter
- Java中Properties类
- PCI9054 学习小结
- PCI9054 学习小结
- PCI9054 学习小结
- 分布式系统理论之租约机制学习
- PCI9054 学习小结
- 注册、卸载DLL
- Mysql时间获取
- 隐藏网页的滚动条的方法
- swift 数据类型1
- Android ListView加入CheckBox/RadioButton选择状态保持、全选、反选的状态
- iOS4 中 Core Motion 框架的介绍和使用
- WebGL可视化地球和地图引擎:Cesium.js
- python 字典(dict)按键和值排序
- eclipse package,source folder,folder区别及相互转换
- Delphi反汇编内部字符串处理函数/过程不完全列表
- 各框架推荐
- 代码管理_SVN_TortoiseSVN 冲突解决详细步骤 (图)
- rancher安装和基本使用