版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
package util;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.subject.Subject;
import com.tgb.entity.User;
import com.tgb.vo.ExportPlInoutReportHeads;
/**
* @author Lu Kongwen
* @version Create time:2016-10-10 下午4:41:20
* @Description
*/
public class ExportHeadsUtils {
public static List<ExportPlInoutReportHeads> getExportPlInoutReportHeads(HttpServletRequest request) {
List<ExportPlInoutReportHeads> heads = new ArrayList<ExportPlInoutReportHeads>();
ExportPlInoutReportHeads exportPlInoutReportHeads = new ExportPlInoutReportHeads();
exportPlInoutReportHeads.setIr_in_time_begin_time(request.getParameter("ir_in_time_begin_time"));
exportPlInoutReportHeads.setIr_in_time_end_time(request.getParameter("ir_in_time_end_time"));
exportPlInoutReportHeads.setIr_out_time_begin_time(request.getParameter("ir_out_time_begin_time"));
exportPlInoutReportHeads.setIr_out_time_end_time(request.getParameter("ir_out_time_end_time"));
String ir_num = request.getParameter("ir_num");
String ir_in_operator = request.getParameter("ir_in_operator");
String ir_out_operator = request.getParameter("ir_out_operator");
try {
if (StringUtils.nonEmpty(ir_num)) {
ir_num = URLDecoder.decode(ir_num, "UTF-8");
}
if (StringUtils.nonEmpty(ir_in_operator)) {
ir_in_operator = URLDecoder.decode(ir_in_operator, "UTF-8");
}
if (StringUtils.nonEmpty(ir_out_operator)) {
ir_out_operator = URLDecoder.decode(ir_out_operator, "UTF-8");
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
exportPlInoutReportHeads.setIr_num(ir_num);
exportPlInoutReportHeads.setIr_in_operator(ir_in_operator);
exportPlInoutReportHeads.setIr_out_operator(ir_out_operator);
Subject subject = SecurityUtils.getSubject();
User user = (User) subject.getPrincipal();
exportPlInoutReportHeads.setExport_operator(user.getFull_name());
exportPlInoutReportHeads.setExport_time(TimeUtils.getyyyyMMddHHMMStringByDate(new Date()));
heads.add(exportPlInoutReportHeads);
return heads;
}
}
@RequestMapping(value = "exportExcptionInvoiceUseDetailRecords", method = RequestMethod.GET)
public void exportExcptionCarTypeDetailRecords(HttpServletRequest request, HttpServletResponse response,Invoice invoice,
TimeCompare timeCompare,
Map<String, Object> map,Integer userID) throws Exception {
List<ExportPlInoutReportHeads> heads = ExportHeadsUtils.getExportPlInoutReportHeads(request);
List<String> l = new ArrayList<String>();
Field filed = new Field();
l.add(" invoice_status = 2");
ToolsBarUtils.getInvoiceSearchCondition(invoice,timeCompare,userID, l, filed);
List<Invoice> InvoiceVoList = invoiceService.findInvoiceAndUseRecordNOPage(l, filed);
ExportUtils.exportExcel(response, heads, InvoiceVoList, "发票使用情况详细报表.xls", "template-excptionInvoiceUse.xls");
}
package util;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import oracle.sql.TIMESTAMP;
/**
* 数据库字段定义
*
@Author
* @Date 2015-9-22
* @Version 1.0
* @Remark
*/
public class Field {
private List<FieldVo> m_aParam = new ArrayList<FieldVo>();
public Field addStr(String sValue) {
return addStr(null, sValue);
}
public Field addStr(String sKey, String sValue) {
m_aParam.add(new FieldVo(sKey, sValue, java.sql.Types.VARCHAR));
return this;
}
public Field addStrL(String sValue) {
return addStrL(null, sValue);
}
public Field addStrL(String sKey, String sValue) {
m_aParam.add(new FieldVo(sKey, sValue, java.sql.Types.CLOB));
return this;
}
public Field addInt(int nValue) {
return addInt(null, nValue);
}
public Field addInt(String sKey, int nValue) {
m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.INTEGER));
return this;
}
public Field addFloat(float nValue) {
return addFloat(null, nValue);
}
public Field addFloat(String sKey, float nValue) {
m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.FLOAT));
return this;
}
public Field addDouble(double nValue) {
return addDouble(null, nValue);
}
public Field addDouble(String sKey, double nValue) {
m_aParam.add(new FieldVo(sKey, nValue, java.sql.Types.DOUBLE));
return this;
}
public Field addDateTime(long time) {
return addDateTime(null, time);
}
public Field addDateTime(String sKey, long time) {
m_aParam.add(new FieldVo(sKey, time, java.sql.Types.TIMESTAMP));
return this;
}
public Field addDate(String s) {
return addDate(null, s);
}
public Field addDate(String sKey, String s) {
m_aParam.add(new FieldVo(sKey, s, java.sql.Types.DATE));
return this;
}
/****
* 根据key 获取查找字段 如果查找不到 则返回null
*
* @param fKey
* @return
*/
public FieldVo getByKey(String fKey) {
for (FieldVo fv : m_aParam) {
if (fv != null && fv.m_sKey.equals(fKey))
return fv;
}
return null;
}
public List<FieldVo> getFields() {
return m_aParam;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < m_aParam.size(); i++) {
sb.append(m_aParam.get(i).m_sKey).append(":")
.append(m_aParam.get(i).m_oValue).append("|");
}
return sb.toString();
}
}