Browse Source

媒体端数据报表模块,热点管理模块,财务管理模块的更新

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

+ 17 - 20
src/main/java/com/cloudcross/ssp/model/mapper/report.sql.xml

@@ -123,21 +123,18 @@
 		</where>
 	</select>
 		<select id="findCountForDeliverEffectAnalysisOperator" parameterType="map" resultType="int">
-		select count(date) 
+		select count(date) from ((
+		select distinct date 
 		from t_rpt_zone  
 		<where>
-		<if test="zoneId==null">
-		operator_id = #{operatorId} and zone_id = 0 and date &gt;= #{startDate} and #{endDate} &gt;=date
-		</if>
+		operator_id = #{operatorId} and date &gt;= #{startDate} and #{endDate} &gt;=date
 		<if test="zoneId!=null">
-		zone_id=#{zoneId} and operator_id = #{operatorId} and date &gt;= #{startDate} and #{endDate} &gt;=date
+		and zone_id=#{zoneId}
 		</if>
 		</where>
+		) as a)
 	</select>
 	
-	
-	
-	
 		<select id="findCountForLocationAdvertiser" parameterType="map" resultType="int">
 		select count(location) from ( select location
 		from t_rpt_adv_location a, t_advertiser b
@@ -195,19 +192,18 @@
 	
 	<select id="findDeliverEffectAnalysis" parameterType="map" resultType="com.cloudcross.ssp.model.DeliverAnalysis">
 		select 
-		zone_id as zoneId,date as reportDate,pv,uv,impression,uImpression,
-		uClick,
-		100*impression/pv as fillRate,
-        click as click,100* click/impression as clickRate,ecpm as eCpm,income as income
+		zone_id as zoneId,date as reportDate,sum(pv) as pv,sum(uv) as uv,sum(impression) as impression,sum(uimpression) as uImpression,
+		sum(uclick) as uClick,
+		100*sum(impression)/sum(pv) as fillRate,
+        sum(click) as click,100* sum(click)/sum(impression) as clickRate,sum(ecpm) as eCpm,sum(income) as income
 		from t_rpt_zone 
 		<where>
-		<if test="zoneId==null">
-		operator_id = #{operatorId} and zone_id = 0 and date &gt;= #{startDate} and #{endDate} &gt;=date
-		</if>
+		operator_id = #{operatorId} and date &gt;= #{startDate} and #{endDate} &gt;=date
 		<if test="zoneId!=null">
-		operator_id = #{operatorId} and zone_id=#{zoneId} and date &gt;= #{startDate} and #{endDate} &gt;=date
+		and zone_id=#{zoneId}
 		</if>
 		</where>
+		group by date
 		limit #{pager.offset}, #{pager.limit}
 	</select>
 	
@@ -215,11 +211,12 @@
 		select sum(pv) as pv, sum(uv) as uv, sum(impression) as impression, sum(click) as click, sum(income) as income
 		from t_rpt_zone 
 		<where>
-		<if test="zoneId==null">
-		operator_id = #{operatorId} and zone_id = 0 and date &gt;= #{startDate} and #{endDate} &gt;=date
-		</if>
+		operator_id = #{operatorId}
 		<if test="zoneId!=null">
-		operator_id = #{operatorId} and zone_id=#{zoneId} and date &gt;= #{startDate} and #{endDate} &gt;=date
+		and zone_id=#{zoneId}
+		</if>
+		<if test="startDate!=null and endDate!=null"> 
+            and date &gt;= #{startDate} and #{endDate} &gt;=date
 		</if>
 		</where>
 	</select>

+ 0 - 5
src/main/java/com/cloudcross/ssp/service/impl/WifiService.java

@@ -139,8 +139,6 @@ public class WifiService implements IWifiService{
 		String searchValue = SqlHelper.doLike(paramMap.get("searchValue"));
 		paramMap.put("key", paramMap.get("searchKey"));
 		paramMap.put("value", searchValue);
-		System.out.println(paramMap.get("searchValue") + "22222");
-		System.out.println(paramMap.get("searchKey") + "11111");
 		return myBatisDao.get("wifiSqlMapper.countByParamsAdvertiser", paramMap);
 	}
 	
@@ -154,11 +152,8 @@ public class WifiService implements IWifiService{
 		String searchValue = SqlHelper.doLike(paramMap.get("searchValue"));
 		paramMap.put("key", paramMap.get("searchKey"));
 		paramMap.put("value", searchValue);
-		System.out.println(paramMap.get("searchKey") + "11111");
-		System.out.println(paramMap.get("searchValue") + "22222");
 		paramMap.put("pager", pager);
 		return myBatisDao.getList("wifiSqlMapper.selectByParams", paramMap);
-//		return null;
 	}
 	
 	@Override

+ 47 - 79
src/main/java/com/cloudcross/ssp/web/operator/main/ad/report/AdvertiserReportController.java

@@ -29,11 +29,7 @@ import com.cloudcross.ssp.service.IAdReportService;
 import com.cloudcross.ssp.service.IRptZoneHourService;
 import com.cloudcross.ssp.service.IZoneService;
 
-/**
- * 统计报表页面。
- * 
- * @author colin
- */
+
 @Controller("operator.advertiserReportController")
 @RequestMapping("/operator/main/ad/report/advertiser-report")
 public class AdvertiserReportController extends SimpleController {
@@ -70,43 +66,34 @@ public class AdvertiserReportController extends SimpleController {
 		 * 下面是对传递过来的两个参数进行处理,如果两个参数都为空值则两个参数都设为默认值,如果有一个参数有值另一个参数为空值,则
 		 * 把空值的参数设置为默认值 广告位id的默认值为空即“null”,时间的默认值为昨天
 		 */
-		if (null != paramMap) {
-			if (null == paramMap.get("selectedZoneId")
-					|| "".equals(paramMap.get("selectedZoneId"))) {
+		if (null == paramMap.get("selectedZoneId")
+				|| "".equals(paramMap.get("selectedZoneId"))) {
+			zoneId = null;
+		} else {
+			// 如果要查询的是所有广告位则让广告位id为空
+			if (-1 == Long.parseLong((String) paramMap.get("selectedZoneId"))) {
 				zoneId = null;
 			} else {
-				// 如果要查询的是所有广告位则让广告位id为空
-				if (-1 == Long.parseLong((String) paramMap
-						.get("selectedZoneId"))) {
-					zoneId = null;
-				} else {
-					zoneId = Long.parseLong((String) paramMap
-							.get("selectedZoneId"));
-				}
+				zoneId = Long
+						.parseLong((String) paramMap.get("selectedZoneId"));
 			}
+		}
 
-			if (null == paramMap.get("dateRangePicker")
-					|| "".equals(paramMap.get("dateRangePicker"))) {
-				startDate = endDate = sdf.format(new Date((new Date())
-						.getTime() - 24 * 60 * 60 * 1000));
-			} else {
-				String[] choosedDate = ((String) paramMap
-						.get("dateRangePicker")).split("to");
-				startDate = choosedDate[0].trim();
-				endDate = choosedDate[1].trim();
-			}
-		} else {
-			zoneId = null;
+		if (null == paramMap.get("dateRangePicker")
+				|| "".equals(paramMap.get("dateRangePicker"))) {
 			startDate = endDate = sdf.format(new Date((new Date()).getTime()
 					- 24 * 60 * 60 * 1000));
+		} else {
+			String[] choosedDate = ((String) paramMap.get("dateRangePicker"))
+					.split("to");
+			startDate = choosedDate[0].trim();
+			endDate = choosedDate[1].trim();
 		}
 
 		paramMap.put("zoneId", zoneId);
 		paramMap.put("startDate", startDate);
 		paramMap.put("endDate", endDate);
 
-//		int totalRow = adReportService
-//				.findCountForDeliverEffectAnalysis(paramMap);
 		int totalRow = adReportService.findCountForDeliverEffectAnalysisOperator(paramMap);
 		Pager pager = new Pager();
 		pager.setPage(page);
@@ -223,35 +210,28 @@ public class AdvertiserReportController extends SimpleController {
 		 * 下面是对传递过来的两个参数进行处理,如果两个参数都为空值则两个参数都设为默认值,如果有一个参数有值另一个参数为空值,则
 		 * 把空值的参数设置为默认值 广告位id的默认值为空即“null”,时间的默认值为昨天
 		 */
-		if (null != paramMap) {
-			if (null == paramMap.get("selectedZoneId")
-					|| "".equals(paramMap.get("selectedZoneId"))) {
+		if (null == paramMap.get("selectedZoneId")
+				|| "".equals(paramMap.get("selectedZoneId"))) {
+			zoneId = null;
+		} else {
+			// 如果要查询的是所有广告位则让广告位id为空
+			if (-1 == Long.parseLong((String) paramMap.get("selectedZoneId"))) {
 				zoneId = null;
 			} else {
-				// 如果要查询的是所有广告位则让广告位id为空
-				if (-1 == Long.parseLong((String) paramMap
-						.get("selectedZoneId"))) {
-					zoneId = null;
-				} else {
-					zoneId = Long.parseLong((String) paramMap
-							.get("selectedZoneId"));
-				}
+				zoneId = Long
+						.parseLong((String) paramMap.get("selectedZoneId"));
 			}
+		}
 
-			if (null == paramMap.get("dateRangePicker")
-					|| "".equals(paramMap.get("dateRangePicker"))) {
-				startDate = endDate = sdf.format(new Date((new Date())
-						.getTime() - 24 * 60 * 60 * 1000));
-			} else {
-				String[] choosedDate = ((String) paramMap
-						.get("dateRangePicker")).split("to");
-				startDate = choosedDate[0].trim();
-				endDate = choosedDate[1].trim();
-			}
-		} else {
-			zoneId = null;
+		if (null == paramMap.get("dateRangePicker")
+				|| "".equals(paramMap.get("dateRangePicker"))) {
 			startDate = endDate = sdf.format(new Date((new Date()).getTime()
 					- 24 * 60 * 60 * 1000));
+		} else {
+			String[] choosedDate = ((String) paramMap.get("dateRangePicker"))
+					.split("to");
+			startDate = choosedDate[0].trim();
+			endDate = choosedDate[1].trim();
 		}
 
 		paramMap.put("zoneId", zoneId);
@@ -297,7 +277,6 @@ public class AdvertiserReportController extends SimpleController {
 		paramMap.put("endDate", endDate);
 		
 		int totalRow = adReportService.countBySizeOperator(paramMap);
-		System.out.println("bbbreport" + totalRow);
 		Pager pager = new Pager();
 		pager.setPage(page);
 		pager.setTotalRow(totalRow);
@@ -305,7 +284,6 @@ public class AdvertiserReportController extends SimpleController {
 		List<DeliverAnalysis> reportList = adReportService.findBySizeOperator(paramMap,
 				pager);
 
-		System.out.println("bbbreport" + reportList);
 		model.addAllAttributes(paramMap);
 		model.addAttribute("pager", pager);
 		model.addAttribute("reportList", reportList);
@@ -320,8 +298,7 @@ public class AdvertiserReportController extends SimpleController {
 	// 位置报表控制器
 	@RequestMapping("/position")
 	public String position(Model model,
-			@RequestParam HashMap<String, Object> paramMap,
-			@RequestParam(defaultValue = "1") int page) {
+			@RequestParam HashMap<String, Object> paramMap) {
 		Account account = getLoginUser();
 		paramMap.put("operatorId", account.getOperatorId());
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -345,15 +322,10 @@ public class AdvertiserReportController extends SimpleController {
 		}
 		paramMap.put("startDate", startDate);
 		paramMap.put("endDate", endDate);
-		int totalRow = adReportService.countBySystemOperator(paramMap);
-		Pager pager = new Pager();
-		pager.setPage(page);
-		pager.setTotalRow(totalRow);
 		List<DeliverAnalysis> reportList = adReportService.findByPositionOperator(
 				paramMap);
 
 		model.addAllAttributes(paramMap);
-		model.addAttribute("pager", pager);
 		model.addAttribute("reportList", reportList);
 		//加了一个listsize
 		if (null != reportList) {
@@ -394,7 +366,6 @@ public class AdvertiserReportController extends SimpleController {
 		paramMap.put("startDate", startDate);
 		paramMap.put("endDate", endDate);
 		int totalRow = adReportService.countBySystemOperator(paramMap);
-		System.out.println("bbbreport" + totalRow);
 		Pager pager = new Pager();
 		pager.setPage(page);
 		pager.setTotalRow(totalRow);
@@ -402,7 +373,6 @@ public class AdvertiserReportController extends SimpleController {
 		List<DeliverAnalysis> reportList = adReportService.findBySystemOperator(
 				paramMap, pager);
 
-		System.out.println("bbbreport" + reportList);
 		model.addAllAttributes(paramMap);
 		model.addAttribute("pager", pager);
 		model.addAttribute("reportList", reportList);
@@ -472,8 +442,7 @@ public class AdvertiserReportController extends SimpleController {
 	// 类型报表控制器
 	@RequestMapping("/type")
 	public String type(Model model,
-			@RequestParam HashMap<String, Object> paramMap,
-			@RequestParam(defaultValue = "1") int page ) {
+			@RequestParam HashMap<String, Object> paramMap) {
 		/**
 		 * 前端要传递一个时间段默认的时间段是昨天,传递过来的参数为dateRangePicker,格式为
 		 * "2015-09-06 to 2015-09-13" 注:往前端传递的广告曝光率和点击率已经乘过100了,前端只要加个“%”就可以
@@ -503,16 +472,11 @@ public class AdvertiserReportController extends SimpleController {
 
 		paramMap.put("startDate", startDate);
 		paramMap.put("endDate", endDate);
-		int totalRow = adReportService.countBySystemOperator(paramMap);
-		Pager pager = new Pager();
-		pager.setPage(page);
-		pager.setTotalRow(totalRow);
 		List<DeliverAnalysis> reportList = adReportService
 				.findByDeviceOperator(paramMap);
 
 		model.addAllAttributes(paramMap);
 		model.addAttribute("reportList", reportList);
-		model.addAttribute("pager", pager);
 		if (null != reportList) {
 			model.addAttribute("listSize", reportList.size());
 		}
@@ -564,11 +528,19 @@ public class AdvertiserReportController extends SimpleController {
 		return page("areal");
 	}
 
-	// 查询给定省的下面地级市的pv,uv,流量占比等等信息
-	@RequestMapping("/arealCtiy")
+	/**
+	 * 查寻某省下各个市的pv,uv等信息
+	 * 前端要传递的变量名有:省,它的变量名为cn,时间段dateRangePicker,如果时间为空或者为空字符串则默认为昨天
+	 * @param model
+	 * @param paramMap
+	 * @return
+	 */
+	@RequestMapping("/arealCity")
 	public @ResponseBody List<DeliverAnalysis> arealCtiy(Model model,
 			@RequestParam HashMap<String, Object> paramMap) {
-
+		
+		paramMap.put("cn", "广东");
+		
 		Account account = getLoginUser();
 		paramMap.put("operatorId", account.getOperatorId());
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -594,6 +566,7 @@ public class AdvertiserReportController extends SimpleController {
 		paramMap.put("startDate", startDate);
 		paramMap.put("endDate", endDate);
 		
+		System.out.println("chenyou:" + paramMap);
 		List<DeliverAnalysis> reportList = adReportService.findByArealCityOperator(paramMap);
 
 		return reportList;
@@ -705,11 +678,6 @@ public class AdvertiserReportController extends SimpleController {
 		List<DeliverAnalysis> reportList = adReportService
 				.findDeliverEffectAnalysisOperator(paramMap);
 		
-		System.out.println("chenyou");
-		for(DeliverAnalysis d : reportList) {
-			System.out.println(d);
-		}
-		
 		paramMap.put("dataList", reportList);
 		response.reset();
 		// Content-Type:application/vnd.ms-excel;charset=utf8或者text/xml;charset=utf8

+ 1 - 1
src/main/java/com/cloudcross/ssp/web/operator/main/ap/ApmacController.java

@@ -164,7 +164,7 @@ public class ApmacController extends SimpleController {
 	}
 	
 	/**
-	 * 需要传递一个搜索的参数,可以按场景(name)搜索和数场景(placeName)搜索
+	 * 需要传递一个搜索的参数,可以按场景(name)搜索和数场景(placeName)搜索
 	 * @param model
 	 * @param page
 	 * @return

+ 4 - 4
src/main/java/com/cloudcross/ssp/web/operator/main/financial/FinancialManagementController.java

@@ -77,7 +77,7 @@ public class FinancialManagementController  extends SimpleController {
 		String startDate = null;
 		String endDate = null;
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-		System.out.println("chenyou" + paramMap);
+		
 		/**
 		 * 下面是对传递过来的两个参数进行处理,如果两个参数都为空值则两个参数都设为默认值,如果有一个参数有值另一个参数为空值,则
 		 * 把空值的参数设置为默认值
@@ -215,10 +215,10 @@ public class FinancialManagementController  extends SimpleController {
 		pager = new Pager();
 		paramMap.put("operatorId", operatorId);
 		// 统计符合条件的OperatorBalance总数
-		totalRow = operatorBalanceService.countByParams(paramMap);
+		totalRow = operatorBalanceService.countByParamsOperator(paramMap);
 		pager.setPage(page);
 		pager.setTotalRow(totalRow);
-		operatorBalanceList = operatorBalanceService.findByParams(paramMap, pager);
+		operatorBalanceList = operatorBalanceService.findByParamsOperator(paramMap, pager);
 		
 		model.addAttribute("operatorBalanceList", operatorBalanceList);
 		model.addAttribute("pager",pager);
@@ -253,7 +253,7 @@ public class FinancialManagementController  extends SimpleController {
 				zoneId = null;
 			} else {
 				// 如果要查询的是所有广告位则让广告位id为空
-				if (-1 == Long.parseLong((String) paramMap
+				if ("null".equals((String)paramMap.get("selectedZoneId")) || -1 == Long.parseLong((String) paramMap
 						.get("selectedZoneId"))) {
 					zoneId = null;
 				} else {