rank.js 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. index: function () {
  4. var line_length=$(".line").length;
  5. var ajax_page=function(memo){
  6. $.ajax({
  7. url:url,
  8. type:'post',
  9. data:'memo='+memo,
  10. dataType: "json",
  11. timeout: '10000',
  12. beforeSend:function(){
  13. $(".btn-group .btn-primary").addClass("btn-default");
  14. $(".btn-group .btn-primary").removeClass("btn-primary");
  15. $("#time_"+memo).addClass("btn-primary");
  16. $("#time_"+memo).removeClass("btn-default");
  17. },
  18. success:function(res){
  19. if(res.status){
  20. $.each(res.data, function(i, n){
  21. if(n.date && i<line_length){
  22. if(n.param[0]){
  23. $('#searchword_rank_'+i).html(n.param[0]);
  24. }
  25. if(n.param[1]){
  26. $('#baiduindex_'+i).html(n.param[1]);
  27. }
  28. if(n.param[2]){
  29. $('#pv_count_'+i).html(n.param[2]);
  30. }
  31. if(n.param[3]){
  32. $('#visitor_count_'+i).html(n.param[3]);
  33. }
  34. if(n.param[4]){
  35. $('#bounce_ratio_'+i).html(n.param[4]+'%');
  36. }
  37. if(n.param[5]){
  38. $('#avg_visit_time_'+i).html(n.param[5]);
  39. }
  40. $("chart-rank"+i).css('width',$("#chart-rank"+i).closest(".flash-line-container").width())
  41. var echarts_rank = echarts.init(document.getElementById("chart-rank"+i));
  42. var options={
  43. tooltip: {
  44. trigger: "axis",
  45. formatter:function(para){
  46. if(para[0].value==0){
  47. para[0].value="暂无数据";
  48. }
  49. return para[0].name+'<br><span style="display:inline-block;margin-right:5px;border-radius:10px;width:9px;height:9px;background-color:#55a4e9"></span>'+para[0].seriesName+":"+para[0].value
  50. }
  51. },
  52. xAxis: [{
  53. type: "category",
  54. boundaryGap : false,
  55. axisTick:{
  56. show:false
  57. },
  58. axisLine:{
  59. show:false,
  60. symbol:'none'
  61. },
  62. data: n.date
  63. }],
  64. yAxis: {
  65. type: "value",
  66. name: "排名",
  67. inverse: true,
  68. minInterval: 1,
  69. splitNumber:4,
  70. axisLine:{
  71. show:false,
  72. symbol:'none'
  73. },
  74. axisTick:{
  75. show:false
  76. },
  77. nameLocation: 'start'
  78. },
  79. series: [{
  80. name: "搜索词排名",
  81. type: "line",
  82. data: n.rank,
  83. }],
  84. color:['#55a4e9']
  85. };
  86. var max = Math.max.apply(null, n.rank);
  87. if(max<4){
  88. options.yAxis.max=4;
  89. }
  90. echarts_rank.setOption(options);
  91. $(window).resize(echarts_rank.resize({width:$("#chart-rank"+i).closest(".flash-line-container").width()}));
  92. }
  93. });
  94. }
  95. }
  96. });
  97. };
  98. $(document).on("change","#changeSiteId",function(){
  99. var url=$(this).data("url");
  100. var siteid=$(this).val();
  101. $.ajax({
  102. url:url,
  103. data:'siteid='+siteid,
  104. dataType: "json",
  105. type:'post',
  106. success:function(res){
  107. if(res.code){
  108. location.reload();
  109. }else{
  110. layer.alert(res.msg);
  111. }
  112. }
  113. });
  114. })
  115. if(bdtj_show==1){
  116. if(line_length>0){
  117. ajax_page('week');
  118. }
  119. }else{
  120. layer.alert("尚未配置,请前往插件管理-百度网站统计-配置");
  121. }
  122. $(document).on("click",".ajax-page",function(){
  123. var memo=$(this).attr("data-memo");
  124. ajax_page(memo);
  125. })
  126. $("#get-words").on("click",function(){
  127. $.ajax({
  128. url:getwords_url,
  129. type:'post',
  130. dataType: "json",
  131. timeout: '10000',
  132. beforeSend:function(){
  133. layer.msg("同步中",{time:10000});
  134. },
  135. success:function(res){
  136. if(res.status==1){
  137. window.location.reload();
  138. }else{
  139. layer.msg(res.msg);
  140. }
  141. }
  142. });
  143. });
  144. $("#set-words").on("click",function(){
  145. layer.open({
  146. type:1,
  147. title:'设置关键词',
  148. content:'<div style="margin:20px"><p>用英文逗号“,”,最多设置10个关键词</p><textarea class="form-control keywords" style="width:300px;height:200px;line-height:30px;">'+keywords_str+'</textarea></div>',
  149. btn: ['确定', '取消'],
  150. yes: function(index, layero){
  151. var keywords=$(layero).find("textarea").val();
  152. $.ajax({
  153. url:setwords_url,
  154. type:'post',
  155. data:'keywords='+keywords,
  156. dataType: "json",
  157. timeout: '10000',
  158. success:function(res){
  159. if(res.status==1){
  160. layer.msg(res.msg,function(){
  161. window.location.reload();
  162. });
  163. }else{
  164. layer.msg(res.msg);
  165. }
  166. }
  167. });
  168. },
  169. btn2: function(index, layero){
  170. layer.close(index)
  171. }
  172. })
  173. });
  174. }
  175. };
  176. return Controller;
  177. });