Files
exchange-2.0/app/Classes/Modules/Transactions/Services/UpdatesTransactionStatus.php
T
edmondlang 1591cb9162 crm changes
2023-06-12 20:41:46 +08:00

41 lines
1.3 KiB
PHP

<?php
namespace App\Classes\Modules\Transactions\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\Modules\PerfexCRM\Processors\TransactionToPerfexCRMProcessorV2;
use App\Models\Transaction;
use App\Classes\Modules\PerfexCRM\Processors\TransactionToPerfexCRMProcessor;
class UpdatesTransactionStatus extends AbstractUpdateRecord
{
/** @var TransactionToPerfexCRMProcessorV2 */
private $transactionToPerfexCRMProcessor;
/**
* @param TransactionToPerfexCRMProcessorV2 $transactionToPerfexCRMProcessor
*/
public function __construct(TransactionToPerfexCRMProcessorV2 $transactionToPerfexCRMProcessor)
{
$this->transactionToPerfexCRMProcessor = $transactionToPerfexCRMProcessor;
}
/**
* @param Transaction $model
* @param int $status
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(Transaction $model, int $status)
{
$transaction = clone($model);
$model->status = $status;
$result = $this->handler($model);
if(config('perfexcrm.is_enabled') == 'true'){
$this->transactionToPerfexCRMProcessor->execute($transaction, $status);
}
return $result;
}
}