| 
				
			 | 
			
			
				
				@@ -38,9 +38,18 @@ class TransactionFactory extends Factory 
			 | 
		
		
	
		
			
			| 
				38
			 | 
			
				38
			 | 
			
			
				
				     public function configure(): static 
			 | 
		
		
	
		
			
			| 
				39
			 | 
			
				39
			 | 
			
			
				
				     { 
			 | 
		
		
	
		
			
			| 
				40
			 | 
			
				40
			 | 
			
			
				
				         return $this->afterCreating(function (Transaction $transaction) { 
			 | 
		
		
	
		
			
			| 
				41
			 | 
			
				
			 | 
			
			
				
				-            $transaction->journalEntries()->create([ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				41
			 | 
			
			
				
				+            $chartAccount = $transaction->account; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				42
			 | 
			
			
				
				+            $bankAccount = $transaction->bankAccount->account; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				43
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				44
			 | 
			
			
				
				+            $debitAccount = $transaction->type->isWithdrawal() ? $chartAccount : $bankAccount; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				45
			 | 
			
			
				
				+            $creditAccount = $transaction->type->isWithdrawal() ? $bankAccount : $chartAccount; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				46
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				47
			 | 
			
			
				
				+            if ($debitAccount === null || $creditAccount === null) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				48
			 | 
			
			
				
				+                return; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				49
			 | 
			
			
				
				+            } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				50
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				51
			 | 
			
			
				
				+            $debitAccount->journalEntries()->create([ 
			 | 
		
		
	
		
			
			| 
				42
			 | 
			
				52
			 | 
			
			
				
				                 'company_id' => $transaction->company_id, 
			 | 
		
		
	
		
			
			| 
				43
			 | 
			
				
			 | 
			
			
				
				-                'account_id' => $transaction->account_id, 
			 | 
		
		
	
		
			
			| 
				44
			 | 
			
				53
			 | 
			
			
				
				                 'transaction_id' => $transaction->id, 
			 | 
		
		
	
		
			
			| 
				45
			 | 
			
				54
			 | 
			
			
				
				                 'type' => 'debit', 
			 | 
		
		
	
		
			
			| 
				46
			 | 
			
				55
			 | 
			
			
				
				                 'amount' => $transaction->amount, 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -49,9 +58,8 @@ class TransactionFactory extends Factory 
			 | 
		
		
	
		
			
			| 
				49
			 | 
			
				58
			 | 
			
			
				
				                 'updated_by' => $transaction->updated_by, 
			 | 
		
		
	
		
			
			| 
				50
			 | 
			
				59
			 | 
			
			
				
				             ]); 
			 | 
		
		
	
		
			
			| 
				51
			 | 
			
				60
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				52
			 | 
			
				
			 | 
			
			
				
				-            $transaction->journalEntries()->create([ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				61
			 | 
			
			
				
				+            $creditAccount->journalEntries()->create([ 
			 | 
		
		
	
		
			
			| 
				53
			 | 
			
				62
			 | 
			
			
				
				                 'company_id' => $transaction->company_id, 
			 | 
		
		
	
		
			
			| 
				54
			 | 
			
				
			 | 
			
			
				
				-                'account_id' => $transaction->account_id, 
			 | 
		
		
	
		
			
			| 
				55
			 | 
			
				63
			 | 
			
			
				
				                 'transaction_id' => $transaction->id, 
			 | 
		
		
	
		
			
			| 
				56
			 | 
			
				64
			 | 
			
			
				
				                 'type' => 'credit', 
			 | 
		
		
	
		
			
			| 
				57
			 | 
			
				65
			 | 
			
			
				
				                 'amount' => $transaction->amount, 
			 |