desta fix for invalid bankaccount numbers; add virtual key object
This commit is contained in:
@@ -17,7 +17,7 @@ use backend\models\GiroKotegForm;
|
||||
|
||||
/**
|
||||
* TicketInstallmentRequestController implements the CRUD actions for TicketInstallmentRequest model.
|
||||
*
|
||||
*
|
||||
* TODO: FIX ACCESS
|
||||
*/
|
||||
class TicketInstallmentRequestController extends Controller
|
||||
@@ -47,7 +47,6 @@ class TicketInstallmentRequestController extends Controller
|
||||
]
|
||||
]
|
||||
// everything else is denied
|
||||
|
||||
]
|
||||
];
|
||||
}
|
||||
@@ -66,18 +65,19 @@ class TicketInstallmentRequestController extends Controller
|
||||
'dataProvider' => $dataProvider,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Lists pending TicketInstallmentRequest models.
|
||||
* @return mixed
|
||||
*/
|
||||
public function actionPending()
|
||||
{
|
||||
\Yii::info("Showing pending");
|
||||
$model = new TicketInstallmentMarkForSendForm();
|
||||
if ($model->load(Yii::$app->request->post()) ) {
|
||||
$model->markForSend();
|
||||
}
|
||||
|
||||
|
||||
$searchModel = new TicketInstallmentRequestSearchPending();
|
||||
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
|
||||
|
||||
@@ -102,7 +102,7 @@ class TicketInstallmentRequestController extends Controller
|
||||
\Yii::$app->session->setFlash('success',"Megbízás teljesítve");
|
||||
}
|
||||
|
||||
return $this->redirect(['ticket-installment-request/view',
|
||||
return $this->redirect(['ticket-installment-request/view',
|
||||
'id' => $model->id_ticket_installment_request,
|
||||
]);
|
||||
}
|
||||
@@ -115,15 +115,15 @@ class TicketInstallmentRequestController extends Controller
|
||||
public function actionDownloadGiro()
|
||||
{
|
||||
$model = new GiroKotegForm();
|
||||
|
||||
|
||||
if ($model->load(Yii::$app->request->post()) && $model->validate() ) {
|
||||
$model->createKoteg();
|
||||
return $this->redirect(['ugiro/view', 'id' => $model->koteg->id_ugiro]);
|
||||
}
|
||||
|
||||
|
||||
$searchModel = new TicketInstallmentRequestSearchDownloadGiro();
|
||||
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
|
||||
|
||||
|
||||
$model->action = "create";
|
||||
return $this->render('index_download_giro', [
|
||||
'searchModel' => $searchModel,
|
||||
@@ -197,7 +197,7 @@ class TicketInstallmentRequestController extends Controller
|
||||
|
||||
return $this->redirect(['index']);
|
||||
}
|
||||
|
||||
|
||||
public function actionTest( )
|
||||
{
|
||||
return $this->render('test');
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace backend\models;
|
||||
|
||||
use common\models\HuBankAccountValidator;
|
||||
use Yii;
|
||||
use yii\base\Model;
|
||||
use common\models\Card;
|
||||
@@ -16,25 +17,48 @@ use common\models\TicketInstallmentRequest;
|
||||
* @property \Yii\web\UploadedFile $file
|
||||
*/
|
||||
class TicketInstallmentMarkForSendForm extends Model{
|
||||
|
||||
|
||||
public $items;
|
||||
|
||||
|
||||
public function rules(){
|
||||
return [
|
||||
['items', 'each', 'rule' => ['integer']],
|
||||
['items', 'validateBankAccount'],
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public function validateBankAccount($attribute, $params){
|
||||
$items = TicketInstallmentRequest::find()->andWhere([
|
||||
'in', 'id_ticket_installment_request' , $this->items
|
||||
])->all();
|
||||
\Yii::info("validateBankAccount:". count($items));
|
||||
$validator = new HuBankAccountValidator();
|
||||
foreach($items as $item){
|
||||
\Yii::info("validateBankAccount2:". $item->id_ticket_installment_request);
|
||||
/** @var Customer $customer */
|
||||
$customer = $item->customer;
|
||||
\Yii::info("validateBankAccount3:". $customer->username);
|
||||
$isBankAccountValid = $validator->validate($customer->bank_account);
|
||||
if (!$isBankAccountValid){
|
||||
$errorMessage = "";
|
||||
$errorMessage .= "Vendég=".$customer->name;
|
||||
$errorMessage .= "; Kártya=".$customer->card->number;
|
||||
$errorMessage .= "; Megbízás=".$item->id_ticket_installment_request;
|
||||
$this->addError('items', "Hibás bankszámlaszám:" .$errorMessage );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function markForSend(){
|
||||
\Yii::info("mark for send");
|
||||
if ( $this->validate() && isset($this->items ) && is_array($this->items ) ){
|
||||
$updated = 0;
|
||||
$updated = TicketInstallmentRequest::updateAll(['status' => TicketInstallmentRequest::$STATUS_MARKED_TO_SEND ],['in', 'id_ticket_installment_request' , $this->items]);
|
||||
\Yii::$app->session->setFlash('success', $updated . " megbízás küldésre jelölve " );
|
||||
}else{
|
||||
\Yii::$app->session->setFlash('success', " Nem történt küldésre jelölés! " );
|
||||
\Yii::$app->session->setFlash('error', " Nem történt küldésre jelölés! " . $this->getFirstError('items') );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user