Browse Source

控制器器整合

Signed-off-by: you.chen <you.chen@cloudcross.com>
you.chen 9 years ago
parent
commit
faff44c019

+ 1 - 1
src/main/java/com/cloudcross/ssp/common/utils/AdvertiserSortByDate.java

@@ -2,7 +2,7 @@ package com.cloudcross.ssp.common.utils;
 
 import java.util.Comparator;
 
-import com.cloudcross.ssp.advertiser.model.DayParting;
+import com.cloudcross.ssp.model.DayParting;
 
 
 

+ 1 - 1
src/main/java/com/cloudcross/ssp/service/IBannerTemplateService.java

@@ -4,9 +4,9 @@ package com.cloudcross.ssp.service;
 
 import java.util.*;
 
-import com.cloudcross.ssp.advertiser.model.BannerTemplate;
 import com.cloudcross.ssp.base.service.IGenericService;
 import com.cloudcross.ssp.common.utils.Pager;
+import com.cloudcross.ssp.model.BannerTemplate;
 
 
 /**

+ 1 - 1
src/main/java/com/cloudcross/ssp/service/ICampaignService.java

@@ -6,8 +6,8 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
-import com.cloudcross.ssp.advertiser.model.Campaign;
 import com.cloudcross.ssp.base.service.IGenericService;
+import com.cloudcross.ssp.model.Campaign;
 
 
 public interface ICampaignService extends IGenericService<Campaign>{

+ 10 - 18
src/main/java/com/cloudcross/ssp/web/advertiser/main/ad/report/AdvertiserReportController.java

@@ -18,28 +18,20 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.cloudcross.ssp.advertiser.model.Account;
-import com.cloudcross.ssp.advertiser.model.DeliverAnalysis;
-import com.cloudcross.ssp.advertiser.model.Dimension;
-import com.cloudcross.ssp.advertiser.service.IAdReportService;
-import com.cloudcross.ssp.advertiser.service.IDimensionService;
 import com.cloudcross.ssp.base.dao.GenericIBatisDao;
 import com.cloudcross.ssp.base.utils.freemarker.FreemarkerTemplateProcessor;
 import com.cloudcross.ssp.base.web.SimpleController;
-import com.cloudcross.ssp.common.consts.Status;
-import com.cloudcross.ssp.common.utils.LangUtil;
 import com.cloudcross.ssp.common.utils.Pager;
+import com.cloudcross.ssp.model.DeliverAnalysis;
+import com.cloudcross.ssp.model.Dimension;
+import com.cloudcross.ssp.service.IAdReportService;
+import com.cloudcross.ssp.service.IDimensionService;
+
 
-/**
- * 统计报表页面。
- * 
- * @author colin
- */
 @Controller
 @RequestMapping("/advertiser/main/ad/report/advertiser-report")
 public class AdvertiserReportController extends SimpleController {
@@ -230,12 +222,12 @@ public class AdvertiserReportController extends SimpleController {
 				model.addAttribute("dimensionTarget",null);
 			}
 		}
-		int totalRow = adReportService.findCountForDeliverEffectAnalysis(paramMap);
+		int totalRow = adReportService.findCountForDeliverEffectAnalysisAdvertiser(paramMap);
 		Pager pager = new Pager();
 		pager.setPage(page);
 		pager.setTotalRow(totalRow);
 		
-		List<DeliverAnalysis> reportList = adReportService.findByTotalReport(paramMap, pager);
+		List<DeliverAnalysis> reportList = adReportService.findByTotalReportAdvertiser(paramMap, pager);
 			
 	//若是没有符合条件的数据,则对应的选项皆显示为0
 		if(reportList.size() == 0){
@@ -430,12 +422,12 @@ public class AdvertiserReportController extends SimpleController {
 		paramMap.put("selectedcampaignName", campaignName);
 		paramMap.put("selectedadGroupName",  adGroupName);
 		
-		int totalRow = adReportService.findCountForLocation(paramMap);
+		int totalRow = adReportService.findCountForLocationAdvertiser(paramMap);
 		Pager pager = new Pager();
 		pager.setPage(page);
 		pager.setTotalRow(totalRow);
 				
-		List<DeliverAnalysis> reportList = adReportService.findByLocation(paramMap, pager);
+		List<DeliverAnalysis> reportList = adReportService.findByLocationAdvertiser(paramMap, pager);
 			
 		model.addAllAttributes(paramMap);
 		model.addAttribute("pager", pager);
@@ -930,7 +922,7 @@ public class AdvertiserReportController extends SimpleController {
 			}
 		}
 		
-		List<DeliverAnalysis> reportList = adReportService.findByTotalReport(paramMap);
+		List<DeliverAnalysis> reportList = adReportService.findByTotalForExcelAdvertiser(paramMap);
 		if(reportList.size() == 0){
 			paramMap.put("impression", 0);
 			paramMap.put("click", 0);

+ 15 - 24
src/main/java/com/cloudcross/ssp/web/advertiser/main/ad/target/AdController.java

@@ -2,17 +2,12 @@ package com.cloudcross.ssp.web.advertiser.main.ad.target;
 
 import java.awt.Image;
 import java.awt.image.BufferedImage;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.UnsupportedEncodingException;
-import java.net.HttpURLConnection;
-import java.net.URL;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
@@ -33,7 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
@@ -41,24 +35,6 @@ import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
 import org.springframework.web.multipart.commons.CommonsMultipartResolver;
 
-import com.cloudcross.ssp.advertiser.model.Account;
-import com.cloudcross.ssp.advertiser.model.AdGroup;
-import com.cloudcross.ssp.advertiser.model.Advertiser;
-import com.cloudcross.ssp.advertiser.model.Banner;
-import com.cloudcross.ssp.advertiser.model.BannerTemplate;
-import com.cloudcross.ssp.advertiser.model.Campaign;
-import com.cloudcross.ssp.advertiser.model.Log;
-import com.cloudcross.ssp.advertiser.model.Order;
-import com.cloudcross.ssp.advertiser.model.Size;
-import com.cloudcross.ssp.advertiser.service.IAdGroupService;
-import com.cloudcross.ssp.advertiser.service.IAdvertiserService;
-import com.cloudcross.ssp.advertiser.service.IBannerService;
-import com.cloudcross.ssp.advertiser.service.IBannerTemplateService;
-import com.cloudcross.ssp.advertiser.service.ICampaignService;
-import com.cloudcross.ssp.advertiser.service.ILogService;
-import com.cloudcross.ssp.advertiser.service.IOrderService;
-import com.cloudcross.ssp.advertiser.service.ISizeService;
-import com.cloudcross.ssp.advertiser.service.impl.BannerService;
 import com.cloudcross.ssp.base.utils.freemarker.FreemarkerTemplateProcessor;
 import com.cloudcross.ssp.base.web.SimpleController;
 import com.cloudcross.ssp.common.Config;
@@ -70,6 +46,21 @@ import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.SWFHeader;
 import com.cloudcross.ssp.common.utils.SqlHelper;
 import com.cloudcross.ssp.common.utils.DateUtil.DateFmts;
+import com.cloudcross.ssp.model.AdGroup;
+import com.cloudcross.ssp.model.Banner;
+import com.cloudcross.ssp.model.BannerTemplate;
+import com.cloudcross.ssp.model.Campaign;
+import com.cloudcross.ssp.model.Log;
+import com.cloudcross.ssp.model.Order;
+import com.cloudcross.ssp.model.Size;
+import com.cloudcross.ssp.service.IAdGroupService;
+import com.cloudcross.ssp.service.IAdvertiserService;
+import com.cloudcross.ssp.service.IBannerService;
+import com.cloudcross.ssp.service.IBannerTemplateService;
+import com.cloudcross.ssp.service.ICampaignService;
+import com.cloudcross.ssp.service.ILogService;
+import com.cloudcross.ssp.service.IOrderService;
+import com.cloudcross.ssp.service.ISizeService;
 
 
 /**

+ 22 - 24
src/main/java/com/cloudcross/ssp/web/advertiser/main/ad/target/AdGroupController.java

@@ -26,34 +26,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.cloudcross.ssp.advertiser.model.Account;
-import com.cloudcross.ssp.advertiser.model.AdGroup;
-import com.cloudcross.ssp.advertiser.model.AdGroupPlace;
-import com.cloudcross.ssp.advertiser.model.Advertiser;
-import com.cloudcross.ssp.advertiser.model.Campaign;
-import com.cloudcross.ssp.advertiser.model.DayParting;
-import com.cloudcross.ssp.advertiser.model.Direct;
-import com.cloudcross.ssp.advertiser.model.Location;
-import com.cloudcross.ssp.advertiser.model.Log;
-import com.cloudcross.ssp.advertiser.model.Order;
-import com.cloudcross.ssp.advertiser.model.Place;
-import com.cloudcross.ssp.advertiser.model.Wifi;
-import com.cloudcross.ssp.advertiser.service.IAdGroupPlaceService;
-import com.cloudcross.ssp.advertiser.service.IAdGroupService;
-import com.cloudcross.ssp.advertiser.service.IAdvertiserService;
-import com.cloudcross.ssp.advertiser.service.IBannerService;
-import com.cloudcross.ssp.advertiser.service.ICampaignService;
-import com.cloudcross.ssp.advertiser.service.IDirectService;
-import com.cloudcross.ssp.advertiser.service.ILocationService;
-import com.cloudcross.ssp.advertiser.service.ILogService;
-import com.cloudcross.ssp.advertiser.service.IOrderService;
-import com.cloudcross.ssp.advertiser.service.IPlaceService;
-import com.cloudcross.ssp.advertiser.service.IWifiService;
 import com.cloudcross.ssp.base.utils.freemarker.FreemarkerTemplateProcessor;
 import com.cloudcross.ssp.base.web.SimpleController;
 import com.cloudcross.ssp.common.consts.AdvertiserDirectType;
@@ -63,6 +39,28 @@ import com.cloudcross.ssp.common.utils.LangUtil;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.AdvertiserSortByDate;
 import com.cloudcross.ssp.common.utils.SqlHelper;
+import com.cloudcross.ssp.model.AdGroup;
+import com.cloudcross.ssp.model.AdGroupPlace;
+import com.cloudcross.ssp.model.Advertiser;
+import com.cloudcross.ssp.model.Campaign;
+import com.cloudcross.ssp.model.DayParting;
+import com.cloudcross.ssp.model.Direct;
+import com.cloudcross.ssp.model.Location;
+import com.cloudcross.ssp.model.Log;
+import com.cloudcross.ssp.model.Order;
+import com.cloudcross.ssp.model.Place;
+import com.cloudcross.ssp.model.Wifi;
+import com.cloudcross.ssp.service.IAdGroupPlaceService;
+import com.cloudcross.ssp.service.IAdGroupService;
+import com.cloudcross.ssp.service.IAdvertiserService;
+import com.cloudcross.ssp.service.IBannerService;
+import com.cloudcross.ssp.service.ICampaignService;
+import com.cloudcross.ssp.service.IDirectService;
+import com.cloudcross.ssp.service.ILocationService;
+import com.cloudcross.ssp.service.ILogService;
+import com.cloudcross.ssp.service.IOrderService;
+import com.cloudcross.ssp.service.IPlaceService;
+import com.cloudcross.ssp.service.IWifiService;
 
 
 

+ 6 - 20
src/main/java/com/cloudcross/ssp/web/advertiser/main/ad/target/CampaignController.java

@@ -14,30 +14,26 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang.ArrayUtils;
-import org.apache.ibatis.binding.MapperMethod.ParamMap;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.cloudcross.ssp.advertiser.model.Account;
-import com.cloudcross.ssp.advertiser.model.Campaign;
-import com.cloudcross.ssp.advertiser.model.Log;
-import com.cloudcross.ssp.advertiser.model.Order;
-import com.cloudcross.ssp.advertiser.service.IAdvertiserService;
-import com.cloudcross.ssp.advertiser.service.ICampaignService;
-import com.cloudcross.ssp.advertiser.service.ILogService;
-import com.cloudcross.ssp.advertiser.service.IOrderService;
 import com.cloudcross.ssp.base.utils.freemarker.FreemarkerTemplateProcessor;
 import com.cloudcross.ssp.base.web.SimpleController;
 import com.cloudcross.ssp.common.consts.Status;
 import com.cloudcross.ssp.common.utils.Common;
 import com.cloudcross.ssp.common.utils.LangUtil;
 import com.cloudcross.ssp.common.utils.Pager;
+import com.cloudcross.ssp.model.Campaign;
+import com.cloudcross.ssp.model.Log;
+import com.cloudcross.ssp.service.IAdvertiserService;
+import com.cloudcross.ssp.service.ICampaignService;
+import com.cloudcross.ssp.service.ILogService;
+import com.cloudcross.ssp.service.IOrderService;
 
 /**
  * 广告投放-活动页面控制。
@@ -109,11 +105,6 @@ public class CampaignController extends SimpleController {
 			paramMap.put("advMark", "全部");
 		}
 		
-		System.out.println("xiaohuamao"+paramMap);
-		System.out.println("xiaohuamao1"+orderId + paramMap.get("advertiserId"));
-		System.out.println("advers111:" + paramMap.get("advertiserId"));
-		
-		
 		//状态判断
 		if (status != 2) {
 			paramMap.put("status", new Integer(status));
@@ -174,7 +165,6 @@ public class CampaignController extends SimpleController {
 		//加上登录代理商Id
 		com.cloudcross.ssp.back.model.Account account = getLoginUser();
 		model.addAttribute("agentId", account.getAgentId());
-		System.out.println("111111111111111" + orderId + advertiserId);
 		return page("create");
 	}
 	
@@ -191,13 +181,11 @@ public class CampaignController extends SimpleController {
 			@RequestParam Map<String, Object> paramMap) {
 //		model.addAttribute("advertiserId", paramMap.get("advertiserId"));
 		model.addAttribute("orderId", t.getOrderId());
-	 System.out.println("222222222222" + t.getOrderId());
 		model.addAttribute("advertiserId", t.getAdvertiserId());
 		model.addAttribute("agentId",t.getAgentId());
 		if (t.getId() == null) {
 			//选择活动的周期
 			String dateRange =(String) paramMap.get("pickTime");
-			System.out.println("dateRange" + dateRange + "88888888888888888");
 			
 			String[] tmpDate = dateRange.split("to");
 			String startDateFront = tmpDate[0].trim() + " 00:00:00";
@@ -389,7 +377,6 @@ public class CampaignController extends SimpleController {
 				Log log= new Log();
 				log.setModule("Campaign");//对应模块
 				log.setTableName("t_campaign");//对应的表名
-				System.out.println(id[i]+"123");
 				log.setRecordId(id[i]);//对应活动id
 				log.setActionType("开启");//操作类型
 				log.setAction("开启活动: "+list.get(i));//变更详情,活动名称
@@ -423,7 +410,6 @@ public class CampaignController extends SimpleController {
 				Log log= new Log();
 				log.setModule("Campaign");//对应模块
 				log.setTableName("t_campaign");//对应的表名
-				System.out.println(id[i]+"123");
 				log.setRecordId(id[i]);//对应活动id
 				log.setActionType("停用");	//操作类型
 				log.setAction("停用活动: "+list.get(i));//变更详情,活动名称

+ 132 - 0
src/main/resources/template/excel/auditBanner.ftl

@@ -0,0 +1,132 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+3}<#else>3</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">素材审核: </Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">下载日期:${downTime!} </Data></Cell>
+   </Row>
+   <Row>
+   <Cell><Data ss:Type="String">id</Data></Cell>
+	    <Cell><Data ss:Type="String">创意</Data></Cell>
+	   	<Cell><Data ss:Type="String">创意名称</Data></Cell>
+	    <Cell><Data ss:Type="String">创意链接</Data></Cell>
+	    <Cell><Data ss:Type="String">尺寸</Data></Cell>
+	    <Cell><Data ss:Type="String">行业</Data></Cell>
+	    <Cell><Data ss:Type="String">广告主</Data></Cell>
+	   	<Cell><Data ss:Type="String">状态</Data></Cell>
+	   	<Cell><Data ss:Type="String">最后更新时间</Data></Cell>
+   </Row>
+<#if auditBannerList ??>
+     <#list auditBannerList as auditBanner>   
+		   <Row>
+		   <Cell><Data ss:Type="String">${auditBanner.id!}</Data></Cell>
+		   	 <Cell><Data ss:Type="String">${auditBanner.bannerTemplate.path!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${auditBanner.bannerTemplate.name!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${auditBanner.visitAddress!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${auditBanner.bannerTemplate.width!}x${auditBanner.bannerTemplate.height!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${auditBanner.industryName!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${auditBanner.advertiserName!}</Data></Cell>
+	   		<Cell><Data ss:Type="String"><#if auditBanner.checked == 0>未审核<#else>已审核</#if></Data></Cell>
+	    	<Cell><Data ss:Type="String">${auditBanner.updated?datetime}</Data></Cell>
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 136 - 0
src/main/resources/template/excel/auditReport.ftl

@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+3}<#else>3</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">公司名:${regName!} </Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">开始日期:${startDate!}    结束日期:${endDate!}</Data></Cell>
+   </Row>
+   <Row>
+	   
+	   	
+	    <Cell><Data ss:Type="String">广告主名称</Data></Cell>
+	    <Cell><Data ss:Type="String">广告主行业</Data></Cell>
+	    <Cell><Data ss:Type="String">广告主注册名</Data></Cell>
+	    <Cell><Data ss:Type="String">代理商名称</Data></Cell>
+	    <Cell><Data ss:Type="String">审核状态(0未审核,1审核通过,-1审核未通过)</Data></Cell>
+	    <Cell><Data ss:Type="String">联系人</Data></Cell>
+	     <Cell><Data ss:Type="String">电话</Data></Cell>
+	      <Cell><Data ss:Type="String">邮箱</Data></Cell>	   	
+	    <Cell><Data ss:Type="String">最后更新日期</Data></Cell>
+	   </Row>
+<#if dataList ??>
+     <#list dataList as deliverAnalysis>   
+		   <Row>
+		   	
+	   		
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.name!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.industryName!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.regName!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.agentName!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.checkStatus!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.contacts!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.tel!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.email!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.updated?datetime}</Data></Cell> 
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 125 - 0
src/main/resources/template/excel/dataAccount.ftl

@@ -0,0 +1,125 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+2}<#else>2</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="6"><Data ss:Type="String">${accountList!} </Data></Cell>
+   </Row>
+   <Row>
+	   
+	   	<Cell><Data ss:Type="String">ID</Data></Cell>
+	    <Cell><Data ss:Type="String">账号 </Data></Cell>
+	    <Cell><Data ss:Type="String">姓名 </Data></Cell>
+	    <Cell><Data ss:Type="String">联系电话 </Data></Cell>
+	   	<Cell><Data ss:Type="String">状态</Data></Cell>
+	    <Cell><Data ss:Type="String">最后登录日期</Data></Cell>
+	   </Row>
+<#if dataList ??>
+     <#list dataList as deliverAnalysis>   
+		   <Row>
+		   	
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.id!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.accountName}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.realName!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.tel!}</Data></Cell>
+	    	<Cell><Data ss:Type="String"><#if deliverAnalysis.state=="1">正常<#else>暂停</#if></Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.createTime?datetime}</Data></Cell>
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 130 - 0
src/main/resources/template/excel/dataClientAccount.ftl

@@ -0,0 +1,130 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+2}<#else>2</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">${accountList!} </Data></Cell>
+   </Row>
+   <Row>
+	   
+	   	<Cell><Data ss:Type="String">ID</Data></Cell>
+	    <Cell><Data ss:Type="String">账号 </Data></Cell>
+	    <Cell><Data ss:Type="String">公司名称 </Data></Cell>
+	    <Cell><Data ss:Type="String">联系人 </Data></Cell>
+	    <Cell><Data ss:Type="String">联系电话 </Data></Cell>
+	    <Cell><Data ss:Type="String">固定电话 </Data></Cell>
+	    <Cell><Data ss:Type="String">账号类型 </Data></Cell>
+	   	<Cell><Data ss:Type="String">状态</Data></Cell>
+	    <Cell><Data ss:Type="String">最后登录日期</Data></Cell>
+	   </Row>
+<#if dataList ??>
+     <#list dataList as deliverAnalysis>   
+		   <Row>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.id!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.accountName}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.companyName!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.linkMan!}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.mobilePhone}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${deliverAnalysis.tel!}</Data></Cell>
+	   		<Cell><Data ss:Type="String"><#if deliverAnalysis.sysType==2>媒体<#elseif deliverAnalysis.sysType==3>需求方</#if></Data></Cell>
+	   		<Cell><Data ss:Type="String"><#if deliverAnalysis.status==1>正常<#else>暂停</#if></Data></Cell>
+	    	<Cell><Data ss:Type="String">${deliverAnalysis.loginTime?datetime}</Data></Cell>
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 184 - 0
src/main/resources/template/excel/dataReport.ftl

@@ -0,0 +1,184 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+4}<#else>4</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">所选维度:<#if dimension??>${dimension}<#else>广告主</#if> </Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">开始日期:${startDate!}    结束日期:${endDate!}</Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">广告主:<#if advertiserName??>${advertiserName}</#if>   订单:<#if orderName??>${orderName}</#if>    活动:<#if campaignName??>${campaignName}</#if>    投放:<#if adGroupName??>${adGroupName}</#if></Data></Cell>
+   </Row>
+   <Row>
+   
+	 <#if dimensionTargetlist??> 
+	 <#list dimensionTargetlist as dimension>
+  	 		<Cell ss:MergeAcross="${dimension.dimension!}"><Data ss:Type="String"></Data></Cell>
+	 </#list>
+	 <#else>
+	   	<Cell ss:MergeAcross="广告主"><Data ss:Type="String"></Data></Cell>
+	 </#if>
+   
+   	 <#if impression??><Cell ss:MergeAcross="0"><Data ss:Type="String">曝光</Data></Cell></#if>
+   	 <#if click??><Cell ss:MergeAcross="1"><Data ss:Type="String">点击</Data></Cell></#if>
+   	 <#if visit??><Cell ss:MergeAcross="1"><Data ss:Type="String">到达</Data></Cell></#if>
+   	 <#if conversion??><Cell ss:MergeAcross="1"><Data ss:Type="String">转化</Data></Cell></#if>
+   	 <#if consume??><Cell ss:MergeAcross="1"><Data ss:Type="String">花费</Data></Cell></#if>
+   </Row>
+   <Row>
+   		<#if dimensionTargetlist??> 
+		<#list dimensionTargetlist as dimension>
+	  	 	<Cell><Data ss:Type="String">${dimension.dimension}</Data></Cell>
+		</#list>
+		<#else>
+		   	<Cell><Data ss:Type="String">广告主</Data></Cell>
+		</#if>
+	    
+		<#if impression??><Cell><Data ss:Type="String">曝光数</Data></Cell></#if>
+		
+		<#if click??><Cell><Data ss:Type="String">点击数</Data></Cell></#if>
+		<#if click??><Cell><Data ss:Type="String">点击率</Data></Cell></#if>
+		
+		<#if visit??><Cell><Data ss:Type="String">到达数</Data></Cell></#if>
+		<#if visit??><Cell><Data ss:Type="String">到达率</Data></Cell></#if>
+	    
+	    <#if conversion??><Cell><Data ss:Type="String">转化数</Data></Cell></#if>
+	    <#if conversion??><Cell><Data ss:Type="String">转化率</Data></Cell></#if>
+	     
+	    <#if consume??><Cell><Data ss:Type="String">eCPM</Data></Cell></#if>
+	    <#if consume??><Cell><Data ss:Type="String">花费</Data></Cell></#if>
+	     
+   </Row>
+<#if reportList ??>
+     <#list reportList as deliverAnalysis>   
+		   <Row>
+		   	
+		   	<#if dimensionTargetlist??> 
+			<#list dimensionTargetlist as dimension>
+		  	 	<Cell><Data ss:Type="String">${deliverAnalysis[dimension.dimensionTarget]}</Data></Cell>
+			</#list>
+			<#else>
+			   	<Cell><Data ss:Type="String">广告主</Data></Cell>
+			</#if>
+		   	<#if advertiserName??><Cell><Data ss:Type="String">${deliverAnalysis.advertiserName!}</Data></Cell></#if>
+	      	<#if orderName??><Cell><Data ss:Type="String">${deliverAnalysis.orderName!}</Data></Cell></#if>
+	    	<#if campaignName??><Cell><Data ss:Type="String">${deliverAnalysis.campaignName!}</Data></Cell></#if>
+	    	<#if adGroupName??><Cell><Data ss:Type="String">${deliverAnalysis.adGroupName!}</Data></Cell></#if>
+	    	<#if bannerName??><Cell><Data ss:Type="String">${deliverAnalysis.bannerTemplateName!}</Data></Cell></#if>
+	    	<#if reportDate??><Cell><Data ss:Type="String">${deliverAnalysis.reportDate!}</Data></Cell></#if>
+	    
+			<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impression!}</Data></Cell></#if>
+		
+			<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.click!}</Data></Cell></#if>
+			<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.clickRate!}%</Data></Cell></#if>
+			
+			<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visit!}</Data></Cell></#if>
+			<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visitRate!}%</Data></Cell></#if>
+			
+	     	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversion!}</Data></Cell></#if>
+	     	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversionRate!}%</Data></Cell></#if>
+	     	
+	     	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.eCmp!}</Data></Cell></#if>
+	     	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.consume!}</Data></Cell></#if>
+	     	
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 216 - 0
src/main/resources/template/excel/dataRequestReport.ftl

@@ -0,0 +1,216 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+4}<#else>4</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">所选维度:<#if dimension??>${dimension!}<#else>日期</#if> </Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">开始日期:${startDate!}    结束日期:${endDate!}</Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">广告主:<#if advertiserName??>${advertiserName!}</#if>   订单:<#if orderName??>${orderName!}</#if>    活动:<#if campaignName??>${campaignName!}</#if>    投放:<#if adGroupName??>${adGroupName!}</#if></Data></Cell>
+   </Row>
+   <Row>
+   
+	 <#if dimensionTargetlist??> 
+	 <#list dimensionTargetlist as dimension>
+  	 		<Cell ss:MergeAcross="${dimension.dimension!}"><Data ss:Type="String"></Data></Cell>
+	 </#list>
+	 <#else>
+	   	<Cell ss:MergeAcross="日期"><Data ss:Type="String"></Data></Cell>
+	 </#if>
+   
+   	 <#if impression??><Cell ss:MergeAcross="0"><Data ss:Type="String">曝光</Data></Cell></#if>
+   	 <#if click??><Cell ss:MergeAcross="1"><Data ss:Type="String">点击</Data></Cell></#if>
+   	 <#if visit??><Cell ss:MergeAcross="1"><Data ss:Type="String">到达</Data></Cell></#if>
+   	 <#if conversion??><Cell ss:MergeAcross="1"><Data ss:Type="String">转化</Data></Cell></#if>
+   	 <#if consume??><Cell ss:MergeAcross="1"><Data ss:Type="String">花费</Data></Cell></#if>
+   </Row>
+   <Row>
+   		<#if dimensionTargetlist??> 
+		<#list dimensionTargetlist as dimension>
+	  	 	<Cell><Data ss:Type="String">${dimension.dimension!}</Data></Cell>
+		</#list>
+		<#else>
+		   	<Cell><Data ss:Type="String">日期</Data></Cell>
+		</#if>
+	    
+		<#if impression??><Cell><Data ss:Type="String">曝光数</Data></Cell></#if>
+		
+		<#if click??><Cell><Data ss:Type="String">点击数</Data></Cell></#if>
+		<#if click??><Cell><Data ss:Type="String">点击率</Data></Cell></#if>
+		
+		<#if visit??><Cell><Data ss:Type="String">到达数</Data></Cell></#if>
+		<#if visit??><Cell><Data ss:Type="String">到达率</Data></Cell></#if>
+	    
+	    <#if conversion??><Cell><Data ss:Type="String">转化数</Data></Cell></#if>
+	    <#if conversion??><Cell><Data ss:Type="String">转化率</Data></Cell></#if>
+	     
+	    <#if consume??><Cell><Data ss:Type="String">eCPM</Data></Cell></#if>
+	    <#if consume??><Cell><Data ss:Type="String">花费</Data></Cell></#if>
+	     
+   </Row>
+   
+   <Row>
+   		<#if dimensionTargetlist??> 
+		<#list dimensionTargetlist as reportMap>
+	  	 	<Cell><Data ss:Type="String">总计</Data></Cell>
+	  	</#list>
+	  	<#else>
+	   		<Cell><Data ss:Type="String">总计</Data></Cell>
+	 	</#if>
+	    
+		<#if impression??><Cell><Data ss:Type="String">${impressionSum!}</Data></Cell></#if>
+		
+		<#if click??><Cell><Data ss:Type="String">${clickSum!}</Data></Cell></#if>
+		<#if click??><Cell><Data ss:Type="String">${clickRatesum!}</Data></Cell></#if>
+		
+		<#if visit??><Cell><Data ss:Type="String">${visitSum!}</Data></Cell></#if>
+		<#if visit??><Cell><Data ss:Type="String">${visitRatesum!}</Data></Cell></#if>
+	    
+	    <#if conversion??><Cell><Data ss:Type="String">${conversionSum!}</Data></Cell></#if>
+	    <#if conversion??><Cell><Data ss:Type="String">${conversionRatesum!}</Data></Cell></#if>
+	     
+	    <#if consume??><Cell><Data ss:Type="String">${eCmpSum!}</Data></Cell></#if>
+	    <#if consume??><Cell><Data ss:Type="String">${consumeSum!}</Data></Cell></#if>
+	     
+   </Row>
+<#if reportList ??>
+     <#list reportList as deliverAnalysis>   
+		   <Row>
+		   	
+		   	<#if dimensionTargetlist??> 
+			<#list dimensionTargetlist as dimension>
+				<#if dimension.dimensionTarget == "reportDate">
+					<#setting datetime_format="yyyy-MM-dd"/> 
+					<Cell><Data ss:Type="String">${deliverAnalysis[dimension.dimensionTarget]!?datetime}</Data></Cell>
+				<#else>
+					<Cell><Data ss:Type="String">${deliverAnalysis[dimension.dimensionTarget]!}</Data></Cell>
+				</#if>
+			</#list>
+			<#else>
+				<#setting datetime_format="yyyy-MM-dd"/> 
+			   	<Cell><Data ss:Type="String">${deliverAnalysis.reportDate!?datetime}</Data></Cell>
+			</#if>
+			<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impression!}</Data></Cell></#if>
+			
+			
+			
+			<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.click!}</Data></Cell></#if>
+			<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.clickRate!}%</Data></Cell></#if>
+			
+			
+			
+			<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visit!}</Data></Cell></#if>
+			<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visitRate!}%</Data></Cell></#if>
+			
+			
+			
+	     	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversion!}</Data></Cell></#if>
+	     	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversionRate!}%</Data></Cell></#if>
+	     	
+	     	
+	     
+	     	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.eCmp!}</Data></Cell></#if>
+	     	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.consume!}</Data></Cell></#if>
+	     	
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 116 - 0
src/main/resources/template/excel/deposit.ftl

@@ -0,0 +1,116 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+1}<#else>1</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+	    <Cell><Data ss:Type="String">日期</Data></Cell>
+	   	<Cell><Data ss:Type="String">广告主/代理商</Data></Cell>
+	    <Cell><Data ss:Type="String">充值金额</Data></Cell>
+	    <Cell><Data ss:Type="String">余额</Data></Cell>
+   </Row>
+<#if dataList ??>
+     <#list dataList as data>   
+		   <Row>
+		   	 <Cell><Data ss:Type="String">${data.actTime?string('yyyy/MM/dd')}</Data></Cell>
+	   		<Cell><Data ss:Type="String">${data.agentName!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${data.charge!}</Data></Cell>
+	    	<Cell><Data ss:Type="String">${data.balance!}</Data></Cell>
+		   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 162 - 0
src/main/resources/template/excel/otherReport.ftl

@@ -0,0 +1,162 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+4}<#else>4</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">开始日期:${startDate!}    结束日期:${endDate!}</Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">广告主:<#if selectedadvertiserName??>${selectedadvertiserName}</#if>   订单:<#if selectedorderName??>${selectedorderName}</#if>    活动:<#if selectedcampaignName??>${selectedcampaignName}</#if>    投放:<#if selectedadGroupName??>${selectedadGroupName}</#if></Data></Cell>
+   </Row>
+   <Row>
+   	<Cell><Data ss:Type="String"></Data></Cell>
+   	<#if impression??><Cell ss:MergeAcross="1"><Data ss:Type="String">曝光</Data></Cell></#if>
+   	<#if click??><Cell ss:MergeAcross="1"><Data ss:Type="String">点击</Data></Cell></#if>
+   	<#if visit??><Cell ss:MergeAcross="1"><Data ss:Type="String">到达</Data></Cell></#if>
+   	<#if conversion??><Cell ss:MergeAcross="1"><Data ss:Type="String">转化</Data></Cell></#if>
+   	<#if consume??><Cell ss:MergeAcross="1"><Data ss:Type="String">花费</Data></Cell></#if>
+   </Row>
+   <Row>
+   	
+   	<Cell><Data ss:Type="String"></Data></Cell>
+   	
+   	<#if impression??><Cell><Data ss:Type="String">曝光占比</Data></Cell></#if>
+	<#if impression??><Cell><Data ss:Type="String">曝光数</Data></Cell></#if>
+		
+	<#if click??><Cell><Data ss:Type="String">点击数</Data></Cell></#if>
+	<#if click??><Cell><Data ss:Type="String">点击率</Data></Cell></#if>
+		
+	<#if visit??><Cell><Data ss:Type="String">到达数</Data></Cell></#if>
+	<#if visit??><Cell><Data ss:Type="String">到达率</Data></Cell></#if>
+	    
+	<#if conversion??><Cell><Data ss:Type="String">转化数</Data></Cell></#if>
+	<#if conversion??><Cell><Data ss:Type="String">转化率</Data></Cell></#if>
+	     
+	<#if consume??><Cell><Data ss:Type="String">eCPM</Data></Cell></#if>
+	<#if consume??><Cell><Data ss:Type="String">花费</Data></Cell></#if>
+   
+   </Row>
+   
+<#if dataList ??>
+     <#list dataList as deliverAnalysis>   
+	<Row>
+	<#if location??>
+	<Cell><Data ss:Type="String">${deliverAnalysis.location!}</Data></Cell>
+   	</#if>
+   	<#if system??><Cell><Data ss:Type="String"><#if deliverAnalysis.system==1>windows<#elseif deliverAnalysis.system==2>ios<#elseif deliverAnalysis.system==3>android<#elseif deliverAnalysis.system==4>mac<#elseif deliverAnalysis.system==5>wp<#elseif deliverAnalysis.system==6>other</#if></Data></Cell></#if>
+   	<#if place??><Cell><Data ss:Type="String">${deliverAnalysis.place!}</Data></Cell></#if>
+   	
+   	<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impressionRate!}%</Data></Cell></#if>
+   	<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impression!}</Data></Cell></#if>
+		
+	<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.click!}</Data></Cell></#if>
+	<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.clickRate!}%</Data></Cell></#if>
+			
+	<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visit!}</Data></Cell></#if>
+	<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visitRate!}%</Data></Cell></#if>
+			
+	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversion!}</Data></Cell></#if>
+	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversionRate!}%</Data></Cell></#if>
+	     	
+	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.eCmp!}</Data></Cell></#if>
+	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.consume!}</Data></Cell></#if>
+   	
+   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>

+ 162 - 0
src/main/resources/template/excel/otherRequestReport.ftl

@@ -0,0 +1,162 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+  <Author>adnetwork</Author>
+  <LastAuthor>adnetwork</LastAuthor>
+  <Created>2014-10-15T06:05:44Z</Created>
+  <Version>14.00</Version>
+ </DocumentProperties>
+ <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
+  <AllowPNG/>
+ </OfficeDocumentSettings>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+  <WindowHeight>5130</WindowHeight>
+  <WindowWidth>16155</WindowWidth>
+  <WindowTopX>240</WindowTopX>
+  <WindowTopY>45</WindowTopY>
+  <ProtectStructure>False</ProtectStructure>
+  <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+  <Style ss:ID="Default" ss:Name="Normal">
+   <Alignment ss:Vertical="Center"/>
+   <Borders/>
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
+   <Interior/>
+   <NumberFormat/>
+   <Protection/>
+  </Style>
+  <Style ss:ID="s63" ss:Name="超链接">
+   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#0000FF"
+    ss:Underline="Single"/>
+  </Style>
+  <Style ss:ID="s65">
+   <NumberFormat ss:Format="Short Date"/>
+  </Style>
+  <Style ss:ID="s66">
+   <NumberFormat ss:Format="0%"/>
+  </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+  <Table ss:ExpandedColumnCount="${column!}" ss:ExpandedRowCount="<#if dataSize??>${dataSize+4}<#else>4</#if>" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+   <Column ss:AutoFitWidth="0" ss:Width="114"/>
+   <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
+   <Column ss:AutoFitWidth="0" ss:Width="93" ss:Span="1"/>
+   <Column ss:Index="5" ss:AutoFitWidth="0" ss:Width="74.25"/>
+   <Column ss:Width="63"/>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">开始日期:${startDate!}    结束日期:${endDate!}</Data></Cell>
+   </Row>
+   <Row>
+    <Cell ss:MergeAcross="9"><Data ss:Type="String">广告主:<#if advertiserName??>${advertiserName}</#if>   订单:<#if orderName??>${orderName}</#if>    活动:<#if campaignName??>${campaignName}</#if>    投放:<#if adGroupName??>${adGroupName}</#if></Data></Cell>
+   </Row>
+   <Row>
+   	<Cell><Data ss:Type="String"></Data></Cell>
+   	<#if impression??><Cell ss:MergeAcross="1"><Data ss:Type="String">曝光</Data></Cell></#if>
+   	<#if click??><Cell ss:MergeAcross="1"><Data ss:Type="String">点击</Data></Cell></#if>
+   	<#if visit??><Cell ss:MergeAcross="1"><Data ss:Type="String">到达</Data></Cell></#if>
+   	<#if conversion??><Cell ss:MergeAcross="1"><Data ss:Type="String">转化</Data></Cell></#if>
+   	<#if consume??><Cell ss:MergeAcross="1"><Data ss:Type="String">花费</Data></Cell></#if>
+   </Row>
+   <Row>
+   	
+   	<Cell><Data ss:Type="String"></Data></Cell>
+   	
+   	<#if impression??><Cell><Data ss:Type="String">曝光占比</Data></Cell></#if>
+	<#if impression??><Cell><Data ss:Type="String">曝光数</Data></Cell></#if>
+		
+	<#if click??><Cell><Data ss:Type="String">点击数</Data></Cell></#if>
+	<#if click??><Cell><Data ss:Type="String">点击率</Data></Cell></#if>
+		
+	<#if visit??><Cell><Data ss:Type="String">到达数</Data></Cell></#if>
+	<#if visit??><Cell><Data ss:Type="String">到达率</Data></Cell></#if>
+	    
+	<#if conversion??><Cell><Data ss:Type="String">转化数</Data></Cell></#if>
+	<#if conversion??><Cell><Data ss:Type="String">转化率</Data></Cell></#if>
+	     
+	<#if consume??><Cell><Data ss:Type="String">eCPM</Data></Cell></#if>
+	<#if consume??><Cell><Data ss:Type="String">花费</Data></Cell></#if>
+   
+   </Row>
+   
+<#if dataList ??>
+     <#list dataList as deliverAnalysis>   
+	<Row>
+	<#if location??>
+	<Cell><Data ss:Type="String">${deliverAnalysis.location!}</Data></Cell>
+   	</#if>
+   	<#if system??><Cell><Data ss:Type="String">${deliverAnalysis.system!}</Data></Cell></#if>
+   	<#if place??><Cell><Data ss:Type="String">${deliverAnalysis.place!}</Data></Cell></#if>
+   	
+   	<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impressionRate!}%</Data></Cell></#if>
+   	<#if impression??><Cell><Data ss:Type="String">${deliverAnalysis.impression!}</Data></Cell></#if>
+		
+	<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.click!}</Data></Cell></#if>
+	<#if click??><Cell><Data ss:Type="String">${deliverAnalysis.clickRate!}%</Data></Cell></#if>
+			
+	<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visit!}</Data></Cell></#if>
+	<#if visit??><Cell><Data ss:Type="String">${deliverAnalysis.visitRate!}%</Data></Cell></#if>
+			
+	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversion!}</Data></Cell></#if>
+	<#if conversion??><Cell><Data ss:Type="String">${deliverAnalysis.conversionRate!}%</Data></Cell></#if>
+	     	
+	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.eCmp!}</Data></Cell></#if>
+	<#if consume??><Cell><Data ss:Type="String">${deliverAnalysis.consume!}</Data></Cell></#if>
+   	
+   </Row>
+	 </#list>
+  </#if>   
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <Selected/>
+   <Panes>
+    <Pane>
+     <Number>3</Number>
+     <ActiveRow>7</ActiveRow>
+     <ActiveCol>8</ActiveCol>
+    </Pane>
+   </Panes>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
+   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
+  </Table>
+  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+   <PageSetup>
+    <Header x:Margin="0.3"/>
+    <Footer x:Margin="0.3"/>
+    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
+   </PageSetup>
+   <ProtectObjects>False</ProtectObjects>
+   <ProtectScenarios>False</ProtectScenarios>
+  </WorksheetOptions>
+ </Worksheet>
+</Workbook>