Package net.sourceforge.wampum.finance.entities

Examples of net.sourceforge.wampum.finance.entities.TransSplit


                Payee payee = new Payee();
                payee.setName(resultSet.getString("NAME"));
                transaction.setPayee(payee);

                List transSplitList = new ArrayList();
                TransSplit transSplit = new TransSplit();
                transSplit.setAmount(new Double(resultSet.getDouble("AMOUNT")));
                balance += transSplit.getAmount().doubleValue();
                transaction.setBalance(new Double(balance));
                transSplitList.add(transSplit);
                transaction.setTransSplitList(transSplitList);

                retVal.add(transaction);
View Full Code Here


                retVal.add(transaction);
            }
            resultSet.close();
            preparedStatement.close();
           
            TransSplit transSplit = null;
            Account account = null;
            for (int i=0; i<retVal.size(); i++) {
              transaction = (RegisterTrans)retVal.get(i);
                preparedStatement = conn.prepareStatement(LOAD_TRANSACTION);
                preparedStatement.setString(1, transaction.getTransactionID());
                resultSet = preparedStatement.executeQuery();
                while (resultSet.next()) {
                  transSplit = new TransSplit();
                  transSplit.setAmount(new Double(resultSet.getDouble("AMOUNT")));
                  account = new Account();
                  account.setTitle(resultSet.getString("TITLE"));
                  transSplit.setAccount(account);
                  transaction.appendTransSplit(transSplit);
                }
                resultSet.close();
                preparedStatement.close();
            }
View Full Code Here

          }
        }
        resultSet.close();
        preparedStatement.close();
       
        TransSplit transSplit = null;
        Account account = null;
        for (int i=0; i<retVal.size(); i++) {
          transaction = (RegisterTrans)retVal.get(i);
          preparedStatement = conn.prepareStatement(LOAD_TRANSACTION);
          preparedStatement.setString(1, transaction.getTransactionID());
          resultSet = preparedStatement.executeQuery();
          while (resultSet.next()) {
            transSplit = new TransSplit();
            transSplit.setAmount(new Double(resultSet.getDouble("AMOUNT")));
            account = new Account();
            account.setTitle(resultSet.getString("TITLE"));
            transSplit.setAccount(account);
            transaction.appendTransSplit(transSplit);
          }
          resultSet.close();
          preparedStatement.close();
        }
View Full Code Here

  public void setBalance(Double balance) {
    this.balance = balance;
  }

  public Double getAmount() {
    TransSplit transSplit = (TransSplit)this.getTransSplitList().get(0);
    return transSplit.getAmount();
  }
View Full Code Here

     
      TransactionDAO transDAO = (TransactionDAO)daoFactory.getDAO("transaction");
      transDAO.create(trans, false);
     
      TransSplitDAO transSplitDAO = (TransSplitDAO)daoFactory.getDAO("transSplit");
      TransSplit transSplit = null;
      for (int i=0; i<this.transSplitList.size(); i++) {
        transSplit = (TransSplit)transSplitList.get(i);
        transSplit.setParentTransaction(trans);
        transSplitDAO.create(transSplit, false);
      }
     
      this.accountsController.updateRegisterTableData();
      clearTransaction();
View Full Code Here

  }

  public void focusLost(FocusEvent event) {
    if (event.getComponent() == amount) {
      double newAmount = new Double(amount.getText()).doubleValue();
      TransSplit transSplit = null;
      TransBalance transBalance = findTransactionBalance(account.getAccountID(), transSplitList);
      if (!transBalance.balanced) {
        amount.setText("---");
        return;
      }
      for (int i=0; i<transSplitList.size(); i++) {
        transSplit = (TransSplit)transSplitList.get(i);
        double splitAmount = transSplit.getAmount().doubleValue();
        splitAmount = (newAmount/transBalance.amount)*splitAmount;
        transSplit.setAmount(new Double(splitAmount));
      }
      amount.setText(GUIConstants.CURRENCY_FORMAT.format(newAmount));
      updateSplitTableData();
    }
    else {
      if (payee.getSelectedItem() instanceof Payee) {
        Payee tempPayee = (Payee)payee.getSelectedItem();
        if (trans.getPayee() != null && trans.getPayeePayeeID().equals(tempPayee.getPayeeID()))
          return;
        Transaction payeeTrans = PayeeUtils.findLastTransactionForPayee(tempPayee, this.account.getAccountID());
        trans = new Transaction();
        trans.setPayee(tempPayee);
        trans.setDatePosted(Calendar.getInstance());
        if (payeeTrans != null) {       
          List transSplitList = payeeTrans.getTransSplitList();
          double transAmount = 0;
          TransSplit transSplit = null;
          TransSplit newSplit = null;
          for (int i=0; i<transSplitList.size(); i++) {
            transSplit = (TransSplit)transSplitList.get(i);
            newSplit = new TransSplit();
            newSplit.setAccount(transSplit.getAccount());
            newSplit.setAmount(transSplit.getAmount());
            trans.appendTransSplit(newSplit);
            if (transSplit.getAmount().doubleValue()>=0)
              transAmount += transSplit.getAmount().doubleValue();
          }
          setTransaction(trans, new Double(transAmount), new Double(0));
        }
        else {
          TransSplit newSplit = new TransSplit();
          newSplit.setAmount(new Double(0.0));
          newSplit.setAccount(account);
          trans.appendTransSplit(newSplit);
          setTransaction(trans, new Double(0.0), new Double(0));
        }
      }
      else {
View Full Code Here

          return true;
      }
     
      public Object getValueAt(int row, int col) {
        if (row >= transSplitList.size()) {
          transSplit = new TransSplit();
        }
        else {
          transSplit = (TransSplit)transSplitList.get(row);
        }

        Double amount = transSplit.getAmount();
        if (col == 0) {
          if (row >= transSplitList.size())
            return null;
          else
            return "true";
        }
        else if (col == 1) {
          if (transSplit.getAccount() == null) {
            return null;
          }
          else {
            AccountDAO accountDao = (AccountDAO)daoFactory.getDAO("account");
            List accountList = accountDao.load("WHERE ACCOUNT_ID = '" + transSplit.getAccountAccountID() + "'", null, true);
            return accountList.get(0);
          }
        }
        else if (col == 2) {
          if (amount == null)
            return null;
          else if (amount.doubleValue()>=0)
            return amount;
          else
            return "";
        }
        else if (col == 3) {
          if (amount == null)
            return null;
          else if (amount.doubleValue()<0)
            return new Double(-amount.doubleValue());
          else
            return "";
        }
        else
          return "";
      }
     
      public void setValueAt(Object value, int row, int column) {
        if (row >= transSplitList.size()) {
          transSplit = new TransSplit();
          transSplit.setAmount(new Double(0));
          if (column == 1) {
            Account account = (Account)value;
            transSplit.setAccount(account);
          }
View Full Code Here

  public TransBalance findTransactionBalance(String accountID, List splitList) {
    TransBalance retVal = new TransBalance();
    double accountBal = 0;
    double transBal = 0;
    double transSum = 0;
    TransSplit transSplit = null;
    for (int i=0; i<splitList.size(); i++) {
      transSplit = (TransSplit)splitList.get(i);
      if (transSplit.getAmount() == null)
        transSplit.setAmount(new Double(0.0));
      transBal = transSplit.getAmount().doubleValue();
      transSum += transBal;
      if (transSplit.getAccountAccountID().equalsIgnoreCase(accountID)) {
        accountBal += transBal;
      }
    }
    retVal.splitDifference = transSum;
    retVal.amount = accountBal;
View Full Code Here

          trans.setDatePosted(datePosted);
       
          Transaction payeeTrans = PayeeUtils.findLastTransactionForPayee(payee, this.accountID);
          if (payeeTrans != null) {
            List transSplitList = payeeTrans.getTransSplitList();
            TransSplit transSplit = null;
            TransSplit newSplit = null;
            double oldTotal = 0;
            for (int i=0; i<transSplitList.size(); i++) {
              transSplit = (TransSplit)transSplitList.get(i);
              if (transSplit.getAmount().doubleValue() >= 0)
                oldTotal += transSplit.getAmount().doubleValue();
            }
         
            for (int i=0; i<transSplitList.size(); i++) {
              transSplit = (TransSplit)transSplitList.get(i);
              newSplit = new TransSplit();
              newSplit.setParentTransaction(trans);
              newSplit.setAccount(transSplit.getAccount());
              double splitAmount = Math.abs((transSplit.getAmount().doubleValue()/oldTotal)*amount);
              if (newSplit.getAccountAccountID().equals(accountID)) {
                if (amount >= 0) {
                  newSplit.setAmount(new Double(splitAmount));
                }
                else {
                  newSplit.setAmount(new Double(-splitAmount));
                }
              }
              else {
                if (amount >= 0) {
                  newSplit.setAmount(new Double(-splitAmount));
                }
                else {
                  newSplit.setAmount(new Double(splitAmount));
                }
              }
              trans.appendTransSplit(newSplit);
            }
          }
          else {
            RegisterDAO registerDAO = (RegisterDAO)factory.getDAO("register");
            List payeeTransList = registerDAO.loadTransactionsForAccountPayeeDate(this.accountID, payee.getPayeeID(), trans.getDatePosted());
            if (payeeTransList.size()>0) {
              boolean createTrans = false;
              Transaction tempTrans = null;
              for (int i=0; i<payeeTransList.size(); i++) {
                tempTrans = (Transaction)payeeTransList.get(i);
                for (int j=0; j<transIDList.size(); j++) {
                  if (transIDList.get(j).toString().equals(tempTrans.getTransactionID())) {
                    createTrans = true;
                  }
                } //TODO: This is wrong.
              }
              if (!createTrans)
                return;
            }
           
            AccountDAO accountDAO = (AccountDAO)factory.getDAO("account");
            Account newAccount = (Account)accountDAO.load("WHERE TITLE = 'Imbalance-USD'", null, true).get(0);
            TransSplit transSplit = new TransSplit();
            transSplit.setParentTransaction(trans);
            Account account = new Account();
            account.setAccountID(accountID);
            transSplit.setAccount(account);
            transSplit.setAmount(new Double(amount));
            trans.appendTransSplit(transSplit);
         
            TransSplit newSplit = new TransSplit();
            newSplit.setParentTransaction(trans);
            newSplit.setAccount(newAccount);
            newSplit.setAmount(new Double(-amount));
            trans.appendTransSplit(newSplit);
          }
        }
        TransactionDAO transDAO = (TransactionDAO)factory.getDAO("transaction");
        transDAO.store(trans, true);
View Full Code Here

          trans.setFitID(fitID);
       
          Transaction payeeTrans = PayeeUtils.findLastTransactionForPayee(payee, this.accountID);
          if (payeeTrans != null) {
            List transSplitList = payeeTrans.getTransSplitList();
            TransSplit transSplit = null;
            TransSplit newSplit = null;
            double oldTotal = 0;
            for (int i=0; i<transSplitList.size(); i++) {
              transSplit = (TransSplit)transSplitList.get(i);
              if (transSplit.getAmount().doubleValue() >= 0)
                oldTotal += transSplit.getAmount().doubleValue();
            }
         
            for (int i=0; i<transSplitList.size(); i++) {
              transSplit = (TransSplit)transSplitList.get(i);
              newSplit = new TransSplit();
              newSplit.setParentTransaction(trans);
              newSplit.setAccount(transSplit.getAccount());
              double splitAmount = Math.abs((transSplit.getAmount().doubleValue()/oldTotal)*amount);
              if (newSplit.getAccountAccountID().equals(accountID)) {
                if (amount >= 0) {
                  newSplit.setAmount(new Double(splitAmount));
                }
                else {
                  newSplit.setAmount(new Double(-splitAmount));
                }
              }
              else {
                if (amount >= 0) {
                  newSplit.setAmount(new Double(-splitAmount));
                }
                else {
                  newSplit.setAmount(new Double(splitAmount));
                }
              }
              trans.appendTransSplit(newSplit);
            }
          }
          else {
            AccountDAO accountDAO = (AccountDAO)factory.getDAO("account");
            Account newAccount = (Account)accountDAO.load("WHERE TITLE = 'Imbalance-USD'", null, true).get(0);
            TransSplit transSplit = new TransSplit();
            transSplit.setParentTransaction(trans);
            Account account = new Account();
            account.setAccountID(accountID);
            transSplit.setAccount(account);
            transSplit.setAmount(new Double(amount));
            trans.appendTransSplit(transSplit);
         
            TransSplit newSplit = new TransSplit();
            newSplit.setParentTransaction(trans);
            newSplit.setAccount(newAccount);
            newSplit.setAmount(new Double(-amount));
            trans.appendTransSplit(newSplit);
          }
        }
        TransactionDAO transDAO = (TransactionDAO)factory.getDAO("transaction");
        transDAO.store(trans, true);
View Full Code Here

TOP

Related Classes of net.sourceforge.wampum.finance.entities.TransSplit

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.