김예미

update menu1 - js mysql query async

...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
16 <div id="menu_bar"> 16 <div id="menu_bar">
17 <ul id="menu"> 17 <ul id="menu">
18 <li class="menu1">통계 분석</li> 18 <li class="menu1">통계 분석</li>
19 - <li class="menu2" id="analysis1">최근 통계</li> 19 + <li class="menu2" id="analysis1">최근 6개월 통계</li>
20 <li class="menu2" id="analysis2">전체 통계</li> 20 <li class="menu2" id="analysis2">전체 통계</li>
21 <li class="menu2" id="analysis3">특정 기간 통계</li> 21 <li class="menu2" id="analysis3">특정 기간 통계</li>
22 <form name="dateForm" method="post" id="dateForm"> 22 <form name="dateForm" method="post" id="dateForm">
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
34 </form> 34 </form>
35 <li class="menu2" id="analysis4_list"></li> 35 <li class="menu2" id="analysis4_list"></li>
36 <li class="menu1">목록 분석</li> 36 <li class="menu1">목록 분석</li>
37 - <li class="menu2" id="list1">최근 목록</li> 37 + <li class="menu2" id="list1">최근 1달 목록</li>
38 <li class="menu2" id="list2">전체 목록</li> 38 <li class="menu2" id="list2">전체 목록</li>
39 <li class="menu2" id="list4">특정 기간 목록</li> 39 <li class="menu2" id="list4">특정 기간 목록</li>
40 <form name="dateForm" method="post" id="dateForm"> 40 <form name="dateForm" method="post" id="dateForm">
......
...@@ -144,146 +144,151 @@ connection.query('select MIN(date) "min", MAX(date) "max" from calllog;', functi ...@@ -144,146 +144,151 @@ connection.query('select MIN(date) "min", MAX(date) "max" from calllog;', functi
144 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){ 144 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){
145 if(err) 145 if(err)
146 cc.innerHTML='Error-#1'; 146 cc.innerHTML='Error-#1';
147 -}); 147 + else{
148 - 148 + connection.query('select * from calllog_month order by date DESC limit 6;', function(err, rows, fields){
149 -connection.query('select * from calllog_month order by date DESC limit 6;', function(err, rows, fields){ 149 + if(!err){
150 - if(!err){ 150 + for(var i=0;i<rows.length;i++){
151 - for(var i=0;i<rows.length;i++){ 151 + month_6.unshift(rows[i].date.toISOString().slice(0,7));
152 - month_6.unshift(rows[i].date.toISOString().slice(0,7)); 152 + logcount_6.unshift(rows[i].logcount);
153 - logcount_6.unshift(rows[i].logcount); 153 + callcount_6.unshift(rows[i].callcount);
154 - callcount_6.unshift(rows[i].callcount); 154 + smscount_6.unshift(rows[i].smscount);
155 - smscount_6.unshift(rows[i].smscount); 155 + durationsum_6.unshift(rows[i].durationsum);
156 - durationsum_6.unshift(rows[i].durationsum); 156 + }
157 - } 157 + }
158 - } 158 + else
159 - else 159 + cc.innerHTML='Error-#2';
160 - cc.innerHTML='Error-#2'; 160 + });
161 -}); 161 +
162 - 162 + 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){
163 -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){ 163 + if(!err){
164 - if(!err){ 164 + for(var i=0;i<rows.length;i++){
165 - for(var i=0;i<rows.length;i++){ 165 + logcount_6nu.push(rows[i].logcount);
166 - logcount_6nu.push(rows[i].logcount); 166 + callcount_6nu.push(rows[i].callcount);
167 - callcount_6nu.push(rows[i].callcount); 167 + smscount_6nu.push(rows[i].smscount);
168 - smscount_6nu.push(rows[i].smscount); 168 + durationsum_6nu.push(rows[i].durationsum);
169 - durationsum_6nu.push(rows[i].durationsum); 169 + }
170 - } 170 + }
171 - } 171 + else
172 - else 172 + cc.innerHTML='Error-#3';
173 - cc.innerHTML='Error-#3'; 173 + });
174 -}); 174 +
175 - 175 + connection.query('select * from calllog_month order by date;', function(err, rows, fields){
176 -connection.query('select * from calllog_month order by date;', function(err, rows, fields){ 176 + if(!err){
177 - if(!err){ 177 + for(var i=0;i<rows.length;i++){
178 - for(var i=0;i<rows.length;i++){ 178 + month.push(rows[i].date.toISOString().slice(0,7));
179 - month.push(rows[i].date.toISOString().slice(0,7)); 179 + logcount.push(rows[i].logcount);
180 - logcount.push(rows[i].logcount); 180 + callcount.push(rows[i].callcount);
181 - callcount.push(rows[i].callcount); 181 + smscount.push(rows[i].smscount);
182 - smscount.push(rows[i].smscount); 182 + durationsum.push(rows[i].durationsum);
183 - durationsum.push(rows[i].durationsum); 183 + }
184 - } 184 + }
185 - } 185 + else
186 - else 186 + cc.innerHTML='Error-#4';
187 - cc.innerHTML='Error-#4'; 187 + });
188 -}); 188 +
189 - 189 + 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){
190 -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){ 190 + if(!err){
191 - if(!err){ 191 + for(var i=0;i<rows.length;i++){
192 - for(var i=0;i<rows.length;i++){ 192 + logcount_nu.push(rows[i].logcount);
193 - logcount_nu.push(rows[i].logcount); 193 + callcount_nu.push(rows[i].callcount);
194 - callcount_nu.push(rows[i].callcount); 194 + smscount_nu.push(rows[i].smscount);
195 - smscount_nu.push(rows[i].smscount); 195 + durationsum_nu.push(rows[i].durationsum);
196 - durationsum_nu.push(rows[i].durationsum); 196 + }
197 - } 197 + }
198 + else
199 + cc.innerHTML='Error-#5';
200 + });
198 } 201 }
199 - else
200 - cc.innerHTML='Error-#5';
201 }); 202 });
202 203
203 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){ 204 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){
204 if(err) 205 if(err)
205 - cc.innerHTML='Error-#8'; 206 + cc.innerHTML='Error-#6';
206 -}) 207 + else{
207 - 208 + connection.query('select name, number, callcount, smscount from calllog_user order by callcount+smscount desc', function(err, rows, fields){
208 -connection.query('select name, number, callcount, smscount from calllog_user order by callcount+smscount desc', function(err, rows, fields){ 209 + if(!err){
209 - if(!err){ 210 + for(var i=0;i<rows.length;i++){
210 - for(var i=0;i<rows.length;i++){ 211 + var name=rows[i].name;
211 - var name=rows[i].name; 212 + if(!name)
212 - if(!name) 213 + ranking_rnu.push(rows[i].number+" ( - )");
213 - ranking_rnu.push(rows[i].number+" ( - )"); 214 + else
215 + ranking_rnu.push(rows[i].number+" ("+name+")");
216 + logcount_rnu.push(rows[i].callcount+rows[i].smscount);
217 + callcount_rnu.push(rows[i].callcount);
218 + smscount_rnu.push(rows[i].smscount);
219 + }
220 + }
214 else 221 else
215 - ranking_rnu.push(rows[i].number+" ("+name+")"); 222 + cc.innerHTML='Error-#7';
216 - logcount_rnu.push(rows[i].callcount+rows[i].smscount); 223 + });
217 - callcount_rnu.push(rows[i].callcount); 224 +
218 - smscount_rnu.push(rows[i].smscount); 225 + connection.query('select name, number, callcount from calllog_user order by callcount desc', function(err, rows, fields){
219 - } 226 + if(!err){
220 - } 227 + for(var i=0;i<rows.length;i++){
221 - else 228 + var name=rows[i].name;
222 - cc.innerHTML='Error-#8-1'; 229 + if(!name)
223 -}); 230 + ranking_rnuc.push(rows[i].number);
224 - 231 + else
225 -connection.query('select name, number, callcount from calllog_user order by callcount desc', function(err, rows, fields){ 232 + ranking_rnuc.push(rows[i].number+" ("+name+")");
226 - if(!err){ 233 + callcount_rnuc.push(rows[i].callcount);
227 - for(var i=0;i<rows.length;i++){ 234 + }
228 - var name=rows[i].name; 235 + }
229 - if(!name)
230 - ranking_rnuc.push(rows[i].number);
231 else 236 else
232 - ranking_rnuc.push(rows[i].number+" ("+name+")"); 237 + cc.innerHTML='Error-#8';
233 - callcount_rnuc.push(rows[i].callcount); 238 + });
234 - } 239 +
235 - } 240 + connection.query('select name, number, smscount from calllog_user order by smscount desc', function(err, rows, fields){
236 - else 241 + if(!err){
237 - cc.innerHTML='Error-#8-2'; 242 + for(var i=0;i<rows.length;i++){
238 -}); 243 + var name=rows[i].name;
239 - 244 + if(!name)
240 -connection.query('select name, number, smscount from calllog_user order by smscount desc', function(err, rows, fields){ 245 + ranking_rnus.push(rows[i].number);
241 - if(!err){ 246 + else
242 - for(var i=0;i<rows.length;i++){ 247 + ranking_rnus.push(rows[i].number+" ("+name+")");
243 - var name=rows[i].name; 248 + smscount_rnus.push(rows[i].smscount);
244 - if(!name) 249 + }
245 - ranking_rnus.push(rows[i].number); 250 + }
246 else 251 else
247 - ranking_rnus.push(rows[i].number+" ("+name+")"); 252 + cc.innerHTML='Error-#9';
248 - smscount_rnus.push(rows[i].smscount); 253 + });
249 - } 254 +
250 - } 255 + connection.query('select name, number, durationsum from calllog_user order by durationsum desc', function(err, rows, fields){
251 - else 256 + if(!err){
252 - cc.innerHTML='Error-#8-3'; 257 + for(var i=0;i<rows.length;i++){
253 -}); 258 + var name=rows[i].name;
254 - 259 + if(!name)
255 -connection.query('select name, number, durationsum from calllog_user order by durationsum desc', function(err, rows, fields){ 260 + ranking_rnud.push(rows[i].number);
256 - if(!err){ 261 + else
257 - for(var i=0;i<rows.length;i++){ 262 + ranking_rnud.push(rows[i].number+" ("+name+")");
258 - var name=rows[i].name; 263 + durationsum_rnud.push(rows[i].durationsum);
259 - if(!name) 264 + }
260 - ranking_rnud.push(rows[i].number); 265 + }
261 else 266 else
262 - ranking_rnud.push(rows[i].number+" ("+name+")"); 267 + cc.innerHTML='Error-#10';
263 - durationsum_rnud.push(rows[i].durationsum); 268 + });
264 - }
265 } 269 }
266 - else 270 +})
267 - cc.innerHTML='Error-#8-4'; 271 +
268 -}); 272 +
269 273
270 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){ 274 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){
271 if(err) 275 if(err)
272 - cc.innerHTML='Error-#8'; 276 + cc.innerHTML='Error-#11';
273 -}) 277 + else{
274 - 278 + connection.query('select * from calllog_hour order by hour;', function(err, rows, fields){
275 -connection.query('select * from calllog_hour order by hour;', function(err, rows, fields){ 279 + if(!err){
276 - if(!err){ 280 + for(var i=0;i<rows.length;i++){
277 - for(var i=0;i<rows.length;i++){ 281 + timeline.push(rows[i].hour);
278 - timeline.push(rows[i].hour); 282 + callcount_t.push(rows[i].callcount);
279 - callcount_t.push(rows[i].callcount); 283 + smscount_t.push(rows[i].smscount);
280 - smscount_t.push(rows[i].smscount); 284 + logcount_t.push(rows[i].callcount+rows[i].smscount);
281 - logcount_t.push(rows[i].callcount+rows[i].smscount); 285 + }
282 - } 286 + }
287 + else
288 + cc.innerHTML='Error-#12'+err;
289 + });
283 } 290 }
284 - else 291 +})
285 - cc.innerHTML='Error-#10'+err;
286 -});
287 292
288 var options = { 293 var options = {
289 title:{ 294 title:{
...@@ -872,7 +877,7 @@ function get_date_analysis(){ ...@@ -872,7 +877,7 @@ function get_date_analysis(){
872 } 877 }
873 } 878 }
874 else 879 else
875 - cc.innerHTML='Error-#6-1'+err; 880 + cc.innerHTML='Error-#14'+err;
876 }); 881 });
877 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){ 882 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){
878 if(!err){ 883 if(!err){
...@@ -889,11 +894,11 @@ function get_date_analysis(){ ...@@ -889,11 +894,11 @@ function get_date_analysis(){
889 } 894 }
890 } 895 }
891 else 896 else
892 - cc.innerHTML='Error-#6-2'; 897 + cc.innerHTML='Error-#15';
893 }); 898 });
894 } 899 }
895 else 900 else
896 - cc.innerHTML='Error-#6'+err; 901 + cc.innerHTML='Error-#13'+err;
897 }); 902 });
898 903
899 changeLabelText(month_b, "연락 수", logcount_b, "통화 수", callcount_b, "문자 수", smscount_b, "통화 시간", durationsum_b, "누적 연락 수", logcount_bnu, "누적 통화 수", callcount_bnu, "누적 문자 수",smscount_bnu, "누적 통화 시간", durationsum_bnu,"특정 기간의 통계"); 904 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(){ ...@@ -934,7 +939,7 @@ function get_number_analysis(){
934 } 939 }
935 } 940 }
936 else 941 else
937 - cc.innerHTML='Error-#7-1'+err; 942 + cc.innerHTML='Error-#17'+err;
938 }); 943 });
939 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){ 944 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){
940 if(!err){ 945 if(!err){
...@@ -951,11 +956,11 @@ function get_number_analysis(){ ...@@ -951,11 +956,11 @@ function get_number_analysis(){
951 } 956 }
952 } 957 }
953 else 958 else
954 - cc.innerHTML='Error-#7-2'; 959 + cc.innerHTML='Error-#18';
955 }); 960 });
956 } 961 }
957 else 962 else
958 - cc.innerHTML='Error-#7'+err; 963 + cc.innerHTML='Error-#16'+err;
959 }); 964 });
960 965
961 changeLabelText(month_w, "연락 수", logcount_w, "통화 수", callcount_w, "문자 수", smscount_w, "통화 시간", durationsum_w, "누적 연락 수", logcount_wnu, "누적 통화 수", callcount_wnu, "누적 문자 수",smscount_wnu, "누적 통화 시간", durationsum_wnu,"특정 연락처와의 통계"); 966 changeLabelText(month_w, "연락 수", logcount_w, "통화 수", callcount_w, "문자 수", smscount_w, "통화 시간", durationsum_w, "누적 연락 수", logcount_wnu, "누적 통화 수", callcount_wnu, "누적 문자 수",smscount_wnu, "누적 통화 시간", durationsum_wnu,"특정 연락처와의 통계");
...@@ -973,85 +978,85 @@ function get_date_rank(){ ...@@ -973,85 +978,85 @@ function get_date_rank(){
973 978
974 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){ 979 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){
975 if(err) 980 if(err)
976 - cc.innerHTML='Error-#9'; 981 + cc.innerHTML='Error-#19';
977 - }) 982 + else{
978 - 983 + connection.query('select name, number, callcount, smscount from calllog_user_between order by callcount+smscount desc', function(err, rows, fields){
979 - connection.query('select name, number, callcount, smscount from calllog_user_between order by callcount+smscount desc', function(err, rows, fields){ 984 + if(!err){
980 - if(!err){ 985 + ranking_brnu.length=0;
981 - ranking_brnu.length=0; 986 + logcount_brnu.length=0;
982 - logcount_brnu.length=0; 987 + callcount_brnu.length=0;
983 - callcount_brnu.length=0; 988 + smscount_brnu.length=0;
984 - smscount_brnu.length=0; 989 +
985 - 990 + for(var i=0;i<rows.length;i++){
986 - for(var i=0;i<rows.length;i++){ 991 + var name=rows[i].name;
987 - var name=rows[i].name; 992 + if(!name)
988 - if(!name) 993 + ranking_brnu.push(rows[i].number+" ( - )");
989 - ranking_brnu.push(rows[i].number+" ( - )"); 994 + else
990 - else 995 + ranking_brnu.push(rows[i].number+" ("+name+")");
991 - ranking_brnu.push(rows[i].number+" ("+name+")"); 996 + logcount_brnu.push(rows[i].callcount+rows[i].smscount);
992 - logcount_brnu.push(rows[i].callcount+rows[i].smscount); 997 + callcount_brnu.push(rows[i].callcount);
993 - callcount_brnu.push(rows[i].callcount); 998 + smscount_brnu.push(rows[i].smscount);
994 - smscount_brnu.push(rows[i].smscount); 999 + }
995 } 1000 }
996 - } 1001 + else
997 - else 1002 + cc.innerHTML='Error-#20';
998 - cc.innerHTML='Error-#9-1'; 1003 + });
999 - }); 1004 +
1000 - 1005 + connection.query('select name, number, callcount from calllog_user_between order by callcount desc', function(err, rows, fields){
1001 - connection.query('select name, number, callcount from calllog_user_between order by callcount desc', function(err, rows, fields){ 1006 + if(!err){
1002 - if(!err){ 1007 + ranking_brnuc.length=0;
1003 - ranking_brnuc.length=0; 1008 + callcount_brnuc.length=0;
1004 - callcount_brnuc.length=0; 1009 +
1005 - 1010 + for(var i=0;i<rows.length;i++){
1006 - for(var i=0;i<rows.length;i++){ 1011 + var name=rows[i].name;
1007 - var name=rows[i].name; 1012 + if(!name)
1008 - if(!name) 1013 + ranking_brnuc.push(rows[i].number);
1009 - ranking_brnuc.push(rows[i].number); 1014 + else
1010 - else 1015 + ranking_brnuc.push(rows[i].number+" ("+name+")");
1011 - ranking_brnuc.push(rows[i].number+" ("+name+")"); 1016 + callcount_brnuc.push(rows[i].callcount);
1012 - callcount_brnuc.push(rows[i].callcount); 1017 + }
1013 } 1018 }
1014 - } 1019 + else
1015 - else 1020 + cc.innerHTML='Error-#21';
1016 - cc.innerHTML='Error-#9-2'; 1021 + });
1017 - }); 1022 +
1018 - 1023 + connection.query('select name, number, smscount from calllog_user_between order by smscount desc', function(err, rows, fields){
1019 - connection.query('select name, number, smscount from calllog_user_between order by smscount desc', function(err, rows, fields){ 1024 + if(!err){
1020 - if(!err){ 1025 + ranking_brnus.length=0;
1021 - ranking_brnus.length=0; 1026 + smscount_brnus.length=0;
1022 - smscount_brnus.length=0; 1027 +
1023 - 1028 + for(var i=0;i<rows.length;i++){
1024 - for(var i=0;i<rows.length;i++){ 1029 + var name=rows[i].name;
1025 - var name=rows[i].name; 1030 + if(!name)
1026 - if(!name) 1031 + ranking_brnus.push(rows[i].number);
1027 - ranking_brnus.push(rows[i].number); 1032 + else
1028 - else 1033 + ranking_brnus.push(rows[i].number+" ("+name+")");
1029 - ranking_brnus.push(rows[i].number+" ("+name+")"); 1034 + smscount_brnus.push(rows[i].smscount);
1030 - smscount_brnus.push(rows[i].smscount); 1035 + }
1031 } 1036 }
1032 - } 1037 + else
1033 - else 1038 + cc.innerHTML='Error-#22';
1034 - cc.innerHTML='Error-#9-3'; 1039 + });
1035 - }); 1040 +
1036 - 1041 + connection.query('select name, number, durationsum from calllog_user_between order by durationsum desc', function(err, rows, fields){
1037 - connection.query('select name, number, durationsum from calllog_user_between order by durationsum desc', function(err, rows, fields){ 1042 + if(!err){
1038 - if(!err){ 1043 + ranking_brnud.length=0;
1039 - ranking_brnud.length=0; 1044 + durationsum_brnud.length=0;
1040 - durationsum_brnud.length=0; 1045 +
1041 - 1046 + for(var i=0;i<rows.length;i++){
1042 - for(var i=0;i<rows.length;i++){ 1047 + var name=rows[i].name;
1043 - var name=rows[i].name; 1048 + if(!name)
1044 - if(!name) 1049 + ranking_brnud.push(rows[i].number);
1045 - ranking_brnud.push(rows[i].number); 1050 + else
1046 - else 1051 + ranking_brnud.push(rows[i].number+" ("+name+")");
1047 - ranking_brnud.push(rows[i].number+" ("+name+")"); 1052 + durationsum_brnud.push(rows[i].durationsum);
1048 - durationsum_brnud.push(rows[i].durationsum); 1053 + }
1049 } 1054 }
1055 + else
1056 + cc.innerHTML='Error-#23';
1057 + });
1050 } 1058 }
1051 - else 1059 + })
1052 - cc.innerHTML='Error-#9-4';
1053 - });
1054 -
1055 changeLabelText2(ranking_brnu, "누적 연락 수", logcount_brnu, "누적 통화 수", callcount_brnu, "누적 문자 수", smscount_brnu, ranking_brnuc, "누적 통화 수", callcount_brnuc, ranking_brnus, "누적 문자 수", smscount_brnus, ranking_brnud, "누적 통화 시간", durationsum_brnud, [],"특정 기간의 연락 순위"); 1060 changeLabelText2(ranking_brnu, "누적 연락 수", logcount_brnu, "누적 통화 수", callcount_brnu, "누적 문자 수", smscount_brnu, ranking_brnuc, "누적 통화 수", callcount_brnuc, ranking_brnus, "누적 문자 수", smscount_brnus, ranking_brnud, "누적 통화 시간", durationsum_brnud, [],"특정 기간의 연락 순위");
1056 window.myChart.destroy(); 1061 window.myChart.destroy();
1057 //connection.end(); 1062 //connection.end();
...@@ -1080,11 +1085,11 @@ function get_date_timeline(){ ...@@ -1080,11 +1085,11 @@ function get_date_timeline(){
1080 } 1085 }
1081 } 1086 }
1082 else 1087 else
1083 - cc.innerHTML='Error-#11-1'; 1088 + cc.innerHTML='Error-#25';
1084 }); 1089 });
1085 } 1090 }
1086 else 1091 else
1087 - cc.innerHTML='Error-#11'+err; 1092 + cc.innerHTML='Error-#24'+err;
1088 }); 1093 });
1089 1094
1090 changeLabelText(timeline, "누적 연락 수", logcount_tb, "누적 통화 수", callcount_tb, "누적 문자 수", smscount_tb, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 기간의 선호 연락 시간대"); 1095 changeLabelText(timeline, "누적 연락 수", logcount_tb, "누적 통화 수", callcount_tb, "누적 문자 수", smscount_tb, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 기간의 선호 연락 시간대");
...@@ -1120,11 +1125,11 @@ function get_number_timeline(){ ...@@ -1120,11 +1125,11 @@ function get_number_timeline(){
1120 } 1125 }
1121 } 1126 }
1122 else 1127 else
1123 - cc.innerHTML='Error-#12-1'; 1128 + cc.innerHTML='Error-#27';
1124 }); 1129 });
1125 } 1130 }
1126 else 1131 else
1127 - cc.innerHTML='Error-#12'+err; 1132 + cc.innerHTML='Error-#26'+err;
1128 }); 1133 });
1129 1134
1130 changeLabelText(timeline, "누적 연락 수", logcount_tw, "누적 통화 수", callcount_tw, "누적 문자 수", smscount_tw, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 연락처와의 선호 연락 시간대"); 1135 changeLabelText(timeline, "누적 연락 수", logcount_tw, "누적 통화 수", callcount_tw, "누적 문자 수", smscount_tw, "수", [], "수", [], "수",[] , "수",[], "수", [],"특정 연락처와의 선호 연락 시간대");
...@@ -1562,49 +1567,52 @@ more7.addEventListener('click', function(){ ...@@ -1562,49 +1567,52 @@ more7.addEventListener('click', function(){
1562 1567
1563 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){ 1568 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){
1564 if(err) 1569 if(err)
1565 - cc.innerHTML='Error-#13'; 1570 + cc.innerHTML='Error-#27';
1566 -}) 1571 + else{
1567 - 1572 + connection.query('select avg(time) "avg" from sms_response;', function(err, rows, fields){
1568 -connection.query('select avg(time) "avg" from sms_response;', function(err, rows, fields){ 1573 + if(!err){
1569 - if(!err){ 1574 + var tttt=rows[0].avg;
1570 - var tttt=rows[0].avg; 1575 + var avg_temp="";
1571 - var avg_temp=""; 1576 + if(tttt>=3600)
1572 - if(tttt>=3600) 1577 + avg_temp=Math.floor(tttt/3600)+"시간 "+Math.floor((tttt%3600)/60)+"분 "+Math.floor(tttt%60)+"초";
1573 - avg_temp=Math.floor(tttt/3600)+"시간 "+Math.floor((tttt%3600)/60)+"분 "+Math.floor(tttt%60)+"초"; 1578 + else if(tttt>=60)
1574 - else if(tttt>=60) 1579 + avg_temp=Math.floor(tttt/60)+"분 "+Math.floor(tttt%60)+"초";
1575 - avg_temp=Math.floor(tttt/60)+"분 "+Math.floor(tttt%60)+"초"; 1580 + else
1576 - else 1581 + avg_temp=tttt+"초";
1577 - avg_temp=tttt+"초"; 1582 + values_list_res.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp});
1578 - values_list_res.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp}); 1583 + }
1579 - }
1580 - else
1581 - cc.innerHTML='Error-#13-11'+err;
1582 -});
1583 -
1584 -connection.query('select * from sms_response;', function(err, rows, fields){
1585 - if(!err){
1586 - for(var i=0;i<rows.length;i++){
1587 - var number_temp=rows[i].number;
1588 - var get_body_temp=rows[i].got_body;
1589 - var get_date_temp=rows[i].got_date.toISOString().split("T")[0]+" "+rows[i].got_date.toISOString().split("T")[1].slice(0,8);
1590 - var send_body_temp=rows[i].send_body;
1591 - var send_date_temp=rows[i].send_date.toISOString().split("T")[0]+" "+rows[i].send_date.toISOString().split("T")[1].slice(0,8);
1592 - var tttt=rows[i].time;
1593 - var timediff_temp="";
1594 - if(tttt>=3600)
1595 - timediff_temp=Math.floor(tttt/3600)+"시간 "+Math.floor((tttt%3600)/60)+"분 "+(tttt%60)+"초";
1596 - else if(tttt>=60)
1597 - timediff_temp=Math.floor(tttt/60)+"분 "+(tttt%60)+"초";
1598 else 1584 else
1599 - timediff_temp=tttt+"초"; 1585 + cc.innerHTML='Error-#28'+err;
1600 - 1586 + });
1601 - values_list_res.push({number:number_temp, get_body:get_body_temp, get_date:get_date_temp, send_body:send_body_temp, send_date:send_date_temp, timediff:timediff_temp}); 1587 +
1602 - } 1588 + connection.query('select * from sms_response;', function(err, rows, fields){
1603 - myList4 = new List('listspace4', options_list_res, values_list_res); 1589 + if(!err){
1590 + for(var i=0;i<rows.length;i++){
1591 + var number_temp=rows[i].number;
1592 + var get_body_temp=rows[i].got_body;
1593 + var get_date_temp=rows[i].got_date.toISOString().split("T")[0]+" "+rows[i].got_date.toISOString().split("T")[1].slice(0,8);
1594 + var send_body_temp=rows[i].send_body;
1595 + var send_date_temp=rows[i].send_date.toISOString().split("T")[0]+" "+rows[i].send_date.toISOString().split("T")[1].slice(0,8);
1596 + var tttt=rows[i].time;
1597 + var timediff_temp="";
1598 + if(tttt>=3600)
1599 + timediff_temp=Math.floor(tttt/3600)+"시간 "+Math.floor((tttt%3600)/60)+"분 "+(tttt%60)+"초";
1600 + else if(tttt>=60)
1601 + timediff_temp=Math.floor(tttt/60)+"분 "+(tttt%60)+"초";
1602 + else
1603 + timediff_temp=tttt+"초";
1604 +
1605 + values_list_res.push({number:number_temp, get_body:get_body_temp, get_date:get_date_temp, send_body:send_body_temp, send_date:send_date_temp, timediff:timediff_temp});
1606 + }
1607 + myList4 = new List('listspace4', options_list_res, values_list_res);
1608 + }
1609 + else
1610 + cc.innerHTML='Error-#29'+err;
1611 + });
1604 } 1612 }
1605 - else 1613 +})
1606 - cc.innerHTML='Error-#13-1'+err; 1614 +
1607 -}); 1615 +
1608 1616
1609 1617
1610 function get_number_restime_push(){ 1618 function get_number_restime_push(){
...@@ -1640,7 +1648,7 @@ function get_number_restime(){ ...@@ -1640,7 +1648,7 @@ function get_number_restime(){
1640 values_list_res_with.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp}); 1648 values_list_res_with.push({get_body:"해당 기간의 평균 답장 시간", send_body:avg_temp});
1641 } 1649 }
1642 else 1650 else
1643 - cc.innerHTML='Error-#13-21'+err; 1651 + cc.innerHTML='Error-#30'+err;
1644 }); 1652 });
1645 1653
1646 connection.query('select * from sms_response where number in (?);',[restime_number], function(err, rows, fields){ 1654 connection.query('select * from sms_response where number in (?);',[restime_number], function(err, rows, fields){
...@@ -1665,7 +1673,7 @@ function get_number_restime(){ ...@@ -1665,7 +1673,7 @@ function get_number_restime(){
1665 myList5 = new List('listspace5', options_list_res, values_list_res_with); 1673 myList5 = new List('listspace5', options_list_res, values_list_res_with);
1666 } 1674 }
1667 else 1675 else
1668 - cc.innerHTML='Error-#13-2'+err; 1676 + cc.innerHTML='Error-#31'+err;
1669 }); 1677 });
1670 //connection.end(); 1678 //connection.end();
1671 } 1679 }
......