c9594ec881e9360e41a0bb0a78fc04539d28cf47.svn-base 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package xin.glue.ui.H.H01;
  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 OuterExcelReport 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[] jsonMerges = (String[])context.get("jsonMerges");//合并行列
  16. String fileName= this.getClass().getClassLoader().getResource("/").getPath().replaceFirst("WEB-INF/classes/", "")+"tmp/";
  17. try {
  18. fileName =URLDecoder.decode(fileName,"utf-8");
  19. if("xls".equals(oType[0].toString())){
  20. OutExcelCommon.outExcel(list[0], fileName, sheetName[0], title, colRef,jsonMerges[0]);
  21. }else if ("xml".equals(oType[0].toString())){
  22. fileName = fileName +sheetName[0].toString()+ ".xml";
  23. XmlOutput.createXml(fileName,list[0],colRef,title);
  24. XmlOutput.compress(fileName);
  25. }else{
  26. }
  27. } catch (Exception e) {
  28. e.printStackTrace();
  29. logger.logError(e.getMessage());
  30. context.setException(e);
  31. context.put("errorMsg", e.getMessage());
  32. return PosBizControlConstants.FAILURE;
  33. }
  34. return PosBizControlConstants.SUCCESS;
  35. }
  36. }