Commit 6c7de3bd authored by maliang's avatar maliang

data

parent 8d7dfb45
...@@ -7,7 +7,6 @@ import com.boot.security.server.dao.AdvertDao; ...@@ -7,7 +7,6 @@ import com.boot.security.server.dao.AdvertDao;
import com.boot.security.server.model.AdvertiserData; import com.boot.security.server.model.AdvertiserData;
import com.boot.security.server.page.table.PageTableHandler; import com.boot.security.server.page.table.PageTableHandler;
import com.boot.security.server.page.table.PageTableRequest; import com.boot.security.server.page.table.PageTableRequest;
import com.boot.security.server.page.table.PageTableResponse;
import com.boot.security.server.service.AdvertiserService; import com.boot.security.server.service.AdvertiserService;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -27,10 +26,10 @@ public class AdvertiserController { ...@@ -27,10 +26,10 @@ public class AdvertiserController {
@Autowired @Autowired
private AdvertDao advertDao; private AdvertDao advertDao;
@GetMapping("/table") @PostMapping("/table")
@ApiOperation(value = "获取广告商数据") @ApiOperation(value = "获取广告商管理数据")
@ResponseBody @ResponseBody
public String getAdvertiserData() { public String getAdvertiserManagerData(@RequestBody PageTableRequest request) {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
JSONObject item = new JSONObject(); JSONObject item = new JSONObject();
JSONArray array = new JSONArray(); JSONArray array = new JSONArray();
...@@ -46,7 +45,9 @@ public class AdvertiserController { ...@@ -46,7 +45,9 @@ public class AdvertiserController {
jsonObject.put("msg",""); jsonObject.put("msg","");
jsonObject.put("count",1); jsonObject.put("count",1);
jsonObject.put("data",array); jsonObject.put("data",array);
return jsonObject.toJSONString(); JSONObject advertiserManagerData = advertiserService.getAdvertiserManagerData(request);
System.out.println(advertiserManagerData.toJSONString());
return advertiserManagerData.toJSONString();
} }
//返回根据日期返回所有广告汇总数据 //返回根据日期返回所有广告汇总数据
@PreAuthorize("hasAuthority('advert:data:count')") @PreAuthorize("hasAuthority('advert:data:count')")
...@@ -65,11 +66,9 @@ public class AdvertiserController { ...@@ -65,11 +66,9 @@ public class AdvertiserController {
@ApiOperation(value = "获取广告主数据") @ApiOperation(value = "获取广告主数据")
@ResponseBody @ResponseBody
public String getAdvertiserData(@RequestBody PageTableRequest request) { public String getAdvertiserData(@RequestBody PageTableRequest request) {
System.out.println(request.getAdvertiserId()+"....."+request.getAdvertId());
List<AdvertiserData> advertDataList = advertDao.getAdvertData(request.getStartTime(), request.getEndTime()); List<AdvertiserData> advertDataList = advertDao.getAdvertData(request.getStartTime(), request.getEndTime());
Integer count = advertDao.getAdvertDataCount(request.getStartTime(), request.getEndTime()); Integer count = advertDao.getAdvertDataCount(request.getStartTime(), request.getEndTime());
JSONObject advertiserData = advertiserService.getAdvertiserData(request); JSONObject advertiserData = advertiserService.getAdvertiserData(request);
System.out.println(advertiserData.toJSONString()); return advertiserData.toJSONString();
return PageTableHandler.getJSONObject(advertDataList,count);
} }
} }
...@@ -15,24 +15,29 @@ public interface AdvertDao { ...@@ -15,24 +15,29 @@ public interface AdvertDao {
@Select("select count(*) from advert_data_count t where report_date>= #{startTime} and report_date<=#{endTime}") @Select("select count(*) from advert_data_count t where report_date>= #{startTime} and report_date<=#{endTime}")
Integer getAdvertDataCount(@Param("startTime") String startTime, @Param("endTime") String endTime); Integer getAdvertDataCount(@Param("startTime") String startTime, @Param("endTime") String endTime);
@Select("select advertiser_id advertiserId,advertiser_name advertiserName from advertiser_user_map t where user_id={#userId}") @Select("select advertiser_id advertiserId,advertiser_name advertiserName from advertiser_user_map t where user_id=#{userId} and status=1")
List<AdvertiserData> getAdvertiserByUserId(@Param("userId") Long userId); List<AdvertiserData> getAdvertiserByUserId(@Param("userId") Long userId);
@Select("select code_id codeId from advert_list t where advertiser_id={#advertiserId}") @Select("select code_id codeId from advert_list t where advertiser_id=#{advertiserId}")
List<AdvertiserData> getAdvertDataById(@Param("advertiserId") Integer advertiserId); List<AdvertiserData> getAdvertDataById(@Param("advertiserId") Integer advertiserId);
@Select("select *,advertiser_id advertiserId,advertiser_name,total_income totalIncome,income_seven incomeSeven,income_thirty incomeThirty,exposure_view exposureView,click_view clickView from advertiser_data_count t where advertiser_id={#advertiserId}") @Select("select *,advertiser_id advertiserId,advertiser_name,total_income totalIncome,income_seven incomeSeven,income_thirty incomeThirty,exposure_view exposureView,click_view clickView from advertiser_data_count t where advertiser_id=#{advertiserId}")
AdvertiserData getAdvertiserDataById(@Param("advertiserId") Integer advertiserId); AdvertiserData getAdvertiserDataById(@Param("advertiserId") Integer advertiserId);
@Select("select minutes,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id={#advertiserId} and report_date<={#day} and report_date<={#day} group by minutes") @Select("select minutes,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id=#{advertiserId} and report_date<=#{day} and report_date<=#{day} group by minutes")
List<AdvertiserData> getAdvertExCl(@Param("advertiserId") Integer advertiserId,@Param("day") String day); List<AdvertiserData> getAdvertExCl(@Param("advertiserId") Integer advertiserId,@Param("day") String day);
@Select("select minutes,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id={#advertiserId} and report_date<={#day} and report_date<={#day} and code_id={#codeId} group by minutes") @Select("select minutes,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id=#{advertiserId} and report_date<=#{day} and report_date<=#{day} and code_id=#{codeId} group by minutes")
List<AdvertiserData> getAdvertExCl(@Param("advertiserId") Integer advertiserId,@Param("codeId") String codeId,@Param("day") String day); List<AdvertiserData> getAdvertExCls(@Param("advertiserId") Integer advertiserId,@Param("codeId") String codeId,@Param("day") String day);
@Select("select report_date reportDate,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id={#advertiserId} and report_date>={#startTime} and report_date<={#endTime} and code_id={#codeId} group by report_date") @Select("select report_date reportDate,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id=#{advertiserId} and report_date>=#{startTime} and report_date<=#{endTime} and code_id=#{codeId} group by report_date")
List<AdvertiserData> getAdvertExClDays(@Param("advertiserId") Integer advertiserId,@Param("startTime") String startTime,@Param("endTime") String endTime); List<AdvertiserData> getAdvertExClDay(@Param("advertiserId") Integer advertiserId,@Param("startTime") String startTime,@Param("endTime") String endTime);
@Select("select report_date reportDate,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id={#advertiserId} and report_date>={#startTime} and report_date<={#endTime} and code_id={#codeId} group by report_date") @Select("select report_date reportDate,sum(exposure) exposure,sum(click) click from advertiser_data_minutes t where advertiser_id=#{advertiserId} and report_date>=#{startTime} and report_date<=#{endTime} and code_id=#{codeId} group by report_date")
List<AdvertiserData> getAdvertExClDays(@Param("advertiserId") Integer advertiserId,@Param("codeId") String codeId,@Param("startTime") String startTime,@Param("endTime") String endTime); List<AdvertiserData> getAdvertExClDays(@Param("advertiserId") Integer advertiserId,@Param("codeId") String codeId,@Param("startTime") String startTime,@Param("endTime") String endTime);
@Select("SELECT a.advertiser_id advertiserId,advertiser_name advertiserName,total_income totalIncome,exposure_view exposureView,click_view clickView,income,balance FROM(SELECT advertiser_id FROM advertiser_user_map WHERE user_id=#{userId}) a LEFT JOIN advertiser_data_count b ON a.advertiser_id=b.advertiser_id")
List<AdvertiserData> getAdvertiserDataByUserId(@Param("userId") Long userId);
@Select("SELECT count(*) FROM(SELECT advertiser_id FROM advertiser_user_map WHERE user_id=#{userId}) a LEFT JOIN advertiser_data_count b ON a.advertiser_id=b.advertiser_id")
int getAdvertiserDataByUserIdCount(@Param("userId") Long userId);
} }
...@@ -15,12 +15,21 @@ public class PageTableRequest implements Serializable { ...@@ -15,12 +15,21 @@ public class PageTableRequest implements Serializable {
private Integer offset; private Integer offset;
private Integer limit; private Integer limit;
private Integer page;
private Map<String, Object> params; private Map<String, Object> params;
private String startTime; private String startTime;
private String endTime; private String endTime;
private Integer advertiserId; private Integer advertiserId;
private String advertId; private String advertId;
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getAdvertiserId() { public Integer getAdvertiserId() {
return advertiserId; return advertiserId;
} }
......
...@@ -10,4 +10,6 @@ public interface AdvertiserService { ...@@ -10,4 +10,6 @@ public interface AdvertiserService {
* *
*/ */
JSONObject getAdvertiserData(PageTableRequest request); JSONObject getAdvertiserData(PageTableRequest request);
JSONObject getAdvertiserManagerData(PageTableRequest request);
} }
...@@ -17,6 +17,7 @@ import java.util.stream.Collectors; ...@@ -17,6 +17,7 @@ import java.util.stream.Collectors;
@Service @Service
public class AdvertiserServiceImpl implements AdvertiserService { public class AdvertiserServiceImpl implements AdvertiserService {
@Autowired @Autowired
private AdvertDao advertDao; private AdvertDao advertDao;
...@@ -31,9 +32,6 @@ public class AdvertiserServiceImpl implements AdvertiserService { ...@@ -31,9 +32,6 @@ public class AdvertiserServiceImpl implements AdvertiserService {
List<AdvertiserData> advert=new ArrayList<>(); List<AdvertiserData> advert=new ArrayList<>();
AdvertiserData schema=new AdvertiserData(); AdvertiserData schema=new AdvertiserData();
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("advertiser",advertiser);
jsonObject.put("advert",advert);
jsonObject.put("schema",schema);
LoginUser loginUser = UserUtil.getLoginUser(); LoginUser loginUser = UserUtil.getLoginUser();
if(startTime.equals(endTime)&&startTime.equals(today)){ if(startTime.equals(endTime)&&startTime.equals(today)){
...@@ -66,9 +64,9 @@ public class AdvertiserServiceImpl implements AdvertiserService { ...@@ -66,9 +64,9 @@ public class AdvertiserServiceImpl implements AdvertiserService {
schema=advertDao.getAdvertiserDataById(advertiserId); schema=advertDao.getAdvertiserDataById(advertiserId);
List<AdvertiserData> advertExCl=null; List<AdvertiserData> advertExCl=null;
if(advertId.equals("all")){ if(advertId.equals("all")){
advertExCl = advertDao.getAdvertExCl(advertiserId, advertId,startTime);
}else {
advertExCl = advertDao.getAdvertExCl(advertiserId,startTime); advertExCl = advertDao.getAdvertExCl(advertiserId,startTime);
}else {
advertExCl = advertDao.getAdvertExCls(advertiserId,advertId,startTime);
} }
JSONObject mysqlChartInfo = getMysqlChartInfo(advertExCl); JSONObject mysqlChartInfo = getMysqlChartInfo(advertExCl);
jsonObject.put("dataTime",mysqlChartInfo.get("dataTime")); jsonObject.put("dataTime",mysqlChartInfo.get("dataTime"));
...@@ -78,7 +76,7 @@ public class AdvertiserServiceImpl implements AdvertiserService { ...@@ -78,7 +76,7 @@ public class AdvertiserServiceImpl implements AdvertiserService {
}else { }else {
if(advertId.equals("all")){ if(advertId.equals("all")){
schema=advertDao.getAdvertiserDataById(advertiserId); schema=advertDao.getAdvertiserDataById(advertiserId);
List<AdvertiserData> advertExClDays = advertDao.getAdvertExClDays(advertiserId, startTime, endTime); List<AdvertiserData> advertExClDays = advertDao.getAdvertExClDay(advertiserId, startTime, endTime);
JSONObject mysqlChartInfo = getMysqlChartInfo(advertExClDays); JSONObject mysqlChartInfo = getMysqlChartInfo(advertExClDays);
jsonObject.put("dataTime",mysqlChartInfo.get("dataTime")); jsonObject.put("dataTime",mysqlChartInfo.get("dataTime"));
jsonObject.put("exposure",mysqlChartInfo.get("exposure")); jsonObject.put("exposure",mysqlChartInfo.get("exposure"));
...@@ -92,8 +90,23 @@ public class AdvertiserServiceImpl implements AdvertiserService { ...@@ -92,8 +90,23 @@ public class AdvertiserServiceImpl implements AdvertiserService {
jsonObject.put("click",mysqlChartInfo.get("click")); jsonObject.put("click",mysqlChartInfo.get("click"));
} }
} }
jsonObject.put("advertiser",advertiser);
jsonObject.put("advert",advert);
jsonObject.put("schema",schema);
return jsonObject;
}
@Override
public JSONObject getAdvertiserManagerData(PageTableRequest request) {
List<AdvertiserData> data = advertDao.getAdvertiserDataByUserId(UserUtil.getLoginUser().getId());
Integer count = advertDao.getAdvertiserDataByUserIdCount(UserUtil.getLoginUser().getId());
JSONObject jsonObject = new JSONObject();
jsonObject.put("data",data);
jsonObject.put("count",count);
jsonObject.put("code",0);
return jsonObject; return jsonObject;
} }
private JSONObject getRedisChartInfo(Integer advertiserId,String advertId){ private JSONObject getRedisChartInfo(Integer advertiserId,String advertId){
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date()); String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
...@@ -135,12 +148,14 @@ public class AdvertiserServiceImpl implements AdvertiserService { ...@@ -135,12 +148,14 @@ public class AdvertiserServiceImpl implements AdvertiserService {
} }
public static JSONObject sumByKey(Map<String, List<String>> map){ public static JSONObject sumByKey(Map<String, List<String>> map){
Object[] objects = map.keySet().toArray();
Arrays.sort(objects);
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
List<String> dataTime=new ArrayList<>(); List<String> dataTime=new ArrayList<>();
List<Integer> sum=new ArrayList<>(); List<Integer> sum=new ArrayList<>();
Iterator it=map.keySet().iterator(); //Iterator it=map.keySet().iterator();
while(it.hasNext()){ for(Object obj:objects){
String key=it.next().toString(); String key=obj.toString();
dataTime.add(key.split(",")[0]); dataTime.add(key.split(",")[0]);
Integer count=0; Integer count=0;
List<String> list = map.get(key); List<String> list = map.get(key);
......
...@@ -33,7 +33,7 @@ spring: ...@@ -33,7 +33,7 @@ spring:
servlet: servlet:
load-on-startup: 1 load-on-startup: 1
redis: redis:
host: 172.17.255.136 host: 172.17.255.212
port: 6379 port: 6379
timeout: 10s timeout: 10s
lettuce: lettuce:
......
...@@ -20,5 +20,5 @@ redis.pool.timeout=500 ...@@ -20,5 +20,5 @@ redis.pool.timeout=500
#redis集群服务数 #redis集群服务数
redis.cluster.count=1 redis.cluster.count=1
#redis集群服务地址 #redis集群服务地址
redis.cluster.master.1.host=172.17.255.136 redis.cluster.master.1.host=172.17.255.212
redis.cluster.master.1.port=6379 redis.cluster.master.1.port=6379
...@@ -30,9 +30,9 @@ ...@@ -30,9 +30,9 @@
</div> </div>
</div> </div>
<ul class="layui-nav" pc> <ul class="layui-nav" pc>
<li class="layui-nav-item"> <!--<li class="layui-nav-item">-->
<a href='javascript:;' lay-id="-997" data-url="pages/notice/noticePubList.html"><i class="fa fa-envelope-o" aria-hidden="true" title="公告" unreadNotice></i></a> <!--<a href='javascript:;' lay-id="-997" data-url="pages/notice/noticePubList.html"><i class="fa fa-envelope-o" aria-hidden="true" title="公告" unreadNotice></i></a>-->
</li> <!--</li>-->
<li class="layui-nav-item" pc> <li class="layui-nav-item" pc>
<a href="javascript:;" class="admin-header-user"> <a href="javascript:;" class="admin-header-user">
<img /> <img />
......
...@@ -102,7 +102,7 @@ function showLoginInfo(){ ...@@ -102,7 +102,7 @@ function showLoginInfo(){
}); });
} }
showUnreadNotice(); //showUnreadNotice();
function showUnreadNotice(){ function showUnreadNotice(){
$.ajax({ $.ajax({
type : 'get', type : 'get',
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
<th>本月消耗</th> <th>本月消耗</th>
</tr> </tr>
</thead> </thead>
<tbody id="advertiserTable"> <tbody name="advertiserTable" id="schema">
</tbody> </tbody>
</table> </table>
</td> </td>
...@@ -79,6 +79,12 @@ ...@@ -79,6 +79,12 @@
var day = new Date(); var day = new Date();
startTime = day.format("yyyy-MM-dd"); startTime = day.format("yyyy-MM-dd");
endTime=day.format("yyyy-MM-dd"); endTime=day.format("yyyy-MM-dd");
var advertiser=$("#advertiser");
var advert=$("#advert");
var table=$("#schema");
var dataTime;
var click;
var exposure;
function init(){ function init(){
advertiserId=$("#advertiser").val(); advertiserId=$("#advertiser").val();
...@@ -96,11 +102,29 @@ ...@@ -96,11 +102,29 @@
data : JSON.stringify(list), data : JSON.stringify(list),
//请求成功 //请求成功
success : function(result) { success : function(result) {
//setTable(result.data); var jsonObj = JSON.parse(result);
setOption(jsonObj.advertiser,jsonObj.advert);
setTable(jsonObj.schema);
dataTime=jsonObj.dataTime;
exposure=jsonObj.exposure;
click=jsonObj.click;
} }
}); });
} }
function setOption(advertiserData,advertData){
for(j = 0,len=advertiserData.length; j < len; j++) {
advertiser.append("<option value="+advertiserData[j].advertiserId+">"+advertiserData[j].advertiserName+"</option>");
}
for(j = 0,len=advertData.length; j < len; j++) {
advert.append("<option value="+advertData[j].codeId+">"+advertData[j].codeId+"</option>");
}
}
function setTable(data) {
table.append("<tr><td>"+data.balance+"</td><td>"+data.income+"</td><td>"+data.exposure+"</td><td>"+data.click+"</td><td>"+data.incomeSeven+"</td><td>"+data.incomeThirty+"</td></tr>");
}
layui.use('laydate', function(){ layui.use('laydate', function(){
var laydate = layui.laydate; var laydate = layui.laydate;
laydate.render({ laydate.render({
...@@ -120,7 +144,7 @@ ...@@ -120,7 +144,7 @@
}); });
init();
// 基于准备好的dom,初始化echarts实例 // 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main')); var myChart = echarts.init(document.getElementById('main'));
...@@ -140,7 +164,8 @@ ...@@ -140,7 +164,8 @@
xAxis: { xAxis: {
type: 'category', type: 'category',
name: '时间', name: '时间',
data: ["2020-04-16","2020-04-17","2020-04-18","2020-04-19","2020-04-20","2020-04-21","2020-04-22","2020-04-23"] // data: ["2020-04-16","2020-04-17","2020-04-18","2020-04-19","2020-04-20","2020-04-21","2020-04-22","2020-04-23"]
data:dataTime
}, },
yAxis: {name: '曝光/点击量'}, yAxis: {name: '曝光/点击量'},
series: [{ series: [{
...@@ -180,7 +205,8 @@ ...@@ -180,7 +205,8 @@
global: false // 缺省为 false global: false // 缺省为 false
} }
}, },
data: [551, 2002, 3651, 1007, 1989, 2014,2789,455] // data: [551, 2002, 3651, 1007, 1989, 2014,2789,455]
data: exposure
},{ },{
name: '点击', name: '点击',
type: 'line', type: 'line',
...@@ -218,14 +244,14 @@ ...@@ -218,14 +244,14 @@
global: false // 缺省为 false global: false // 缺省为 false
} }
}, },
data: [402, 1001, 2347, 771, 1110, 1556,2554,277] // data: [402, 1001, 2347, 771, 1110, 1556,2554,277]
data: click
}] }]
}; };
// 使用刚指定的配置项和数据显示图表。 // 使用刚指定的配置项和数据显示图表。
myChart.setOption(option); myChart.setOption(option);
init();
</script> </script>
...@@ -31,18 +31,20 @@ ...@@ -31,18 +31,20 @@
id: 'idTest' id: 'idTest'
,elem: '#demo' ,elem: '#demo'
,url: '/advertiserController/table' //数据接口 ,url: '/advertiserController/table' //数据接口
,method:'post'
,contentType:'application/json'
,toolbar:'true' ,toolbar:'true'
,page: true //开启分页 ,page: true //开启分页
,cols: [[ //表头 ,cols: [[ //表头
{field: 'id', title: 'ID', sort: true, fixed: 'left',hide:"true"} {field: 'advertiserId', title: 'advertiserId', sort: true, fixed: 'left',hide:"true"}
,{field: 'advertiser', title: '广告主名称'} ,{field: 'advertiserName', title: '广告主名称'}
,{field: 'balance', title: '余额',edit:'text'} ,{field: 'balance', title: '余额',edit:'text'}
,{field: 'AccumulatedConsumptionAmount', title: '累计消耗金额', sort: true} ,{field: 'totalIncome', title: '累计消耗金额', sort: true}
,{field: 'leader', title: '负责人'}
//,{fixed: 'right', align:'center', toolbar: '#leader'} //,{fixed: 'right', align:'center', toolbar: '#leader'}
,{field: 'yesterdayConsumptionAmount', title: '昨日消耗金额' } ,{field: 'income', title: '昨日消耗金额' }
//,{fixed: 'right', align:'center', toolbar: '#upload'} //,{fixed: 'right', align:'center', toolbar: '#upload'}
,{field: 'viewData', title: '展示数据'} ,{field: 'exposureView', title: '曝光系数'}
,{field: 'clickView', title: '点击系数'}
,{fixed: 'right', align:'center', toolbar: '#viewData'} ,{fixed: 'right', align:'center', toolbar: '#viewData'}
]] ]]
,defaultToolbar: ['filter', 'exports', { ,defaultToolbar: ['filter', 'exports', {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment