Order.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. /**
  3. * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
  4. * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
  5. * @author pillar<ltmn@qq.com>
  6. * 订单管理
  7. */
  8. namespace app\allwin\controller;
  9. use app\allwin\controller\Common;
  10. use app\allwin\model\Order as orders;
  11. use think\facade\Request;
  12. use think\helper\Time;
  13. class Order extends Common{
  14. public function initialize() {
  15. parent::initialize();
  16. $this->assign('pathMaps', [['name'=>'买单帐单','url'=>url("order/index")]]);
  17. }
  18. /**
  19. * 应用管理首页
  20. * @access public
  21. */
  22. public function Index(int $state = 1){
  23. $condition = [];
  24. $condition[] = ['member_miniapp_id','=',$this->member_miniapp_id];
  25. $store_id = Request::param('store_id/d','');
  26. $store_name = Request::param('store_name');
  27. if($store_id){
  28. $condition[] = ['store_id','=',$store_id];
  29. }
  30. $time = Request::param('time/d',0);
  31. if($time){
  32. switch ($time) {
  33. case 2:
  34. list($start, $end) = Time::yesterday();
  35. break;
  36. case 30:
  37. list($start, $end) = Time::month();
  38. break;
  39. case 60:
  40. list($start, $end) = Time::lastMonth();
  41. break;
  42. default:
  43. list($start, $end) = Time::today();
  44. break;
  45. }
  46. $condition[] = ['paid_time','>=',$start];
  47. $condition[] = ['paid_time','<=',$end];
  48. }
  49. $starttime = Request::param('starttime/s');
  50. $endtime = Request::param('endtime/s');
  51. if($starttime){
  52. $condition[] = ['paid_time','>=',strtotime($starttime)];
  53. }
  54. if($endtime){
  55. $condition[] = ['paid_time','<=',strtotime($endtime)];
  56. }
  57. $view['orders'] = Orders::where($condition)->where(['state' => $state ? 1: 0])->order('id desc')->paginate(20,false,['query'=> ['store_id'=>$store_id,'store_name'=>$store_name,'time' => $time,'starttime' => $starttime,'endtime' => $endtime]]);
  58. $view['order_num'] = Orders::where($condition)->where(['state' => 1])->count();
  59. $view['user_amount'] = Orders::where($condition)->where(['state' => 1])->sum('user_amount');
  60. $view['coupon_price'] = Orders::where($condition)->where(['state' => 1])->sum('coupon_price');
  61. $view['platform_amount'] = Orders::where($condition)->where(['state' => 1])->sum('platform_amount');
  62. $view['store_amount'] = Orders::where($condition)->where(['state' => 1])->sum('store_amount');
  63. $view['order_amount'] = Orders::where($condition)->where(['state' => 1])->sum('order_amount');
  64. $view['time'] = $time;
  65. $view['starttime'] = $starttime;
  66. $view['endtime'] = $endtime;
  67. $view['store_id'] = $store_id;
  68. $view['store_name'] = $store_name;
  69. return view()->assign($view);
  70. }
  71. }