add frontend ticket changes

This commit is contained in:
2015-10-08 17:18:18 +02:00
parent c3ae414bba
commit 11e7c85cf3
13 changed files with 294 additions and 70 deletions

View File

@@ -5,10 +5,14 @@ use common\models\Ticket;
use common\models\TicketType;
use common\models\Account;
use common\models\Discount;
use common\models\Transfer;
class TicketCreate extends Ticket{
public $_currency;
public $_account;
public $_discount;
public function rules()
{
return [
@@ -47,7 +51,6 @@ class TicketCreate extends Ticket{
/////////////////////
//comment
/////////////////////
[['comment'], 'required'],
[['comment'], 'string', 'max' => 255]
];
}
@@ -59,18 +62,26 @@ class TicketCreate extends Ticket{
$this->addError($attribute,Yii::t('frontend/ticket' , 'Invalid ticket type' ));
}
}
public function validateAccount($attribute,$params){
$acc = Account::findOne($this->id_account);
if ( !isset($acc)) {
$this->_account = Account::findOne($this->id_account);
if ( !isset($this->_account )) {
$this->addError($attribute,Yii::t('frontend/ticket' , 'Invalid transfer' ));
}
}
public function validateDiscount($attribute,$params){
$discount = Discount::findOne($this->id_discount);
if ( !isset($discount)) {
$this->_discount = Discount::findOne($this->id_discount);
if ( !isset($this->_discount)) {
$this->addError($attribute,Yii::t('frontend/ticket' , 'Invalid discount' ));
}
}
public function afterSave($insert, $changedAttributes){
$transfer = Transfer::createTicketTransfer($this->_account, $this->_discount, null, 1, $this);
}
}

View File

@@ -39,14 +39,19 @@ class TicketSearch extends Ticket
*
* @return ActiveDataProvider
*/
public function search($params)
public function search($card, $params)
{
$query = Ticket::find();
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort'=> ['defaultOrder' => ['end'=>SORT_DESC]]
]);
$query->innerJoinWith( 'card' );
$query->andWhere( ['card.id_card' => $card->id_card ] );
$this->load($params);
if (!$this->validate()) {
@@ -56,7 +61,6 @@ class TicketSearch extends Ticket
}
$query->andFilterWhere([
'id_ticket' => $this->id_ticket,
'id_user' => $this->id_user,
'id_ticket_type' => $this->id_ticket_type,
'id_account' => $this->id_account,