Update transactions after a bank rule has been added or updated

This commit is contained in:
David Bomba 2023-09-05 09:09:04 +10:00
parent 1d6ed8082b
commit f5ee1efec0
3 changed files with 15 additions and 3 deletions

View File

@ -24,6 +24,7 @@ use App\Http\Requests\BankTransactionRule\StoreBankTransactionRuleRequest;
use App\Http\Requests\BankTransactionRule\CreateBankTransactionRuleRequest; use App\Http\Requests\BankTransactionRule\CreateBankTransactionRuleRequest;
use App\Http\Requests\BankTransactionRule\UpdateBankTransactionRuleRequest; use App\Http\Requests\BankTransactionRule\UpdateBankTransactionRuleRequest;
use App\Http\Requests\BankTransactionRule\DestroyBankTransactionRuleRequest; use App\Http\Requests\BankTransactionRule\DestroyBankTransactionRuleRequest;
use App\Services\Bank\BankMatchingService;
class BankTransactionRuleController extends BaseController class BankTransactionRuleController extends BaseController
{ {
@ -254,8 +255,12 @@ class BankTransactionRuleController extends BaseController
*/ */
public function update(UpdateBankTransactionRuleRequest $request, BankTransactionRule $bank_transaction_rule) public function update(UpdateBankTransactionRuleRequest $request, BankTransactionRule $bank_transaction_rule)
{ {
//stubs for updating the model /** @var \App\Models\User $user */
$bank_transaction = $this->bank_transaction_repo->save($request->all(), $bank_transaction_rule); $user = auth()->user();
$bank_transaction_rule = $this->bank_transaction_repo->save($request->all(), $bank_transaction_rule);
BankMatchingService::dispatch($user->company()->id, $user->company()->db);
return $this->itemResponse($bank_transaction_rule->fresh()); return $this->itemResponse($bank_transaction_rule->fresh());
} }
@ -302,6 +307,7 @@ class BankTransactionRuleController extends BaseController
{ {
/** @var \App\Models\User $user **/ /** @var \App\Models\User $user **/
$user = auth()->user(); $user = auth()->user();
$bank_transaction_rule = BankTransactionRuleFactory::create($user->company()->id, $user->id); $bank_transaction_rule = BankTransactionRuleFactory::create($user->company()->id, $user->id);
return $this->itemResponse($bank_transaction_rule); return $this->itemResponse($bank_transaction_rule);
@ -353,6 +359,8 @@ class BankTransactionRuleController extends BaseController
$bank_transaction_rule = $this->bank_transaction_repo->save($request->all(), BankTransactionRuleFactory::create($user->company()->id, $user->id)); $bank_transaction_rule = $this->bank_transaction_repo->save($request->all(), BankTransactionRuleFactory::create($user->company()->id, $user->id));
BankMatchingService::dispatch($user->company()->id, $user->company()->db);
return $this->itemResponse($bank_transaction_rule); return $this->itemResponse($bank_transaction_rule);
} }

View File

@ -22,7 +22,10 @@ class BulkBankTransactionRuleRequest extends Request
*/ */
public function authorize() : bool public function authorize() : bool
{ {
return auth()->user()->isAdmin(); /** @var \App\Models\User $user */
$user = auth()->user();
return $user->isAdmin();
} }
public function rules() public function rules()

View File

@ -23,6 +23,7 @@ use Illuminate\Queue\SerializesModels;
class BankMatchingService implements ShouldQueue class BankMatchingService implements ShouldQueue
{ {
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public function __construct(public $company_id, public $db) public function __construct(public $company_id, public $db)
{ {
} }