Commit 2de24e5dbb5f8089e4d86be303e7e562618bdb0e

Authored by Alexey Boroda
1 parent 51413d10

-Feedback extended and sms log ready for test

Showing 2 changed files with 38 additions and 3 deletions   Show diff stats
models/Feedback.php
... ... @@ -2,6 +2,7 @@
2 2  
3 3 namespace artweb\artbox\models;
4 4  
  5 + use backend\models\User;
5 6 use Yii;
6 7 use yii\behaviors\AttributeBehavior;
7 8 use yii\behaviors\TimestampBehavior;
... ... @@ -14,10 +15,20 @@
14 15 * @property string $name
15 16 * @property string $phone
16 17 * @property integer $created_at
  18 + * @property integer $updated_at
17 19 * @property string $ip
  20 + * @property integer $status
  21 + * @property integer $manager_id
  22 + * @property User $manager
18 23 */
19 24 class Feedback extends ActiveRecord
20 25 {
  26 + const STATUSES = [
  27 + 0 => 'Новый',
  28 + 1 => 'Обрабатывается',
  29 + 2 => 'Нет ответа',
  30 + 3 => 'Завершен',
  31 + ];
21 32  
22 33 const SCENARIO_FEEDBACK = 'feedback';
23 34 const SCENARIO_CALLBACK = 'callback';
... ... @@ -56,8 +67,7 @@
56 67 {
57 68 return [
58 69 [
59   - 'class' => TimestampBehavior::className(),
60   - 'updatedAtAttribute' => false,
  70 + 'class' => TimestampBehavior::className(),
61 71 ],
62 72 [
63 73 'class' => AttributeBehavior::className(),
... ... @@ -78,6 +88,10 @@
78 88 {
79 89 return [
80 90 [
  91 + [ 'status' ],
  92 + 'integer',
  93 + ],
  94 + [
81 95 [
82 96 'phone',
83 97 'name',
... ... @@ -111,6 +125,19 @@
111 125 'phone' => Yii::t('app', 'phone'),
112 126 'created_at' => Yii::t('app', 'created_at'),
113 127 'ip' => Yii::t('app', 'ip'),
  128 + 'status' => Yii::t('app', 'status'),
  129 + 'manager_id' => Yii::t('app', 'manager'),
  130 + 'updated_at' => Yii::t('app', 'updated_at'),
114 131 ];
115 132 }
  133 +
  134 + /**
  135 + * Manager wich first ecited status field
  136 + *
  137 + * @return \yii\db\ActiveQuery
  138 + */
  139 + public function getManager()
  140 + {
  141 + return $this->hasOne(User::className(), [ 'id' => 'manager_id' ]);
  142 + }
116 143 }
... ...
models/FeedbackSearch.php
... ... @@ -46,13 +46,21 @@
46 46 */
47 47 public function search($params)
48 48 {
49   - $query = Feedback::find();
  49 + $query = Feedback::find()
  50 + ->orderBy(
  51 + [
  52 + 'created_at' => SORT_DESC,
  53 + ]
  54 + )->with('manager');
50 55  
51 56 // add conditions that should always apply here
52 57  
53 58 $dataProvider = new ActiveDataProvider(
54 59 [
55 60 'query' => $query,
  61 + 'pagination' => [
  62 + 'pageSize' => 50,
  63 + ],
56 64 ]
57 65 );
58 66  
... ...