const NIGHT_FLORIST_ID = 35;
const DAY_FLORIST_ID = 40;
+
/**
* {@inheritdoc}
*/
],
'required'
],
- [['date', 'name', 'name_name', 'name_last', 'name_family', 'comment', 'email', 'email_old', 'phone_old', 'card',
- 'password', 'keycode', 'check_id', 'check_id_forgot', 'sid_forgot', 'forgot_time', 'kod', 'created_id', 'created_name',
- 'created_store_id', 'balans_datetime', 'bonus_minus', 'bdate', 'date_last', 'date_last_sale', 'date_first_sale', 'sale_cnt',
- 'sale_avg_price', 'sale_price', 'reklama_info', 'alerts_balans', 'alerts_date', 'alerts_reklama', 'ref_code', 'referral_id',
- 'seller_id', 'store_id', 'first_minus_balance', 'telegram_unsubscribed_at'], 'safe'],
+ [
+ [
+ 'date',
+ 'name',
+ 'name_name',
+ 'name_last',
+ 'name_family',
+ 'comment',
+ 'email',
+ 'email_old',
+ 'phone_old',
+ 'card',
+ 'password',
+ 'keycode',
+ 'check_id',
+ 'check_id_forgot',
+ 'sid_forgot',
+ 'forgot_time',
+ 'kod',
+ 'created_id',
+ 'created_name',
+ 'created_store_id',
+ 'balans_datetime',
+ 'bonus_minus',
+ 'bdate',
+ 'date_last',
+ 'date_last_sale',
+ 'date_first_sale',
+ 'sale_cnt',
+ 'sale_avg_price',
+ 'sale_price',
+ 'reklama_info',
+ 'alerts_balans',
+ 'alerts_date',
+ 'alerts_reklama',
+ 'ref_code',
+ 'referral_id',
+ 'seller_id',
+ 'store_id',
+ 'first_minus_balance',
+ 'telegram_unsubscribed_at'
+ ],
+ 'safe'
+ ],
[['pol', 'info', 'telegram_created_at'], 'string'],
[
[
];
}
- public function getReferral() {
+ public function getReferral()
+ {
return $this->hasOne(Users::class, ['id' => 'referral_id']);
}
+
+ /**
+ * https://tracker.yandex.ru/ERP-252
+ * @return array
+ */
+ public function getUsersListForKogort()
+ {
+ $startDate = date('Y-m-d');
+ $endDate = date('Y-m-d', strtotime($startDate . ' +7 days'));
+
+ $salesPhone = Sales::find()
+ ->where(['>=', 'date', "$startDate 00:00:00"])
+ ->andWhere(['<=', 'date', "$endDate 23:59:59"])
+ ->distinct('phone')
+ ->select('phone')
+ ->column();
+
+ $memorableDate = UsersEvents::find()
+ ->where(['>=', 'date', "$startDate 00:00:00"])
+ ->andWhere(['<=', 'date', "$endDate 23:59:59"])
+ ->distinct('phone')
+ ->select('phone')
+ ->column();
+
+ $usersArray = array_unique(array_merge($salesPhone, $memorableDate));
+
+ $users = Users::find()
+ ->andWhere(['phone' => $usersArray])
+// ->andWhere() //заглушка на проверку что он уже участвовал в
+ ->all();
+ return $users;
+ }
+
}
\ No newline at end of file