WexinPush.php 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | [ WE CAN DO IT MORE SIMPLE ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2018-2020 rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Author: TABLE ME
  8. // +----------------------------------------------------------------------
  9. // | Date: 2020-11-11 16:54
  10. // +----------------------------------------------------------------------
  11. namespace app\api\controller\v1;
  12. use app\BaseViewController;
  13. use app\model\api\Order;
  14. use app\model\api\Site;
  15. use app\model\api\SiteDetail;
  16. use app\model\system\Member;
  17. use app\model\system\OrderInfo;
  18. use app\model\system\Recharge;
  19. use app\model\system\SiteTotal;
  20. use app\Request;
  21. class WexinPush extends BaseViewController
  22. {
  23. /**
  24. * 总系统ttotal
  25. */
  26. public function systemTotal(Request $request){
  27. $token = $request->get('token');
  28. if(empty($token)) {
  29. return 'error';
  30. }
  31. $token = str_replace(" ","+",$token);
  32. $str = crypto_decrypt(base64_decode($token),'weixin_push');
  33. if(empty($str)) {
  34. return '';
  35. }
  36. $tAr = unserialize($str);
  37. //$tAr['time'] = strtotime('2020-11-10');
  38. $time = $tAr['time'];
  39. $date = date('Y-m-d',$time);
  40. //显示订单量
  41. $post['today_order_count'] = (new \app\model\system\Order())
  42. ->where('status','>',0)
  43. ->whereDay('pay_time',$date)
  44. ->count();
  45. //订单总量
  46. $post['all_order_count'] = (new \app\model\system\Order())
  47. ->where('status','>',0)
  48. ->count();
  49. //今日子订单量
  50. $post['today_t_order_count'] = (new OrderInfo)
  51. ->where('status','>',0)
  52. ->whereDay('time',$date)
  53. ->count();
  54. //今日订单总量
  55. $post['all_t_order_count'] = (new OrderInfo)->where('status','>',0)->count();
  56. //今日销售额
  57. $post['today_money'] = (new \app\model\system\Order())
  58. ->where('status','>',0)
  59. ->whereDay('pay_time',$date)
  60. ->sum('all_price');
  61. //总销售额
  62. $post['all_money'] = (new \app\model\system\Order())
  63. ->where('status','>',0)
  64. ->sum('all_price');
  65. //新增会员
  66. $post['today_user'] = (new Member)->whereDay('regtime',$date)->count();
  67. $post['all_user'] = (new Member)->count();
  68. //充值记录
  69. $post['today_recharge'] = (new Recharge)->whereDay('time',$date)->where('status',1)->sum('v');
  70. $post['recharge'] = (new Recharge)->where('status',1)->sum('v');
  71. //前面50个平台业绩
  72. $siteData = (new SiteTotal)->field("st.*,(SELECT name from table_site where st.sassid=sassid) as site_name")->alias("st")->where('time',$time)->limit(0,50)->order("order_money desc")->select();
  73. $this->assign('date',$date);
  74. $this->assign('miniDate',date('m月d日',$time));
  75. $this->assign('data',$post);
  76. $this->assign('siteData',$siteData);
  77. echo $this->display();
  78. }
  79. /**
  80. * 分站total
  81. */
  82. public function adminTotal(Request $request){
  83. $token = $request->get('token');
  84. if(empty($token)) {
  85. return 'error';
  86. }
  87. $token = str_replace(" ","+",$token);
  88. $str = crypto_decrypt(base64_decode($token),'weixin_push');
  89. if(empty($str)) {
  90. return '';
  91. }
  92. $tAr = unserialize($str);
  93. // $tAr['time'] = strtotime('2020-11-10');
  94. //$tAr['sassid'] = 3;
  95. $time = $tAr['time'];
  96. $date = date('Y-m-d',$time);
  97. $siteData = (new Site)->where('sassid',$tAr['sassid'])->find();
  98. //显示订单量
  99. $post['today_order_count'] = (new \app\model\system\Order())
  100. ->where('status','>',0)
  101. ->where('sassid',$tAr['sassid'])
  102. ->whereDay('pay_time',$date)
  103. ->count();
  104. //订单总量
  105. $post['all_order_count'] = (new \app\model\system\Order())
  106. ->where('status','>',0)
  107. ->where('sassid',$tAr['sassid'])
  108. ->count();
  109. //今日子订单量
  110. $post['today_t_order_count'] = (new OrderInfo)
  111. ->where('status','>',0)
  112. ->where('sassid',$tAr['sassid'])
  113. ->whereDay('time',$date)
  114. ->count();
  115. //今日订单总量
  116. $post['all_t_order_count'] = (new OrderInfo)->where('sassid',$tAr['sassid'])->where('status','>',0)->count();
  117. //今日销售额
  118. $post['today_money'] = (new \app\model\system\Order())
  119. ->where('status','>',0)
  120. ->where('sassid',$tAr['sassid'])
  121. ->whereDay('pay_time',$date)
  122. ->sum('all_price');
  123. //总销售额
  124. $post['all_money'] = (new \app\model\system\Order())
  125. ->where('status','>',0)
  126. ->where('sassid',$tAr['sassid'])
  127. ->sum('all_price');
  128. //新增会员
  129. $post['today_user'] = (new Member)->where('sassid',$tAr['sassid'])->whereDay('regtime',$date)->count();
  130. $post['all_user'] = (new Member)->where('sassid',$tAr['sassid'])->count();
  131. //充值记录
  132. $post['today_recharge'] = (new Recharge)->where('sassid',$tAr['sassid'])->whereDay('time',$date)->where('status',1)->sum('v');
  133. $post['recharge'] = (new Recharge)->where('sassid',$tAr['sassid'])->where('status',1)->sum('v');
  134. //总佣金
  135. $post['commission_money'] = (new Site)->where('sassid',$tAr['sassid'])->sum('money');
  136. $post['today_commission'] = (new SiteDetail)->where('sassid',$tAr['sassid'])->where('type',1)->whereDay('time',$date)->sum('v');
  137. //前面30天平台业绩
  138. $totalData = (new SiteTotal)
  139. ->alias("st")
  140. ->where('sassid',$tAr['sassid'])
  141. ->limit(0,30)
  142. ->order("id desc")
  143. ->select();
  144. $this->assign('siteData',$siteData);
  145. $this->assign('date',$date);
  146. $this->assign('miniDate',date('m月d日',$time));
  147. $this->assign('data',$post);
  148. $this->assign('totalData',$totalData);
  149. echo $this->display();
  150. }
  151. /**
  152. * 订单数据
  153. * @param Request $request
  154. */
  155. public function order(Request $request) {
  156. $token = $request->get('token');
  157. if(empty($token)) {
  158. return 'error';
  159. }
  160. $token = str_replace(" ","+",$token);
  161. $str = crypto_decrypt(base64_decode($token),'weixin_push');
  162. if(empty($str)) {
  163. return '';
  164. }
  165. $tAr = unserialize($str);
  166. $ids = $tAr['oids'];
  167. $oData = (new Order)->whereIn('id',$ids)->select();
  168. foreach ($oData as $k=>$v) {
  169. $oData[$k]['data'] = (new OrderInfo)->where('o_id',$v['id'])->select();
  170. }
  171. $this->assign('data',$oData);
  172. echo $this->display();
  173. }
  174. }