作者 刘朕
1 个管道 的构建 失败 耗费 1 秒

后台列表筛选优化

@@ -10,33 +10,27 @@ class AuditController extends AdminBaseController{ @@ -10,33 +10,27 @@ class AuditController extends AdminBaseController{
10 *业务员审核列表 10 *业务员审核列表
11 */ 11 */
12 public function audit_list(){ 12 public function audit_list(){
13 -  
14 - if($this -> request -> isPost()){  
15 - $where = [  
16 - 'is_audit' => 0,  
17 - ];  
18 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
19 - $start_time = strtotime($_POST['start_time']);  
20 - $end_time = strtotime($_POST['end_time']);  
21 - $where['create_time'] = [['>=',$start_time],['<=',$end_time]];  
22 - }  
23 - if(!empty($_POST['keyword'])){  
24 - $where['phone'] = $_POST['keyword'];  
25 - }  
26 - $data = Db::name('sale_audit') -> where($where) -> paginate(1000000);  
27 - $data_arr = $data -> toArray();  
28 - foreach($data_arr['data'] as $key => $val){  
29 - $data_user = Db::name('user') -> where('id',$val['uid']) -> find();  
30 - $data_arr['data'][$key]['wname'] = $data_user['user_nickname'];  
31 - }  
32 - }else{  
33 - $data = Db::name('sale_audit') -> where('is_audit',0) -> paginate(12);  
34 - $data_arr = $data -> toArray();  
35 - foreach($data_arr['data'] as $key => $val){  
36 - $data_user = Db::name('user') -> where('id',$val['uid']) -> find();  
37 - $data_arr['data'][$key]['wname'] = $data_user['user_nickname'];  
38 - } 13 + $param = $this->request->param();
  14 + $where = [
  15 + 'is_audit' => 0,
  16 + ];
  17 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  18 + $start_time = strtotime($param['start_time']);
  19 + $end_time = strtotime($param['end_time']);
  20 + $where['create_time'] = [['>=',$start_time],['<=',$end_time]];
  21 + }
  22 + if(!empty($param['keyword'])){
  23 + $where['phone'] = $param['keyword'];
  24 + }
  25 + $data = Db::name('sale_audit')->where($where)->order('create_time','DESC')->paginate(12);
  26 + $data_arr = $data -> toArray();
  27 + foreach($data_arr['data'] as $key => $val){
  28 + $data_user = Db::name('user') -> where('id',$val['uid']) -> find();
  29 + $data_arr['data'][$key]['wname'] = $data_user['user_nickname'];
39 } 30 }
  31 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  32 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  33 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
40 $this -> assign('data',$data); 34 $this -> assign('data',$data);
41 $this -> assign('data_arr',$data_arr['data']); 35 $this -> assign('data_arr',$data_arr['data']);
42 return $this -> fetch(); 36 return $this -> fetch();
@@ -11,53 +11,43 @@ class GoodsController extends AdminBaseController{ @@ -11,53 +11,43 @@ class GoodsController extends AdminBaseController{
11 * 平台商品列表 11 * 平台商品列表
12 */ 12 */
13 public function goods_list(){ 13 public function goods_list(){
  14 + $param = $this->request->param();
  15 + $where = [
  16 + 'type' => ['=', 1],
  17 + ];
  18 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  19 + $start_time = strtotime($param['start_time']);
  20 + $end_time = strtotime($param['end_time']);
  21 + $where['create_time'] = [['>=',$start_time],['<=',$end_time]];
  22 + }
  23 + if(!empty($param['keyword'])){
  24 + $keyword = $param['keyword'];
  25 + $where['book_name'] = ['like',"%$keyword%"];
  26 + }
  27 + if(!empty($param['classify_id'])){
  28 + if($param['classify_id'] == 0){
  29 + $where['classify_id'] = 0;
  30 + }elseif ($param['classify_id'] == 100){
14 31
15 - if($this -> request -> isPost()){  
16 - $where = [  
17 - 'type' => ['=', 1],  
18 - ];  
19 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
20 - $start_time = strtotime($_POST['start_time']);  
21 - $end_time = strtotime($_POST['end_time']);  
22 - $where['create_time'] = [['>=',$start_time],['<=',$end_time]];  
23 - }  
24 - $keyword = $_POST['keyword'];  
25 - if(!empty($_POST['keyword'])){  
26 - $where['book_name'] = ['like',"%$keyword%"];  
27 - }  
28 - if(!empty($_POST['classify_id'])){  
29 - if($_POST['classify_id'] == 0){  
30 - $where['classify_id'] = 0;  
31 - }elseif ($_POST['classify_id'] == 100){  
32 -  
33 - }else{  
34 - $where['classify_id'] = $_POST['classify_id'];  
35 - }  
36 - }  
37 - $classif_data = Db::name('classification') -> select();  
38 - $this -> assign('classif_data',$classif_data);  
39 - $data = Db::name('goods') -> where($where) -> paginate(1000000);  
40 - $data1 = $data -> toArray();  
41 - foreach ($data1['data'] as $key => $val){  
42 - $class_data = Db::name('classification') -> where('id',$val['classify_id']) -> find();  
43 - $data1['data'][$key]['classify_name'] = $class_data['name'];  
44 - }  
45 - $this -> assign('data',$data1['data']);  
46 - $this -> assign('res',$data);  
47 - return $this -> fetch();  
48 - }else{  
49 - $classif_data = Db::name('classification') -> select();  
50 - $this -> assign('classif_data',$classif_data);  
51 - $data = Db::name('goods') -> where('type','1') -> paginate(12);  
52 - $data1 = $data -> toArray();  
53 - foreach ($data1['data'] as $key => $val){  
54 - $class_data = Db::name('classification') -> where('id',$val['classify_id']) -> find();  
55 - $data1['data'][$key]['classify_name'] = $class_data['name']; 32 + }else{
  33 + $where['classify_id'] = $param['classify_id'];
56 } 34 }
57 - $this -> assign('data',$data1['data']);  
58 - $this -> assign('res',$data);  
59 - return $this -> fetch();  
60 } 35 }
  36 + $classif_data = Db::name('classification') -> select();
  37 + $this -> assign('classif_data',$classif_data);
  38 + $data = Db::name('goods') -> where($where)->order('create_time','DESC')->paginate(12);
  39 + $data1 = $data -> toArray();
  40 + foreach ($data1['data'] as $key => $val){
  41 + $class_data = Db::name('classification') -> where('id',$val['classify_id']) -> find();
  42 + $data1['data'][$key]['classify_name'] = $class_data['name'];
  43 + }
  44 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  45 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  46 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
  47 + $this->assign('classify_id',!empty($param['classify_id']) ? $param['classify_id'] : '');
  48 + $this -> assign('data',$data1['data']);
  49 + $this -> assign('res',$data);
  50 + return $this -> fetch();
61 51
62 } 52 }
63 53
@@ -12,7 +12,7 @@ class LabelController extends AdminBaseController{ @@ -12,7 +12,7 @@ class LabelController extends AdminBaseController{
12 */ 12 */
13 public function classify_list(){ 13 public function classify_list(){
14 14
15 - $data = Db::name('classification') -> select(); 15 + $data = Db::name('classification')->order('create_time','DESC')->select();
16 $this -> assign('data',$data); 16 $this -> assign('data',$data);
17 return $this -> fetch(); 17 return $this -> fetch();
18 18
@@ -10,26 +10,26 @@ class OrderscourierController extends AdminBaseController{ @@ -10,26 +10,26 @@ class OrderscourierController extends AdminBaseController{
10 *平台订单列表 10 *平台订单列表
11 */ 11 */
12 public function order_list(){ 12 public function order_list(){
13 -  
14 - if($this -> request -> isPost()){  
15 - $where = [  
16 - "indent_type" => 1  
17 - ];  
18 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
19 - $start_time = strtotime($_POST['start_time']);  
20 - $end_time = strtotime($_POST['end_time']);  
21 - $where['create_time'] = [['>=',$start_time],['<=',$end_time]];  
22 - }  
23 - if(!empty($_POST['keyword'])){  
24 - $where['order_number'] = $_POST['keyword'];  
25 - }  
26 - if(!empty($_POST['state'])){  
27 - $where['state'] = $_POST['state'];  
28 - }  
29 - $data = Db::name('indent') -> where($where) -> where("state = 2 or state = 3 or state = 5") -> paginate(1000000);  
30 - }else{  
31 - $data = Db::name('indent') -> where('indent_type','1') -> where("state = 2 or state = 3 or state = 5") -> paginate(12); 13 + $param = $this->request->param();
  14 + $where = [
  15 + "indent_type" => 1
  16 + ];
  17 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  18 + $start_time = strtotime($param['start_time']);
  19 + $end_time = strtotime($param['end_time']);
  20 + $where['create_time'] = [['>=',$start_time],['<=',$end_time]];
  21 + }
  22 + if(!empty($param['keyword'])){
  23 + $where['order_number'] = ['like','%'.$param['keyword'].'%'];
  24 + }
  25 + if(!empty($param['state'])){
  26 + $where['state'] = $param['state'];
32 } 27 }
  28 + $data = Db::name('indent') -> where($where) -> where("state = 2 or state = 3 or state = 5") -> paginate(12);
  29 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  30 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  31 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
  32 + $this->assign('state',!empty($param['state']) ? $param['state'] : '');
33 $this -> assign('data',$data); 33 $this -> assign('data',$data);
34 return $this -> fetch(); 34 return $this -> fetch();
35 35
@@ -11,28 +11,30 @@ class SalesmangoodsController extends AdminBaseController{ @@ -11,28 +11,30 @@ class SalesmangoodsController extends AdminBaseController{
11 *业务员商品列表 11 *业务员商品列表
12 */ 12 */
13 public function salesman_list(){ 13 public function salesman_list(){
14 -  
15 - if($this -> request -> isPost()){  
16 - $where = [  
17 - 'type' => 2,  
18 - ];  
19 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
20 - $start_time = strtotime($_POST['start_time']);  
21 - $end_time = strtotime($_POST['end_time']);  
22 - $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];  
23 - }  
24 - if(!empty($_POST['keyword'])){  
25 - $keyword = $_POST['keyword'];  
26 - $where['a.book_name'] = ['like',"%$keyword%"];  
27 - }  
28 - $data = Db::name('goods') -> alias('a') -> field('a.*,b.user_nickname') -> join('user b',"a.uid=b.id",'LEFT') -> where($where) -> paginate(1000000);  
29 - $this -> assign('data',$data);  
30 - return $this -> fetch();  
31 - }else{  
32 - $data = Db::name('goods') -> alias('a') -> field('a.*,b.user_nickname') -> join('user b',"a.uid=b.id",'LEFT') -> where('type',2) -> paginate(12);  
33 - $this -> assign('data',$data);  
34 - return $this -> fetch(); 14 + $param = $this->request->param();
  15 + $where = [
  16 + 'type' => 2,
  17 + ];
  18 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  19 + $start_time = strtotime($param['start_time']);
  20 + $end_time = strtotime($param['end_time']);
  21 + $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];
  22 + }
  23 + if(!empty($param['keyword'])){
  24 + $keyword = $param['keyword'];
  25 + $where['a.book_name'] = ['like',"%$keyword%"];
35 } 26 }
  27 + $data = Db::name('goods')->alias('a')
  28 + ->field('a.*,b.user_nickname')
  29 + ->join('user b',"a.uid=b.id",'LEFT')
  30 + ->where($where)
  31 + ->order('a.create_time','DESC')
  32 + ->paginate(12);
  33 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  34 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  35 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
  36 + $this -> assign('data',$data);
  37 + return $this -> fetch();
36 38
37 } 39 }
38 40
@@ -12,23 +12,19 @@ class SchoolController extends AdminBaseController{ @@ -12,23 +12,19 @@ class SchoolController extends AdminBaseController{
12 * 学校管理列表 12 * 学校管理列表
13 * */ 13 * */
14 public function school_list(){ 14 public function school_list(){
15 -  
16 - if($this -> request -> isPost()){  
17 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
18 - $start_time = strtotime($_POST['start_time']);  
19 - $end_time = strtotime($_POST['end_time']);  
20 - $where['create_time'] = [['>=',$start_time],['<=',$end_time]];  
21 - }  
22 - if(!empty($_POST['keyword'])){  
23 - $keyword = $_POST['keyword'];  
24 - $where['school'] = ['like',"%$keyword%"];  
25 - }  
26 - $data1 = Db::name('school') -> where($where) -> paginate(1000000) ;  
27 - $data = $data1 -> toArray();  
28 - }else{  
29 - $data1 = Db::name('school') -> paginate(12) ;  
30 - $data = $data1 -> toArray(); 15 + $param = $this->request->param();
  16 + $where = [];
  17 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  18 + $start_time = strtotime($param['start_time']);
  19 + $end_time = strtotime($param['end_time']);
  20 + $where['create_time'] = [['>=',$start_time],['<=',$end_time]];
  21 + }
  22 + if(!empty($param['keyword'])){
  23 + $keyword = $param['keyword'];
  24 + $where['school'] = ['like',"%$keyword%"];
31 } 25 }
  26 + $data1 = Db::name('school')->where($where)->order('create_time','DESC') -> paginate(12) ;
  27 + $data = $data1 -> toArray();
32 foreach ($data['data'] as $key => $val){ 28 foreach ($data['data'] as $key => $val){
33 $user_data = Db::name('user') -> where('id',$val['uid']) -> find(); 29 $user_data = Db::name('user') -> where('id',$val['uid']) -> find();
34 $data['data'][$key]['uname'] = $user_data['user_nickname']; 30 $data['data'][$key]['uname'] = $user_data['user_nickname'];
@@ -13,29 +13,27 @@ class WithdrawalController extends AdminBaseController{ @@ -13,29 +13,27 @@ class WithdrawalController extends AdminBaseController{
13 * 提现审核 13 * 提现审核
14 */ 14 */
15 public function withd_audit(){ 15 public function withd_audit(){
16 -  
17 - if($this -> request -> isPost()){  
18 - $where['state'] = 0;  
19 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
20 - $start_time = strtotime($_POST['start_time']);  
21 - $end_time = strtotime($_POST['end_time']);  
22 - $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];  
23 - }  
24 - if(!empty($_POST['keyword'])){  
25 - $where['b.phone'] = $_POST['keyword'];  
26 - }  
27 - $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where($where) -> paginate(1000000);  
28 - $data_arr = $data -> toArray();  
29 - }else{  
30 - $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where("state = 0") -> paginate(12);  
31 - $data_arr = $data -> toArray(); 16 + $param = $this->request->param();
  17 + $where['state'] = 0;
  18 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  19 + $start_time = strtotime($param['start_time']);
  20 + $end_time = strtotime($param['end_time']);
  21 + $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];
  22 + }
  23 + if(!empty($param['keyword'])){
  24 + $where['b.phone'] = ['like','%'.$param['keyword'].'%'];
32 } 25 }
  26 + $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where($where) -> paginate(12);
  27 + $data_arr = $data -> toArray();
33 if(!empty($data_arr)){ 28 if(!empty($data_arr)){
34 foreach($data_arr['data'] as $key => $val){ 29 foreach($data_arr['data'] as $key => $val){
35 $name = Db::name('user') -> where('id',$val['uid']) -> find(); 30 $name = Db::name('user') -> where('id',$val['uid']) -> find();
36 $data_arr['data'][$key]['name'] = $name['user_nickname']; 31 $data_arr['data'][$key]['name'] = $name['user_nickname'];
37 } 32 }
38 } 33 }
  34 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  35 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  36 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
39 $this -> assign('data_arr',$data_arr['data']); 37 $this -> assign('data_arr',$data_arr['data']);
40 $this -> assign('data',$data); 38 $this -> assign('data',$data);
41 return $this -> fetch(); 39 return $this -> fetch();
@@ -46,29 +44,27 @@ class WithdrawalController extends AdminBaseController{ @@ -46,29 +44,27 @@ class WithdrawalController extends AdminBaseController{
46 * 提现列表 44 * 提现列表
47 */ 45 */
48 public function withd_list(){ 46 public function withd_list(){
49 -  
50 - if($this -> request -> isPost()){  
51 - $where['state'] = [['=',1],['=',2],'or'];  
52 - if(!empty($_POST['start_time']) && !empty($_POST['end_time'])){  
53 - $start_time = strtotime($_POST['start_time']);  
54 - $end_time = strtotime($_POST['end_time']);  
55 - $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];  
56 - }  
57 - if(!empty($_POST['keyword'])){  
58 - $where['b.phone'] = $_POST['keyword'];  
59 - }  
60 - $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where($where) -> paginate(1000000);  
61 - $data_arr = $data -> toArray();  
62 - }else{  
63 - $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where("state = 1 or state = 2") -> order("a.create_time desc") -> paginate(12);  
64 - $data_arr = $data -> toArray(); 47 + $param = $this->request->param();
  48 + $where['state'] = [['=',1],['=',2],'or'];
  49 + if(!empty($param['start_time']) && !empty($param['end_time'])){
  50 + $start_time = strtotime($param['start_time']);
  51 + $end_time = strtotime($param['end_time']);
  52 + $where['a.create_time'] = [['>=',$start_time],['<=',$end_time]];
  53 + }
  54 + if(!empty($param['keyword'])){
  55 + $where['b.phone'] = ['like','%'.$param['keyword'].'%'];
65 } 56 }
  57 + $data = Db::name('money_expend') -> alias('a') -> field('a.*,b.phone') -> join('my_user b','a.uid=b.uid','LEFT') -> where($where) -> order("a.create_time desc") -> paginate(12);
  58 + $data_arr = $data -> toArray();
66 if(!empty($data_arr)){ 59 if(!empty($data_arr)){
67 foreach($data_arr['data'] as $key => $val){ 60 foreach($data_arr['data'] as $key => $val){
68 $name = Db::name('user') -> where('id',$val['uid']) -> find(); 61 $name = Db::name('user') -> where('id',$val['uid']) -> find();
69 $data_arr['data'][$key]['name'] = $name['user_nickname']; 62 $data_arr['data'][$key]['name'] = $name['user_nickname'];
70 } 63 }
71 } 64 }
  65 + $this->assign('start_time',!empty($param['start_time']) ? $param['start_time'] : '');
  66 + $this->assign('end_time',!empty($param['end_time']) ? $param['end_time'] : '');
  67 + $this->assign('keyword',!empty($param['keyword']) ? $param['keyword'] : '');
72 $this -> assign('data_arr',$data_arr['data']); 68 $this -> assign('data_arr',$data_arr['data']);
73 $this -> assign('data',$data); 69 $this -> assign('data',$data);
74 return $this -> fetch(); 70 return $this -> fetch();
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 <option value="100">全部</option> 28 <option value="100">全部</option>
29 <option value="0">为空</option> 29 <option value="0">为空</option>
30 <volist name="classif_data" id="vo"> 30 <volist name="classif_data" id="vo">
31 - <option value="{$vo.id}">{$vo.name}</option> 31 + <option value="{$vo.id}" <eq name="classify_id" value="$vo['id']">selected</eq> >{$vo.name}</option>
32 </volist> 32 </volist>
33 </select> 33 </select>
34 <input type="submit" class="btn btn-primary" value="搜索"/> 34 <input type="submit" class="btn btn-primary" value="搜索"/>
@@ -25,8 +25,8 @@ @@ -25,8 +25,8 @@
25 订单状态: 25 订单状态:
26 <select name="state" class="form-control"> 26 <select name="state" class="form-control">
27 <option value="">全部</option> 27 <option value="">全部</option>
28 - <option value="3">已完成</option>  
29 - <option value="2">未完成</option> 28 + <option value="3" <eq name="state" value="3">selected</eq> >已完成</option>
  29 + <option value="2" <eq name="state" value="2">selected</eq> >未完成</option>
30 </select> 30 </select>
31 <input type="submit" class="btn btn-primary" value="搜索"/> 31 <input type="submit" class="btn btn-primary" value="搜索"/>
32 <a class="btn btn-danger" href="{:url('Orderscourier/order_list')}">清空</a> 32 <a class="btn btn-danger" href="{:url('Orderscourier/order_list')}">清空</a>