Beispiel #1
0
 def add_transaction(request_data):
     sender_account_identifier = request_data.get('sender_account_number')
     sender_account = AccountView.get_account_with_identifier(
         sender_account_identifier)
     reciever_account_identifier = request_data.get(
         'reciever_account_number')
     reciever_account = AccountView.get_account_with_identifier(
         reciever_account_identifier)
     account_transaction_type = request_data.get('account_transaction_type')
     amount = Decimal(request_data.get('amount'))
     details = request_data.get('details')
     if AccountTransactionView.validate_transaction(sender_account, amount):
         new = AccountTransaction(
             sender_account_id=sender_account.id,
             reciever_account_id=reciever_account.id,
             account_transaction_type=account_transaction_type,
             amount=amount,
             details=details)
         new.save()
         response = {
             'amount': new.get_amount_as_string(),
             'sender': sender_account_identifier,
             'reciever': reciever_account_identifier,
             'number': new.identifier
         }
     else:
         response = {'message': 'Problem creating transaction'}
     return response