김예미

update menu1 - js mysql query async

......@@ -16,7 +16,7 @@
<div id="menu_bar">
<ul id="menu">
<li class="menu1">통계 분석</li>
<li class="menu2" id="analysis1">최근 통계</li>
<li class="menu2" id="analysis1">최근 6개월 통계</li>
<li class="menu2" id="analysis2">전체 통계</li>
<li class="menu2" id="analysis3">특정 기간 통계</li>
<form name="dateForm" method="post" id="dateForm">
......@@ -34,7 +34,7 @@
</form>
<li class="menu2" id="analysis4_list"></li>
<li class="menu1">목록 분석</li>
<li class="menu2" id="list1">최근 목록</li>
<li class="menu2" id="list1">최근 1달 목록</li>
<li class="menu2" id="list2">전체 목록</li>
<li class="menu2" id="list4">특정 기간 목록</li>
<form name="dateForm" method="post" id="dateForm">
......
......@@ -144,9 +144,8 @@ connection.query('select MIN(date) "min", MAX(date) "max" from calllog;', functi
connection.query('drop table if exists calllog_month; create table calllog_month(date datetime not null, logcount int, callcount int, smscount int, durationsum int, primary key(date)); insert into calllog_month(date, callcount, durationsum) (select date_format(date, "%Y-%m-02 00:00:00"), count(*), sum(duration) from calllog where type in (1,2,3) group by date_format(date, "%Y-%m-02 00:00:00")); update calllog_month cm left join (select date_format(date, "%Y-%m-02 00:00:00") "date", count(*) "count" from calllog group by date_format(date, "%Y-%m-02 00:00:00")) temp on cm.date=temp.date set cm.logcount=temp.count, cm.smscount=cm.logcount-cm.callcount;', function(err, rows, fields){
if(err)
cc.innerHTML='Error-#1';
});
connection.query('select * from calllog_month order by date DESC limit 6;', function(err, rows, fields){
else{
connection.query('select * from calllog_month order by date DESC limit 6;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
month_6.unshift(rows[i].date.toISOString().slice(0,7));
......@@ -158,9 +157,9 @@ connection.query('select * from calllog_month order by date DESC limit 6;', func
}
else
cc.innerHTML='Error-#2';
});
});
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from (select * from calllog_month order by date DESC limit 6) a, (select * from calllog_month order by date DESC limit 6) b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from (select * from calllog_month order by date DESC limit 6) a, (select * from calllog_month order by date DESC limit 6) b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
logcount_6nu.push(rows[i].logcount);
......@@ -171,9 +170,9 @@ connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "c
}
else
cc.innerHTML='Error-#3';
});
});
connection.query('select * from calllog_month order by date;', function(err, rows, fields){
connection.query('select * from calllog_month order by date;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
month.push(rows[i].date.toISOString().slice(0,7));
......@@ -185,9 +184,9 @@ connection.query('select * from calllog_month order by date;', function(err, row
}
else
cc.innerHTML='Error-#4';
});
});
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from calllog_month a, calllog_month b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from calllog_month a, calllog_month b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
logcount_nu.push(rows[i].logcount);
......@@ -198,14 +197,15 @@ connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "c
}
else
cc.innerHTML='Error-#5';
});
}
});
connection.query('drop table calllog_user; create table calllog_user(name varchar(255), number varchar(20) not null, callcount int, smscount int, durationsum int, primary key(number)); insert into calllog_user(name, number, callcount, durationsum) (select name, number, count(*), sum(duration) from calllog where type in (1,2,3) group by number); update calllog_user cu left join (select number, count(*) "count" from calllog where type not in (1,2,3) group by number) calllog on cu.number=calllog.number set cu.smscount=ifnull(calllog.count,0);', function(err, rows, fields){
if(err)
cc.innerHTML='Error-#8';
})
connection.query('select name, number, callcount, smscount from calllog_user order by callcount+smscount desc', function(err, rows, fields){
cc.innerHTML='Error-#6';
else{
connection.query('select name, number, callcount, smscount from calllog_user order by callcount+smscount desc', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
var name=rows[i].name;
......@@ -219,10 +219,10 @@ connection.query('select name, number, callcount, smscount from calllog_user ord
}
}
else
cc.innerHTML='Error-#8-1';
});
cc.innerHTML='Error-#7';
});
connection.query('select name, number, callcount from calllog_user order by callcount desc', function(err, rows, fields){
connection.query('select name, number, callcount from calllog_user order by callcount desc', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
var name=rows[i].name;
......@@ -234,10 +234,10 @@ connection.query('select name, number, callcount from calllog_user order by call
}
}
else
cc.innerHTML='Error-#8-2';
});
cc.innerHTML='Error-#8';
});
connection.query('select name, number, smscount from calllog_user order by smscount desc', function(err, rows, fields){
connection.query('select name, number, smscount from calllog_user order by smscount desc', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
var name=rows[i].name;
......@@ -249,10 +249,10 @@ connection.query('select name, number, smscount from calllog_user order by smsco
}
}
else
cc.innerHTML='Error-#8-3';
});
cc.innerHTML='Error-#9';
});
connection.query('select name, number, durationsum from calllog_user order by durationsum desc', function(err, rows, fields){
connection.query('select name, number, durationsum from calllog_user order by durationsum desc', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
var name=rows[i].name;
......@@ -264,15 +264,18 @@ connection.query('select name, number, durationsum from calllog_user order by du
}
}
else
cc.innerHTML='Error-#8-4';
});
cc.innerHTML='Error-#10';
});
}
})
connection.query('drop table calllog_hour; create table calllog_hour(hour int not null, callcount int, smscount int, primary key(hour)); set @hour:=-1; insert into calllog_hour(hour, callcount) (select (@hour:=@hour+1) "hour", (select count(*) from calllog where type in (1,2,3) and hour(date)=@hour) "count" from calllog where @hour<23); update calllog_hour ch left join (select hour(date) "hour", count(*) "count" from calllog where type not in (1,2,3) group by hour(date)) calllog on ch.hour=calllog.hour set ch.smscount=ifnull(calllog.count,0);', function(err, rows, fields){
if(err)
cc.innerHTML='Error-#8';
})
connection.query('select * from calllog_hour order by hour;', function(err, rows, fields){
cc.innerHTML='Error-#11';
else{
connection.query('select * from calllog_hour order by hour;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
timeline.push(rows[i].hour);
......@@ -282,8 +285,10 @@ connection.query('select * from calllog_hour order by hour;', function(err, rows
}
}
else
cc.innerHTML='Error-#10'+err;
});
cc.innerHTML='Error-#12'+err;
});
}
})
var options = {
title:{
......@@ -872,7 +877,7 @@ function get_date_analysis(){
}
}
else
cc.innerHTML='Error-#6-1'+err;
cc.innerHTML='Error-#14'+err;
});
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from calllog_between a, calllog_between b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
if(!err){
......@@ -889,11 +894,11 @@ function get_date_analysis(){
}
}
else
cc.innerHTML='Error-#6-2';
cc.innerHTML='Error-#15';
});
}
else
cc.innerHTML='Error-#6'+err;
cc.innerHTML='Error-#13'+err;
});
changeLabelText(month_b, "연락 수", logcount_b, "통화 수", callcount_b, "문자 수", smscount_b, "통화 시간", durationsum_b, "누적 연락 수", logcount_bnu, "누적 통화 수", callcount_bnu, "누적 문자 수",smscount_bnu, "누적 통화 시간", durationsum_bnu,"특정 기간의 통계");
......@@ -934,7 +939,7 @@ function get_number_analysis(){
}
}
else
cc.innerHTML='Error-#7-1'+err;
cc.innerHTML='Error-#17'+err;
});
connection.query('select a.date, sum(b.logcount) "logcount", sum(b.callcount) "callcount", sum(b.smscount) "smscount", sum(b.durationsum) "durationsum" from calllog_with a, calllog_with b where a.date>=b.date group by date order by a.date;', function(err, rows, fields){
if(!err){
......@@ -951,11 +956,11 @@ function get_number_analysis(){
}
}
else
cc.innerHTML='Error-#7-2';
cc.innerHTML='Error-#18';
});
}
else
cc.innerHTML='Error-#7'+err;
cc.innerHTML='Error-#16'+err;
});
changeLabelText(month_w, "연락 수", logcount_w, "통화 수", callcount_w, "문자 수", smscount_w, "통화 시간", durationsum_w, "누적 연락 수", logcount_wnu, "누적 통화 수", callcount_wnu, "누적 문자 수",smscount_wnu, "누적 통화 시간", durationsum_wnu,"특정 연락처와의 통계");
......@@ -973,9 +978,8 @@ function get_date_rank(){
connection.query('drop table IF EXISTS calllog_user_between; create table calllog_user_between(name varchar(255), number varchar(20) not null, callcount int, smscount int, durationsum int, primary key(number)); insert into calllog_user_between(name, number, callcount, durationsum) (select name, number, count(*), sum(duration) from calllog where type in (1,2,3) and date between ? and ? group by number); update calllog_user_between cu left join (select number, count(*) "count" from calllog where type not in (1,2,3) and date between ? and ? group by number) calllog on cu.number=calllog.number set cu.smscount=ifnull(calllog.count,0);', [rank_date_start,rank_date_end,rank_date_start,rank_date_end], function(err, rows, fields){
if(err)
cc.innerHTML='Error-#9';
})
cc.innerHTML='Error-#19';
else{
connection.query('select name, number, callcount, smscount from calllog_user_between order by callcount+smscount desc', function(err, rows, fields){
if(!err){
ranking_brnu.length=0;
......@@ -995,7 +999,7 @@ function get_date_rank(){
}
}
else
cc.innerHTML='Error-#9-1';
cc.innerHTML='Error-#20';
});
connection.query('select name, number, callcount from calllog_user_between order by callcount desc', function(err, rows, fields){
......@@ -1013,7 +1017,7 @@ function get_date_rank(){
}
}
else
cc.innerHTML='Error-#9-2';
cc.innerHTML='Error-#21';
});
connection.query('select name, number, smscount from calllog_user_between order by smscount desc', function(err, rows, fields){
......@@ -1031,7 +1035,7 @@ function get_date_rank(){
}
}
else
cc.innerHTML='Error-#9-3';
cc.innerHTML='Error-#22';
});
connection.query('select name, number, durationsum from calllog_user_between order by durationsum desc', function(err, rows, fields){
......@@ -1049,9 +1053,10 @@ function get_date_rank(){
}
}
else
cc.innerHTML='Error-#9-4';
cc.innerHTML='Error-#23';
});
}
})
changeLabelText2(ranking_brnu, "누적 연락 수", logcount_brnu, "누적 통화 수", callcount_brnu, "누적 문자 수", smscount_brnu, ranking_brnuc, "누적 통화 수", callcount_brnuc, ranking_brnus, "누적 문자 수", smscount_brnus, ranking_brnud, "누적 통화 시간", durationsum_brnud, [],"특정 기간의 연락 순위");
window.myChart.destroy();
//connection.end();
......@@ -1080,11 +1085,11 @@ function get_date_timeline(){
}
}
else
cc.innerHTML='Error-#11-1';
cc.innerHTML='Error-#25';
});
}
else
cc.innerHTML='Error-#11'+err;
cc.innerHTML='Error-#24'+err;
});
changeLabelText(timeline, "누적 연락 수", logcount_tb, "누적 통화 수", callcount_tb, "누적 문자 수", smscount_tb, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 기간의 선호 연락 시간대");
......@@ -1120,11 +1125,11 @@ function get_number_timeline(){
}
}
else
cc.innerHTML='Error-#12-1';
cc.innerHTML='Error-#27';
});
}
else
cc.innerHTML='Error-#12'+err;
cc.innerHTML='Error-#26'+err;
});
changeLabelText(timeline, "누적 연락 수", logcount_tw, "누적 통화 수", callcount_tw, "누적 문자 수", smscount_tw, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 연락처와의 선호 연락 시간대");
......@@ -1562,10 +1567,9 @@ more7.addEventListener('click', function(){
connection.query('drop table sms_response; create table sms_response (number text, got_date datetime, got_body text, send_date datetime, send_body text, time int); insert into sms_response SELECT sms1.address, sms1.date,sms1.body, sms2.date, sms2.body,timestampdiff(second, sms1.date, sms2.date) FROM sms sms1, sms sms2 where sms1.tid=sms2.tid and sms1.type=1 and sms2.type=2 and timestampdiff(second, sms1.date, sms2.date) >0 and timestampdiff(day,sms2.date, sms1.date)< 2; delete sms1 from sms_response sms1, sms_response sms2 where sms1.send_date=sms2.send_date and timestampdiff(second, sms2.got_date,sms1.got_date)<0; delete sms1 from sms_response sms1, sms_response sms2 where sms1.got_date=sms2.got_date and timestampdiff(second, sms2.send_date,sms1.send_date)>0;', function(err, rows, fields){
if(err)
cc.innerHTML='Error-#13';
})
connection.query('select avg(time) "avg" from sms_response;', function(err, rows, fields){
cc.innerHTML='Error-#27';
else{
connection.query('select avg(time) "avg" from sms_response;', function(err, rows, fields){
if(!err){
var tttt=rows[0].avg;
var avg_temp="";
......@@ -1578,10 +1582,10 @@ connection.query('select avg(time) "avg" from sms_response;', function(err, rows
values_list_res.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp});
}
else
cc.innerHTML='Error-#13-11'+err;
});
cc.innerHTML='Error-#28'+err;
});
connection.query('select * from sms_response;', function(err, rows, fields){
connection.query('select * from sms_response;', function(err, rows, fields){
if(!err){
for(var i=0;i<rows.length;i++){
var number_temp=rows[i].number;
......@@ -1603,8 +1607,12 @@ connection.query('select * from sms_response;', function(err, rows, fields){
myList4 = new List('listspace4', options_list_res, values_list_res);
}
else
cc.innerHTML='Error-#13-1'+err;
});
cc.innerHTML='Error-#29'+err;
});
}
})
function get_number_restime_push(){
......@@ -1640,7 +1648,7 @@ function get_number_restime(){
values_list_res_with.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp});
}
else
cc.innerHTML='Error-#13-21'+err;
cc.innerHTML='Error-#30'+err;
});
connection.query('select * from sms_response where number in (?);',[restime_number], function(err, rows, fields){
......@@ -1665,7 +1673,7 @@ function get_number_restime(){
myList5 = new List('listspace5', options_list_res, values_list_res_with);
}
else
cc.innerHTML='Error-#13-2'+err;
cc.innerHTML='Error-#31'+err;
});
//connection.end();
}
......