Blame view

common/models/CartBillsSearch.php 2.06 KB
6c07dc8e   Mihail   add bills models,...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  <?php
  
  namespace common\models;
  
  use common\components\CustomVarDamp;
  use Yii;
  use yii\base\Model;
  use yii\data\ActiveDataProvider;
  use common\models\CartBillsView;
  
  /**
   * CartBillsSearch represents the model behind the search form about `common\models\CartBills`.
   */
  class CartBillsSearch extends CartBillsView
  {
8b0defd0   Mihail   add mails classes
16
      public $date_to;
6c07dc8e   Mihail   add bills models,...
17
18
19
20
21
22
23
      /**
       * @inheritdoc
       */
      public function rules()
      {
          return [
              [['id', 'account_id', 'status'], 'integer'],
8b0defd0   Mihail   add mails classes
24
              [['dt', 'date_to'], 'string', 'max' => 10],
6c07dc8e   Mihail   add bills models,...
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
          ];
      }
  
      /**
       * @inheritdoc
       */
      public function scenarios()
      {
          // bypass scenarios() implementation in the parent class
          return Model::scenarios();
      }
  
      /**
       * Creates data provider instance with search query applied
       *
       * @param array $params
       *
       * @return ActiveDataProvider
       */
      public function search($params)
      {
          $query = CartBillsView::find();
  
          $dataProvider = new ActiveDataProvider([
              'query' => $query,
          ]);
  
          $this->load($params);
8b0defd0   Mihail   add mails classes
53
  
6c07dc8e   Mihail   add bills models,...
54
          if (!$this->validate()) {
e044346b   Mihail   finish with cart ...
55
  
6c07dc8e   Mihail   add bills models,...
56
              return $dataProvider;
e044346b   Mihail   finish with cart ...
57
58
59
60
61
62
63
  
          }
  
          if (  !$params || !$params['CartBillsSearch'] ) {
              // если не переданы параметры - показываем первые 100 записей
              $query->limit = 100;
  
6c07dc8e   Mihail   add bills models,...
64
65
66
67
68
          }
  
          $query->andFilterWhere([
              'id' => $this->id,
              'account_id' => $this->account_id,
6c07dc8e   Mihail   add bills models,...
69
70
71
              'status_id' => $this->status,
          ]);
  
e044346b   Mihail   finish with cart ...
72
73
74
          if( !empty( $this->dt ) || !empty( $this->date_to ) ){
              $date_from = \Yii::$app->converter->convertTo( 'timestamp', $this->dt );
              $date_to = \Yii::$app->converter->convertTo( 'timestamp', $this->date_to, ['begin_of_the_day' => false] );
8b0defd0   Mihail   add mails classes
75
76
77
78
  
              $query->andFilterWhere([
                  'between', 'dt', $date_from, $date_to
              ]);
8b0defd0   Mihail   add mails classes
79
  
e044346b   Mihail   finish with cart ...
80
          }
6c07dc8e   Mihail   add bills models,...
81
82
83
  
          return $dataProvider;
      }
8b0defd0   Mihail   add mails classes
84
85
86
87
88
  
      public static function findById($id){
  
          return CartBillsView::find()->where(['id' => $id])->one();
      }
6c07dc8e   Mihail   add bills models,...
89
  }