人人商城

summary.html 6.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. {template 'common/header-gw'}
  2. <style>
  3. .account-basicinformation span{font-weight:700;}
  4. .account-stat-num > div{width:25%; float:left; font-size:16px; text-align:center;}
  5. .account-stat-num > div span{display:block; font-size:30px; font-weight:bold;}
  6. </style>
  7. <ol class="breadcrumb">
  8. <li><a href="./?refresh"><i class="fa fa-home"></i></a></li>
  9. <li><a href="{url 'account/display'}">公众号列表</a></li>
  10. <li class="active">当前公众号</li>
  11. </ol>
  12. <div class="panel panel-default">
  13. <div class="panel-heading">
  14. 基本信息
  15. <span class="pull-right">
  16. <a href="{php echo url('account/post', array('acid' => $account['acid'], 'uniacid' => $account['uniacid']))}" class="img-rounded edit">编辑</a>&nbsp;&nbsp;
  17. <a href="{php echo url('account/delete', array('acid' => $account['acid'], 'uniacid' => $account['uniacid']))}" class="img-rounded delete" onclick="return confirm('此操作不可恢复,确认吗?'); return false;">删除</a>
  18. </span>
  19. </div>
  20. <div class="panel-body account-basicinformation">
  21. <div class="row">
  22. <div class="col-md-6"><span>公众号名称 : </span>{$account['name']}({if $account['type'] == 1}微信{else}易信{/if})</div>
  23. <div class="col-md-6"><span>接入状态 : </span>{if $account['isconnect'] == 1}接入成功{else}未接入{/if}</div>
  24. </div>
  25. <div class="row" style="border-top:1px #DDD dotted; margin-top:10px; padding-top:10px;">
  26. <div class="col-md-6"><span>接口地址 : </span>{$_W['siteroot']}api.php?id={$account['acid']}</div>
  27. <div class="col-md-6"><span>token : </span>{$account['token']}</div>
  28. </div>
  29. </div>
  30. </div>
  31. <div class="panel panel-default">
  32. <div class="panel-heading">
  33. 昨日关键指标
  34. </div>
  35. <div class="panel-body">
  36. <div class="account-stat-num row">
  37. <div>昨日新关注<span>{$yesterday_stat['new']}</span></div>
  38. <div>昨日取消关注<span>{$yesterday_stat['cancel']}</span></div>
  39. <div>昨日净增关注<span>{php echo intval($yesterday_stat['new']) - intval($yesterday_stat['cancel'])}</span></div>
  40. <div>累积关注<span>{$yesterday_stat['cumulate']}</span></div>
  41. </div>
  42. </div>
  43. </div>
  44. <div class="panel panel-default">
  45. <div class="panel-heading">
  46. 今日关键指标
  47. </div>
  48. <div class="panel-body">
  49. <div class="account-stat-num row">
  50. <div>今日新关注<span>{php echo intval($today_stat['new'])}</span></div>
  51. <div>今日取消关注<span>{php echo intval($today_stat['cancel'])}</span></div>
  52. <div>今日净增关注<span>{php echo intval($today_stat['new']) - intval($today_stat['cancel'])}</span></div>
  53. <div>累积关注<span>{$today_stat['cumulate']}</span></div>
  54. </div>
  55. </div>
  56. </div>
  57. <div class="panel panel-default">
  58. <div class="panel-heading">
  59. 关键指标详解
  60. </div>
  61. <div class="panel-body" id="scroll">
  62. <div class="pull-left">
  63. <form action="" id="form1">
  64. <input name="c" value="account" type="hidden" />
  65. <input name="a" value="summary" type="hidden" />
  66. <input name="acid" value="{$acid}" type="hidden" />
  67. <input name="uniacid" value="{$uniacid}" type="hidden" />
  68. {php echo tpl_form_field_daterange('datelimit', array('start' => date('Y-m-d', $starttime),'end' => date('Y-m-d', $endtime)), '')}
  69. <input type="hidden" value="" name="scroll">
  70. </form>
  71. </div>
  72. <div class="pull-right">
  73. <div class="checkbox">
  74. <label style="color:#57B9E6;"><input checked type="checkbox"> 新关注人数</label>&nbsp;
  75. <label style="color:rgba(203,48,48,1)"><input checked type="checkbox"> 取消关注人数</label>&nbsp;
  76. <label style="color:rgba(149,192,0,1);;"><input checked type="checkbox"> 净增人数</label>&nbsp;
  77. <label style="color:#e7a017;"><input type="checkbox"> 累积关注人数</label>
  78. </div>
  79. </div>
  80. <div style="margin-top:20px">
  81. <canvas id="myChart" width="1200" height="300"></canvas>
  82. </div>
  83. </div>
  84. </div>
  85. <script>
  86. require(['chart', 'daterangepicker'], function(c) {
  87. $('.daterange').on('apply.daterangepicker', function(ev, picker) {
  88. $('input[name="scroll"]').val($(document).scrollTop());
  89. $('#form1')[0].submit();
  90. });
  91. {if $scroll}
  92. var scroll = "{$scroll}";
  93. $("html,body").animate({scrollTop: scroll}, 300);
  94. {/if}
  95. var chart = null;
  96. var chartDatasets = null;
  97. var templates = {
  98. flow1: {
  99. label: '新关注人数',
  100. fillColor : "rgba(36,165,222,0.1)",
  101. strokeColor : "rgba(36,165,222,1)",
  102. pointColor : "rgba(36,165,222,1)",
  103. pointStrokeColor : "#fff",
  104. pointHighlightFill : "#fff",
  105. pointHighlightStroke : "rgba(36,165,222,1)",
  106. },
  107. flow2: {
  108. label: '取消关注人数',
  109. fillColor : "rgba(203,48,48,0.1)",
  110. strokeColor : "rgba(203,48,48,1)",
  111. pointColor : "rgba(203,48,48,1)",
  112. pointStrokeColor : "#fff",
  113. pointHighlightFill : "#fff",
  114. pointHighlightStroke : "rgba(203,48,48,1)",
  115. },
  116. flow3: {
  117. label: '净增人数',
  118. fillColor : "rgba(149,192,0,0.1)",
  119. strokeColor : "rgba(149,192,0,1)",
  120. pointColor : "rgba(149,192,0,1)",
  121. pointStrokeColor : "#fff",
  122. pointHighlightFill : "#fff",
  123. pointHighlightStroke : "rgba(149,192,0,1)",
  124. },
  125. flow4: {
  126. label: '累计人数',
  127. fillColor : "rgba(231,160,23,0.1)",
  128. strokeColor : "rgba(231,160,23,1)",
  129. pointColor : "rgba(231,160,23,1)",
  130. pointStrokeColor : "#fff",
  131. pointHighlightFill : "#fff",
  132. pointHighlightStroke : "rgba(231,160,23,1)",
  133. }
  134. };
  135. function refreshData() {
  136. if(!chart || !chartDatasets) {
  137. return;
  138. }
  139. var visables = [];
  140. var i = 0;
  141. $('.checkbox input[type="checkbox"]').each(function(){
  142. if($(this).attr('checked')) {
  143. visables.push(i);
  144. }
  145. i++;
  146. });
  147. var ds = [];
  148. $.each(visables, function(){
  149. var o = chartDatasets[this];
  150. ds.push(o);
  151. });
  152. chart.datasets = ds;
  153. chart.update();
  154. }
  155. var url = './index.php?c=account&a=summary&acid={$_W['acid']}&uniacid={$_W['uniacid']}&starttime={$starttime}&endtime={$endtime}#aaaa';
  156. $.post(url, function(data){
  157. var data = $.parseJSON(data);
  158. var datasets = data.datasets;
  159. if(!chart) {
  160. var label = data.label;
  161. var ds = $.extend(true, {}, templates);
  162. ds.flow1.data = datasets.new;
  163. ds.flow2.data = datasets.cancel;
  164. ds.flow3.data = datasets.increase;
  165. ds.flow4.data = datasets.cumulate;
  166. var lineChartData = {
  167. labels : label,
  168. datasets : [ds.flow1, ds.flow2, ds.flow3, ds.flow4]
  169. };
  170. var ctx = document.getElementById("myChart").getContext("2d");
  171. chart = new Chart(ctx).Line(lineChartData, {
  172. responsive: true
  173. });
  174. chartDatasets = $.extend(true, {}, chart.datasets);
  175. }
  176. refreshData();
  177. });
  178. $('.checkbox input[type="checkbox"]').on('click', function(){
  179. $(this).attr('checked', !$(this).attr('checked'))
  180. refreshData();
  181. });
  182. });
  183. </script>
  184. {template 'common/footer-gw'}