tixingoutput.java
来自「管理公司合同」· Java 代码 · 共 229 行
JAVA
229 行
/*
* Created on 2006-8-29 15:04:08
*
* By SinoBest
* Copyright hnisi.com.cn, 2005-2006, All rights reserved.
*/
package cn.com.juneng.system.common;
import java.io.OutputStream;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import cn.com.juneng.system.common.util.SimpleDAO;
import jxl.Workbook;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
/**
* @author yehailong
*
*/
public class TixingOutput implements DownObject {
private HttpServletRequest request = null;
private String sheetName = null;
public void createOutStream(OutputStream sos,
HttpServletRequest request) throws Exception {
WritableWorkbook wwb = Workbook.createWorkbook(sos);
WritableSheet ws = wwb.createSheet(sheetName, 0);
String leibie="";
leibie=request.getParameter("leibie");
ColumnInfo[] columns=null;
// 需要显示的字段定义
if(leibie.equalsIgnoreCase("3")){
columns = new ColumnInfo[] {
new ColumnInfo("XM", "姓名"),
new ColumnInfo("TMP3", "身份证号"),
new ColumnInfo("TMP4", "参加考核时间"),
new ColumnInfo("TXLX","提醒类型"),
new ColumnInfo("TMP1","年度")};
}else if(leibie.equalsIgnoreCase("5")){
columns = new ColumnInfo[] {
new ColumnInfo("XM", "姓名"),
new ColumnInfo("TMP3", "身份证号"),
new ColumnInfo("TMP4", "参加工作时间"),
new ColumnInfo("TXLX","提醒类型"),
new ColumnInfo("TMP1","年度"),
new ColumnInfo("TMP2","工龄假天数")};
}else if(leibie.equalsIgnoreCase("7")){
columns = new ColumnInfo[] {
new ColumnInfo("XM", "姓名"),
new ColumnInfo("TMP3", "身份证号"),
new ColumnInfo("TMP4", "出生日期"),
new ColumnInfo("TXLX","提醒类型"),
new ColumnInfo("TMP1","年度")};
}else if(leibie.equalsIgnoreCase("8")){
columns = new ColumnInfo[] {
new ColumnInfo("XM", "姓名"),
new ColumnInfo("TMP3", "身份证号"),
new ColumnInfo("TMP4", "参加工作时间"),
new ColumnInfo("TXLX","提醒类型"),
new ColumnInfo("TMP1","年度"),
new ColumnInfo("TMP2","工龄年数")};
}else {
columns = new ColumnInfo[] {
new ColumnInfo("XM", "姓名"),
new ColumnInfo("TMP3", "身份证号"),
new ColumnInfo("TMP4", "参加工作时间"),
new ColumnInfo("TXLX","提醒类型"),
new ColumnInfo("TMP1","年度")};
}
// 显示头
for (int i = 0; i < columns.length; i++) {
ColumnInfo info = columns[i];
ExcelUtil.addCell(ws, i, 0, info.getColumnDesc(), null);
}
// 显示数据
List list = this.getBaseallInfo(leibie);
for (int j = 0; j < list.size(); j++) {
Map values = (Map) list.get(j);
for (int i = 0; i < columns.length; i++) {
ColumnInfo info = columns[i];
String columnName = info.getColumnName();
String str = values.get(columnName)==null?"":values.get(columnName).toString();
if(columnName.equals("TXLX")){
String leixingtype="";
if(str.equals("1"))
leixingtype="职工生日";
else if(str.equals("2"))
leixingtype="职工退休";
else if(str.equals("3"))
leixingtype="岗位考核";
else if(str.equals("4"))
leixingtype="合同到期";
else if(str.equals("5"))
leixingtype="工龄假期";
else if(str.equals("6"))
leixingtype="满45岁";
else if(str.equals("7"))
leixingtype="独生子女";
else if(str.equals("8"))
leixingtype="工龄5倍";
else if(str.equals("9"))
leixingtype="薪点复归";
else
leixingtype="不明";
ExcelUtil.addCell(ws, i, j + 1, leixingtype+"提醒",null);
}else{
ExcelUtil.addCell(ws, i, j + 1, str,
null);
}
}
}
wwb.write();
wwb.close();
}
public String getFileName() {
Timestamp time = new java.sql.Timestamp(System.currentTimeMillis());
SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy-MM-dd");
return "职工信息" + sdfInput.format(time) + ".xls";
}
public String getFileName(HttpServletRequest request) {
Timestamp time = new java.sql.Timestamp(System.currentTimeMillis());
SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy-MM-dd");
String leibie="";
String filename="";
leibie=request.getParameter("leibie");
if(leibie.equalsIgnoreCase("1")){
filename="职工生日提醒";
}else if(leibie.equalsIgnoreCase("2")){
filename="职工退休提醒";
}else if(leibie.equalsIgnoreCase("3")){
filename="职工岗位考核提醒";
}else if(leibie.equalsIgnoreCase("4")){
filename="职工合同到期提醒";
}else if(leibie.equalsIgnoreCase("5")){
filename="职工工龄假期提醒";
}else if(leibie.equalsIgnoreCase("6")){
filename="职工满45岁提醒";
}else if(leibie.equalsIgnoreCase("7")){
filename="职工独生子女生日提醒";
}else if(leibie.equalsIgnoreCase("8")){
filename="职工工龄满5年周期提醒";
}else if(leibie.equalsIgnoreCase("9")){
filename="优秀职工薪点复归提醒";
}else {
filename="不明提醒";
}
return filename + sdfInput.format(time) + ".xls";
}
public String getContentType() {
return "application/vnd.ms-excel;charset=GBK";
}
public String getDownMode() {
// TODO Auto-generated method stub
return null;
}
public void setRequest(HttpServletRequest request) {
this.request = request;
String leibie="";
String filename="";
leibie=request.getParameter("leibie");
if(leibie.equalsIgnoreCase("1")){
filename="职工生日提醒";
}else if(leibie.equalsIgnoreCase("2")){
filename="职工退休提醒";
}else if(leibie.equalsIgnoreCase("3")){
filename="职工岗位考核提醒";
}else if(leibie.equalsIgnoreCase("4")){
filename="职工合同到期提醒";
}else if(leibie.equalsIgnoreCase("5")){
filename="职工工龄假期提醒";
}else if(leibie.equalsIgnoreCase("6")){
filename="职工满45岁提醒";
}else if(leibie.equalsIgnoreCase("7")){
filename="职工独生子女生日提醒";
}else if(leibie.equalsIgnoreCase("8")){
filename="职工工龄满5年周期提醒";
}else if(leibie.equalsIgnoreCase("9")){
filename="优秀职工薪点复归提醒";
}else {
filename="不明提醒";
}
Timestamp time = new java.sql.Timestamp(System.currentTimeMillis());
SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy-MM-dd");
this.sheetName = filename + sdfInput.format(time);
}
/**
* 从数据库取vbaseallinfo表信息
*
* @return
*/
public List getBaseallInfo(String leibie) {
// 从数据库里读出vbaseallinfo表数据
String sql = "";
sql=" select * from tixing where sfcl='2' ";
if(!COMMON.isEmpty(leibie))
sql+=" and txlx='"+leibie+"'";
try {
return SimpleDAO.query(sql);
} catch (Exception exc) {
String sErrorMsg = "UserJXL:getBaseallInfo() - " + exc;
}
return null;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?