public function updateBalance() { $historyModel = new BalanceHistory(); $balance = $historyModel->getBalanceById($this->user->id); $this->balance = $balance; $this->save(false, ['balance']); }
public function create($user) { if (empty($this->email)) { return false; } $partner = User::findOne(['username' => $this->email]); $this->userId = $user->id; $this->partnerId = $partner->id; $this->save(); $id = md5($user->id . '' . $partner->id); $historyModel = new BalanceHistory(); $historyModel->add($partner->id, self::SUM, $user->dateCreate, $id); $partner->profile->updateBalance(); }
public function actionCalculate() { /* @var $userList \app\modules\cms\models\User[] */ /* @var $partnerList \app\modules\cms\models\Partner[] */ /* @var $historyModel \app\modules\cms\models\BalanceHistory */ /* @var $historyList \app\modules\cms\models\BalanceHistory[] */ //получить всех пользователей $sum = 1000.0; //сумма за каждое зачисление $userList = \app\modules\cms\models\User::find()->all(); $historyModel = new \app\modules\cms\models\BalanceHistory(); foreach ($userList as $user) { $userId = $user->id; // echo $user->username."\r\n"; //получить всех пользователей с партнерки $partnerList = \app\modules\cms\models\Partner::find()->where(['partnerId' => $userId])->all(); //получить историю баланса по юзеру $historyList = \app\modules\cms\models\BalanceHistory::find()->partner()->all(); $historyIdList = $historyModel->idList($historyList); if (sizeof($partnerList) > sizeof($historyList)) { foreach ($partnerList as $partner) { $id = md5($partner->userId . $partner->partnerId); if (!in_array($id, $historyIdList)) { // echo "\t".$id."\r\n"; $historyModel->add($userId, $sum, $partner->user->dateCreate, $id); } } } $balance = $historyModel->getBalanceById($user->id); if (!$user->profile) { continue; } $user->profile->updateBalance($balance); } }
public function actionPartner() { $model = new \app\modules\cms\models\Partner(); $items = $model->invitedList(); $historyList = \app\modules\cms\models\BalanceHistory::getByUserId(); return $this->render('partner', ['items' => $items, 'historyList' => $historyList]); }
public function crib() { $balanceModel = new BalanceHistory(); $balanceModel->id = md5($this->id . '' . time()); $balanceModel->type = BalanceHistory::TYPE_REMOVE; $balanceModel->userId = $this->id; $balanceModel->sum = $this->crib; $balanceModel->date = date(DATE_FORMAT_DB); $balanceModel->save(); $balance = $balanceModel->getBalanceById($this->id); $this->profile->updateBalance(); }