Index.php 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  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-08-31 20:43
  10. // +----------------------------------------------------------------------
  11. namespace app\admin\controller\v1;
  12. use app\BaseController;
  13. use app\model\admin\OrderInfo;
  14. use app\model\admin\SiteDetail;
  15. use app\model\admin\Tx;
  16. use app\Request;
  17. use library\services\UtilService;
  18. use think\Cache;
  19. class Index extends BaseController
  20. {
  21. /**
  22. * 获取配置信息
  23. */
  24. public function getIndex(Request $request){
  25. //今日订单量
  26. $post['today_order_count'] = (new \app\model\admin\Order())
  27. ->where('status','>',0)
  28. ->where('sassid',$request->site['sassid'])
  29. ->whereTime('pay_time','today')
  30. ->count();
  31. $post['all_order_count'] = (new \app\model\admin\Order())
  32. ->where('sassid',$request->site['sassid'])
  33. ->where('status','>',0)
  34. ->count();
  35. $post['today_t_order_count'] = (new OrderInfo)
  36. ->where('status','>',0)
  37. ->where('sassid',$request->site['sassid'])
  38. ->whereTime('time','today')
  39. ->count();
  40. $post['all_t_order_count'] = (new OrderInfo)
  41. ->where('sassid',$request->site['sassid'])
  42. ->where('status','>',0)
  43. ->count();
  44. //销售额
  45. $post['today_money'] = (new \app\model\admin\Order())
  46. ->where('status','>',0)
  47. ->whereTime('pay_time','today')
  48. ->where('sassid',$request->site['sassid'])
  49. ->sum('all_price');
  50. $post['all_money'] = (new \app\model\admin\Order())
  51. ->where('sassid',$request->site['sassid'])
  52. ->where('status','>',0)
  53. ->sum('all_price');
  54. $post['no_order_count'] = (new \app\model\admin\Order())
  55. ->where('sassid',$request->site['sassid'])->where('status','=',1)->count();
  56. $post['order_count'] = (new \app\model\admin\Order)
  57. ->where('sassid',$request->site['sassid'])->where('status','>',1)->count();
  58. //
  59. $sysData = (new \app\model\system\Sys)->where('id',1)->find();
  60. $post['sysInfo'] = [
  61. 'lx_name' => $sysData['lx_name'],
  62. 'lx_tel' => $sysData['lx_tel'],
  63. 'custom_tel' => $sysData['custom_tel'],
  64. 'custom_qq' => $sysData['custom_qq'],
  65. 'weixin_logo' => $sysData['weixin_logo'],
  66. 'tag' => $sysData['tag']
  67. ];
  68. //获取自己用户
  69. $post['commission_money'] = $request->site['money'];
  70. //提现的钱
  71. $money = (new Tx)->where('sassid',$request->site['sassid'])->where('type',2)->where('is_type',0)->sum('money');
  72. $post['tx_commission_money'] = $money;
  73. //已提现的钱
  74. $money = (new Tx)->where('sassid',$request->site['sassid'])->where('type',2)->where('is_type',1)->sum('money');
  75. $post['txok_commission_money'] = $money;
  76. return app('json')->success($post);
  77. }
  78. public function getOrderTotal(Request $request){
  79. [$visitDate] = UtilService::getMore([
  80. ['visitDate','thirtyday']
  81. ],$request,true);
  82. $order = (new \app\model\admin\Order());
  83. $orderInfo = (new OrderInfo());
  84. //30天
  85. $tAr = ['name'=>[],'order_count'=>[],'order_info_count'=>[]];
  86. if($visitDate == 'thirtyday') {
  87. for ($i = 30;$i>=0;$i--) {
  88. $time = date('Y-m-d',strtotime('-'.$i.' day'));
  89. $tAr['name'][] = $time;
  90. $tAr['order_count'][] = $order
  91. ->whereDay('time',$time)
  92. ->where('sassid',$request->site['sassid'])
  93. ->where('status','>',0)
  94. ->count();
  95. $tAr['order_info_count'][] = $orderInfo->where('sassid',$request->site['sassid'])->where('status','>',0)->whereDay('time',$time)->count();
  96. }
  97. }
  98. return app('json')->success($tAr);
  99. }
  100. /**
  101. * 资金情况
  102. * @param Request $request
  103. */
  104. public function rechargeInit(Request $request) {
  105. $info = [
  106. 'money' => $request->site['money'],
  107. ];
  108. return app('json')->success($info);
  109. }
  110. /**
  111. * 我要提现
  112. * @param Request $request
  113. */
  114. public function subTx(Request $request) {
  115. $redis = \think\facade\Cache::store('redis');
  116. $post = UtilService::getMore(
  117. [
  118. ['bank',"","empty","请输入到账账号"],
  119. ['money','0',"empty","请输入提现金额"],
  120. ['name','','empty','请输入真实姓名']
  121. ],$request
  122. );
  123. $txKey = 'tx_'.md5($post['bank']);
  124. $ckBank = $redis->get($txKey);
  125. if(!empty($ckBank)) {
  126. return app('json')->fail("请务重复提现!");
  127. }
  128. //提现金额
  129. if($request->site['money'] < $post['money']) {
  130. return app('json')->fail("余额不足,无法提现!");
  131. }
  132. $redis->set($txKey,1,5);
  133. (new Tx)
  134. ->insert([
  135. 'uid' => 0,
  136. 'money' => $post['money'],
  137. 'sassid' => $request->site['sassid'],
  138. 'type' => 2,
  139. 'bank' => '支付宝',
  140. 'name' => $post['name'],
  141. 'code' => $post['bank'],
  142. 'time' => time(),
  143. 'is_type' => 0,
  144. 'sassid' => $request->site['sassid']
  145. ]);
  146. (new \app\model\api\SiteDetail)->tx($post['money'],$request->site['sassid'],['time'=>date('Y-m-d H:i:s'),'money'=>$post['money']]);
  147. $redis->delete($txKey);
  148. return app('json')->success(
  149. '提现成功,请等待打款!'
  150. );
  151. }
  152. }