@@ -560,16 +568,20 @@ function changeLabelText2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){
options_main_stacked.data.datasets[2].label=f;
options_main_stacked.data.datasets[2].data=g;
options_main_2.type="horizontalBar";
options_main_2.data.labels=h;
options_main_2.data.datasets[0].label=i;
options_main_2.data.datasets[0].data=j;
options_main_3.type="horizontalBar";
options_main_3.data.labels=k;
options_main_3.data.datasets[0].label=l;
options_main_3.data.datasets[0].data=m;
options_main_4.type="horizontalBar";
options_main_4.data.labels=n;
options_main_4.data.datasets[0].label=o;
options_main_4.data.datasets[0].data=p;
box_name.innerHTML=s;
menu_name.innerHTML=r;
options.title.text=r;
options_stacked.title.text=r;
...
...
@@ -601,10 +613,11 @@ var analysis1 = document.getElementById('analysis1');
analysis1.addEventListener('click',function(){
chartView();
change_type_title(1);
changeLabelText(month_6,"연락 수",logcount_6,"통화 수",callcount_6,"문자 수",smscount_6,"통화 시간",durationsum_6,"누적 연락 수",logcount_6nu,"누적 통화 수",callcount_6nu,"누적 문자 수",smscount_6nu,"누적 통화 시간",durationsum_6nu,"최근 6개월의 통계");
changeLabelText(month_6,"연락 수",logcount_6,"통화 수",callcount_6,"문자 수",smscount_6,"통화 시간",durationsum_6,"누적 연락 수",logcount_6nu,"누적 통화 수",callcount_6nu,"누적 문자 수",smscount_6nu,"누적 통화 시간",durationsum_6nu,"최근 6개월의 통계","# 연락 수");
@@ -612,10 +625,11 @@ var analysis2 = document.getElementById('analysis2');
analysis2.addEventListener('click',function(){
chartView();
change_type_title(1);
changeLabelText(month,"연락 수",logcount,"통화 수",callcount,"문자 수",smscount,"통화 시간",durationsum,"누적 연락 수",logcount_nu,"누적 통화 수",callcount_nu,"누적 문자 수",smscount_nu,"누적 통화 시간",durationsum_nu,"전체 기간의 통계");
changeLabelText(month,"연락 수",logcount,"통화 수",callcount,"문자 수",smscount,"통화 시간",durationsum,"누적 연락 수",logcount_nu,"누적 통화 수",callcount_nu,"누적 문자 수",smscount_nu,"누적 통화 시간",durationsum_nu,"전체 기간의 통계","# 연락 수");
@@ -623,10 +637,11 @@ var analysis3 = document.getElementById('analysis3');
analysis3.addEventListener('click',function(){
chartView();
change_type_title(1);
changeLabelText(month_b,"연락 수",logcount_b,"통화 수",callcount_b,"문자 수",smscount_b,"통화 시간",durationsum_b,"누적 연락 수",logcount_bnu,"누적 통화 수",callcount_bnu,"누적 문자 수",smscount_bnu,"누적 통화 시간",durationsum_bnu,"특정 기간의 통계");
changeLabelText(month_b,"연락 수",logcount_b,"통화 수",callcount_b,"문자 수",smscount_b,"통화 시간",durationsum_b,"누적 연락 수",logcount_bnu,"누적 통화 수",callcount_bnu,"누적 문자 수",smscount_bnu,"누적 통화 시간",durationsum_bnu,"특정 기간의 통계 / "+date_start.split(' ')[0]+" ~ "+date_end.split(' ')[0],"# 연락 수");
@@ -634,10 +649,11 @@ var analysis4 = document.getElementById('analysis4');
analysis4.addEventListener('click',function(){
chartView();
change_type_title(1);
changeLabelText(month_w,"연락 수",logcount_w,"통화 수",callcount_w,"문자 수",smscount_w,"통화 시간",durationsum_w,"누적 연락 수",logcount_wnu,"누적 통화 수",callcount_wnu,"누적 문자 수",smscount_wnu,"누적 통화 시간",durationsum_wnu,"특정 연락처와의 통계");
changeLabelText(month_w,"연락 수",logcount_w,"통화 수",callcount_w,"문자 수",smscount_w,"통화 시간",durationsum_w,"누적 연락 수",logcount_wnu,"누적 통화 수",callcount_wnu,"누적 문자 수",smscount_wnu,"누적 통화 시간",durationsum_wnu,"특정 연락처와의 통계","# 연락 수");
menu_name.innerHTML="특정 기간의 목록 / "+list_date_start.split(' ')[0]+" ~ "+list_date_end.split(' ')[0];
window.myChart.destroy();
});
...
...
@@ -687,10 +703,11 @@ var more1 = document.getElementById('more1');
more1.addEventListener('click',function(){
chartView();
change_type_title(4);
changeLabelText2(ranking_rnu,"누적 연락 수",logcount_rnu,"누적 통화 수",callcount_rnu,"누적 문자 수",smscount_rnu,ranking_rnuc,"누적 통화 수",callcount_rnuc,ranking_rnus,"누적 문자 수",smscount_rnus,ranking_rnud,"누적 통화 시간",durationsum_rnud,[],"전체 기간의 연락 순위");
changeLabelText_hor(ranking_rnu,"누적 연락 수",logcount_rnu,"누적 통화 수",callcount_rnu,"누적 문자 수",smscount_rnu,ranking_rnuc,"누적 통화 수",callcount_rnuc,ranking_rnus,"누적 문자 수",smscount_rnus,ranking_rnud,"누적 통화 시간",durationsum_rnud,[],"전체 기간의 연락 순위","# 연락 수");
@@ -698,10 +715,11 @@ var more2 = document.getElementById('more2');
more2.addEventListener('click',function(){
chartView();
change_type_title(4);
changeLabelText2(ranking_brnu,"누적 연락 수",logcount_brnu,"누적 통화 수",callcount_brnu,"누적 문자 수",smscount_brnu,ranking_brnuc,"누적 통화 수",callcount_brnuc,ranking_brnus,"누적 문자 수",smscount_brnus,ranking_brnud,"누적 통화 시간",durationsum_brnud,[],"특정 기간의 연락 순위");
changeLabelText_hor(ranking_brnu,"누적 연락 수",logcount_brnu,"누적 통화 수",callcount_brnu,"누적 문자 수",smscount_brnu,ranking_brnuc,"누적 통화 수",callcount_brnuc,ranking_brnus,"누적 문자 수",smscount_brnus,ranking_brnud,"누적 통화 시간",durationsum_brnud,[],"특정 기간의 연락 순위 / "+rank_date_start.split(' ')[0]+" ~ "+rank_date_end.split(' ')[0],"# 연락 수");
connection.query('drop table IF EXISTS calllog_between; create table calllog_between(date datetime not null, logcount int, callcount int, smscount int, durationsum int, primary key(date)); insert into calllog_between(date, callcount, durationsum) (select date_format(date, "%Y-%m-02 00:00:00"), count(*), sum(duration) from calllog where type in (1,2,3) and date between ? and ? group by date_format(date, "%Y-%m-02 00:00:00")); update calllog_between cb left join (select date_format(date, "%Y-%m-02 00:00:00") "date", count(*) "count" from calllog where date between ? and ? group by date_format(date, "%Y-%m-02 00:00:00")) temp on cb.date=temp.date set cb.logcount=temp.count, cb.smscount=cb.logcount-cb.callcount;',[date_start,date_end,date_start,date_end],function(err,rows){
if(!err){
connection.query('select * from calllog_between order by date;',function(err,rows,fields){
...
...
@@ -910,6 +932,12 @@ function get_date_analysis(){
smscount_bnu.push(rows[i].smscount);
durationsum_bnu.push(rows[i].durationsum);
}
changeLabelText(month_b,"연락 수",logcount_b,"통화 수",callcount_b,"문자 수",smscount_b,"통화 시간",durationsum_b,"누적 연락 수",logcount_bnu,"누적 통화 수",callcount_bnu,"누적 문자 수",smscount_bnu,"누적 통화 시간",durationsum_bnu,"특정 기간의 통계 / "+date_start.split(' ')[0]+" ~ "+date_end.split(' ')[0],"# 연락 수");
@@ -918,21 +946,16 @@ function get_date_analysis(){
else
cc.innerHTML='Error-#13'+err;
});
menu_name.innerHTML="특정 기간의 통계";
changeLabelText(month_b,"연락 수",logcount_b,"통화 수",callcount_b,"문자 수",smscount_b,"통화 시간",durationsum_b,"누적 연락 수",logcount_bnu,"누적 통화 수",callcount_bnu,"누적 문자 수",smscount_bnu,"누적 통화 시간",durationsum_bnu,"특정 기간의 통계");
@@ -981,10 +1009,6 @@ function get_number_analysis(){
else
cc.innerHTML='Error-#16'+err;
});
menu_name.innerHTML="특정 연락처와의 통계";
changeLabelText(month_w,"연락 수",logcount_w,"통화 수",callcount_w,"문자 수",smscount_w,"통화 시간",durationsum_w,"누적 연락 수",logcount_wnu,"누적 통화 수",callcount_wnu,"누적 문자 수",smscount_wnu,"누적 통화 시간",durationsum_wnu,"특정 연락처와의 통계");
window.myChart.destroy();
//connection.end();
}
...
...
@@ -1071,15 +1095,17 @@ function get_date_rank(){
ranking_brnud.push(rows[i].number+" ("+name+")");
durationsum_brnud.push(rows[i].durationsum);
}
changeLabelText_hor(ranking_brnu,"누적 연락 수",logcount_brnu,"누적 통화 수",callcount_brnu,"누적 문자 수",smscount_brnu,ranking_brnuc,"누적 통화 수",callcount_brnuc,ranking_brnus,"누적 문자 수",smscount_brnus,ranking_brnud,"누적 통화 시간",durationsum_brnud,[],"특정 기간의 연락 순위 / "+rank_date_start.split(' ')[0]+" ~ "+rank_date_end.split(' ')[0],"# 연락 수");
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();
}
...
...
@@ -1104,6 +1130,11 @@ function get_date_timeline(){
changeLabelText_hor(payment_9_list,"결제 횟수",payment_9_count,payment_10_list,"결제 금액",payment_10_count,"특정 기간의 카드 이용 순위","특정 기간의 카드 이용 순위 / "+card_date_start.split(' ')[0]+" ~ "+card_date_end.split(' ')[0],"# 결제 횟수 기준");
connection.query("drop table if exists sms_bank_hour; create table sms_bank_hour(hour int not null, smscount int, primary key(hour)); set @hour:=-1; insert into sms_bank_hour(hour, smscount) (select (@hour:=@hour+1) 'hour', (select count(*) 'smscount' from sms_bank where date between ? and ? and hour(date)=@hour) 'count' from sms where @hour<23);",[date_start,date_end],function(err,rows,fields){
connection.query("drop table if exists sms_bank_hour; create table sms_bank_hour(hour int not null, smscount int, primary key(hour)); set @hour:=-1; insert into sms_bank_hour(hour, smscount) (select (@hour:=@hour+1) 'hour', (select count(*) 'smscount' from sms_bank where date between ? and ? and hour(date)=@hour) 'count' from sms where @hour<23);",[payment_date_start,payment_date_end],function(err,rows,fields){
if(!err){
connection.query("select * from sms_bank_hour order by hour;",function(err,rows,fields){
if(!err){
...
...
@@ -849,6 +975,13 @@ function get_payment_date_payment(){
connection.query("select bname, count(*) 'count' from sms_bank where date between ? and ? group by bname order by count(*) desc;",[date_start,date_end],function(err,rows,fields){
connection.query("select bname, count(*) 'count' from sms_bank where date between ? and ? group by bname order by count(*) desc;",[card_date_start,card_date_end],function(err,rows,fields){
if(!err){
for(vari=0;i<rows.length;i++){
varbname=rows[i].bname;
...
...
@@ -895,7 +1022,7 @@ function get_card_date_payment(){
cc.innerHTML='Error-query-#payment_7-1';
})
connection.query("select bname, sum(price) 'sum' from sms_bank where date between ? and ? group by bname order by sum(price) desc;",[date_start,date_end],function(err,rows,fields){
connection.query("select bname, sum(price) 'sum' from sms_bank where date between ? and ? group by bname order by sum(price) desc;",[card_date_start,card_date_end],function(err,rows,fields){
if(!err){
for(vari=0;i<rows.length;i++){
varbname=rows[i].bname;
...
...
@@ -903,40 +1030,37 @@ function get_card_date_payment(){
payment_10_list.push(bname);
payment_10_count.push(sum);
}
changeLabelText_hor(payment_9_list,"결제 횟수",payment_9_count,payment_10_list,"결제 금액",payment_10_count,"특정 기간의 카드 이용 순위","특정 기간의 카드 이용 순위 / "+card_date_start.split(' ')[0]+" ~ "+card_date_end.split(' ')[0],"# 결제 횟수 기준");
connection.query("select sname, count(*) 'count' from sms_bank where date between ? and ? group by sname order by count(*) desc;",[date_start,date_end],function(err,rows,fields){
connection.query("select sname, count(*) 'count' from sms_bank where date between ? and ? group by sname order by count(*) desc;",[store_date_start,store_date_end],function(err,rows,fields){
if(!err){
for(vari=0;i<rows.length;i++){
varsname=rows[i].sname;
...
...
@@ -949,7 +1073,7 @@ function get_store_date_payment(){
cc.innerHTML='Error-query-#payment_9-1';
})
connection.query("select sname, sum(price) 'sum' from sms_bank where date between ? and ? group by sname order by sum(price) desc;",[date_start,date_end],function(err,rows,fields){
connection.query("select sname, sum(price) 'sum' from sms_bank where date between ? and ? group by sname order by sum(price) desc;",[store_date_start,store_date_end],function(err,rows,fields){
if(!err){
for(vari=0;i<rows.length;i++){
varsname=rows[i].sname;
...
...
@@ -957,21 +1081,17 @@ function get_store_date_payment(){