bb9737a0d22de370989da6561d534fdccde3ab9f.svn-base 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package xin.glue.ui.G.G10;
  2. import java.net.URLDecoder;
  3. import xin.glue.ui.common.OutExcelCommon;
  4. import xin.glue.ui.common.XmlOutput;
  5. import com.posdata.glue.biz.activity.PosActivity;
  6. import com.posdata.glue.biz.constants.PosBizControlConstants;
  7. import com.posdata.glue.context.PosContext;
  8. public class OutExcelReport extends PosActivity {
  9. public String runActivity(PosContext context) {
  10. String[] oType = (String[])context.get("oType");//文件类型
  11. String[] sheetName = (String[])context.get("sheetName");//工作表名称
  12. String[] title = (String[])context.get("title");//首行列名
  13. String[] colRef = (String[])context.get("colRef");//列对应字段
  14. String[] list = (String[])context.get("list");//数据集
  15. String fileName= this.getClass().getClassLoader().getResource("/").getPath().replaceFirst("WEB-INF/classes/", "")+"tmp/";
  16. try {
  17. fileName =URLDecoder.decode(fileName,"utf-8");
  18. if("xls".equals(oType[0].toString())){
  19. OutExcelCommon.outExcel(list[0], fileName, sheetName[0], title, colRef);
  20. }else if ("xml".equals(oType[0].toString())){
  21. fileName = fileName +sheetName[0].toString()+ ".xml";
  22. XmlOutput.createXml(fileName,list[0],colRef,title);
  23. XmlOutput.compress(fileName);
  24. }else{
  25. }
  26. } catch (Exception e) {
  27. e.printStackTrace();
  28. logger.logError(e.getMessage());
  29. context.setException(e);
  30. context.put("errorMsg", e.getMessage());
  31. return PosBizControlConstants.FAILURE;
  32. }
  33. return PosBizControlConstants.SUCCESS;
  34. }
  35. }