public function delete() { $users = User::find()->All(); foreach ($users as $user) { $IncomeMap = UserIncomeMap::findOne(array('user_id' => $user->id, 'itemVatCat_id' => $this->id)); if ($IncomeMap) { //'user_id', 'itemVatCat_id' $IncomeMap->delete(); } } parent::delete(); }
public static function findByPk($id, $date = null) { $model = self::findOne($id); if ($model !== null) { if (isset(Yii::$app->user)) { $uid = Yii::$app->user->id; } else { $uid = Yii::$app->params['uid']; } $incomeMap = UserIncomeMap::findOne(array('user_id' => $uid, 'itemVatCat_id' => $model->itemVatCat_id)); if ($incomeMap !== null) { $model->vat = Accounts::SrcTax($incomeMap->account_id, $date); } else { $model->vat = 0; } } return $model; }
private function compSave() { $catagories = ItemVatCat::find()->All(); foreach ($catagories as $catagory) { if (!UserIncomeMap::findOne(array('user_id' => $this->id, 'itemVatCat_id' => $catagory->id))) { //'user_id', 'itemVatCat_id' $model = new UserIncomeMap(); $attr = array("user_id" => $this->id, "itemVatCat_id" => $catagory->id, "account_id" => 100); $model->attributes = $attr; if (!$model->save()) { Yii::error('fatel error unable to save cat'); return false; } } } Yii::info('user save catagory'); $tmps = \yii\web\UploadedFile::getInstanceByName('User[certfile]'); if ($tmps) { Yii::info('cert file loaded'); if ($tmps->saveAs($this->getCertFilePath($this->id))) { // add it to the main model now } else { echo 'Cannot upload!'; } //} } }
public function transaction($transaction, $action, $optacc) { $this->ini(); if (is_null($this->item)) { throw new \Exception('The item ' . $this->item_id . ' does not exsits.'); } $vatcat = $this->item->itemVatCat_id; $vatCatAcc = UserIncomeMap::findOne(array('user_id' => $transaction->owner_id, 'itemVatCat_id' => $vatcat)); if ($vatCatAcc === null) { throw new \Exception('The item ' . $this->item_id . ' does not have a vat catagory.'); } $sum = 0; if ($optacc == '') { $incomeacc = $vatCatAcc->account_id; $sum = $this->ihTotal * $action; } else { $incomeacc = $optacc; $multi = 1; $vat = $this->iTotalVat - $this->iTotal; if ($oppt = Accounts::findOne($incomeacc)) { //not null? $multi = 1 - $oppt->src_tax / 100; } $vat = round($vat * $multi, $this->_precision); //$multi=$this->iTotalVat*$multi; // Yii::info($this); //Yii::info($multi); $sum = ($this->ihTotal + $vat) * $action; } if ($sum) { return $transaction->addSingleLine($incomeacc, round($sum, $this->_precision)); } return $transaction; }