/* * Created on Dec 7, 2004 * */ package com.idega.block.finance.data; import java.util.Collection; import javax.ejb.FinderException; import com.idega.data.GenericEntity; import com.idega.data.IDOQuery; import com.idega.user.data.Group; import com.idega.user.data.GroupBMPBean; /** * @author birna * */ public class BankInfoBMPBean extends GenericEntity implements BankInfo { protected final static String ENTITY_NAME = "fin_bank_info"; protected final static String COLUMN_CLAIMANTS_SSN = "claimants_ssn"; protected final static String COLUMN_CLAIMANTS_NAME = "claimants_name"; protected final static String COLUMN_CLAIMANTS_BANK_BRANCH = "fin_bank_branch_id"; protected final static String COLUMN_ACCOUNT_BOOK = "account_book"; protected final static String COLUMN_ACCOUNT_ID = "account_id"; protected final static String COLUMN_GROUP_ID = GroupBMPBean .getColumnNameGroupID(); protected final static String COLUMN_USER_NAME = "user_name"; protected final static String COLUMN_PASSWORD = "password"; protected final static String COLUMN_CLUB_ID = "club_id"; protected final static String COLUMN_DIVISION_ID = "division_id"; protected final static String COLUMN_DELETED = "deleted"; public void initializeAttributes() { addAttribute(getIDColumnName()); addAttribute(COLUMN_CLAIMANTS_SSN, "claimants ssn", String.class); addAttribute(COLUMN_CLAIMANTS_NAME, "claimants name", String.class); addAttribute(COLUMN_ACCOUNT_BOOK, "account book", Integer.class); addAttribute(COLUMN_ACCOUNT_ID, "account id", String.class); addAttribute(COLUMN_USER_NAME, "user name", String.class); addAttribute(COLUMN_PASSWORD, "password", String.class); addManyToOneRelationship(COLUMN_CLAIMANTS_BANK_BRANCH, BankBranch.class); addOneToOneRelationship(COLUMN_GROUP_ID, Group.class); addManyToOneRelationship(COLUMN_DIVISION_ID, Group.class); addManyToOneRelationship(COLUMN_CLUB_ID, Group.class); addAttribute(COLUMN_DELETED, "deleted", Boolean.class); } public static String getEntityTableName() { return ENTITY_NAME; } public String getEntityName() { return getEntityTableName(); } public int getAccountBook() { return getIntColumnValue(COLUMN_ACCOUNT_BOOK); } public String getAccountId() { return getStringColumnValue(COLUMN_ACCOUNT_ID); } public int getClaimantsBankBranchId() { return getIntColumnValue(COLUMN_CLAIMANTS_BANK_BRANCH); } public BankBranch getClaimantsBankBranch() { return (BankBranch) getColumnValue(COLUMN_CLAIMANTS_BANK_BRANCH); } public int getClubId() { return getIntColumnValue(COLUMN_CLUB_ID); } public Group getClub() { return (Group) getColumnValue(COLUMN_CLUB_ID); } public int getDivisionId() { return getIntColumnValue(COLUMN_DIVISION_ID); } public Group getDivision() { return (Group) getColumnValue(COLUMN_DIVISION_ID); } public String getClaimantsSSN() { return getStringColumnValue(COLUMN_CLAIMANTS_SSN); } public String getClaimantsName() { return getStringColumnValue(COLUMN_CLAIMANTS_NAME); } public int getGroupId() { return getIntColumnValue(COLUMN_GROUP_ID); } public Group getGroup() { return (Group) getColumnValue(COLUMN_GROUP_ID); } public String getUsername() { return getStringColumnValue(COLUMN_USER_NAME); } public String getPassword() { String str = null; try { str = getStringColumnValue(COLUMN_PASSWORD); } catch (Exception ex) { ex.printStackTrace(); // str = null; } if (str != null) { char[] pass = new char[str.length() / 2]; try { for (int i = 0; i < pass.length; i++) { pass[i] = (char) Integer.decode( "0x" + str.charAt(i * 2) + str.charAt((i * 2) + 1)) .intValue(); } return String.valueOf(pass); } catch (Exception ex) { ex.printStackTrace(); return str; } } return str; } public boolean getDeleted() { return getBooleanColumnValue(COLUMN_DELETED, false); } public void setAccountBook(int accountBook) { setColumn(COLUMN_ACCOUNT_BOOK, accountBook); } public void setAccountId(String accountId) { setColumn(COLUMN_ACCOUNT_ID, accountId); } public void setClaimantsBankBranchId(int bankBranchId) { setColumn(COLUMN_CLAIMANTS_BANK_BRANCH, bankBranchId); } public void setClaimantsBankBranchNumber(BankBranch bankBranch) { setColumn(COLUMN_CLAIMANTS_BANK_BRANCH, bankBranch); } public void setClubId(int clubId) { setColumn(COLUMN_CLUB_ID, clubId); } public void setDivisionId(int divisionId) { setColumn(COLUMN_DIVISION_ID, divisionId); } public void setClaimantsSSN(String claimantsSSN) { setColumn(COLUMN_CLAIMANTS_SSN, claimantsSSN); } public void setClaimantsName(String claimantsName) { setColumn(COLUMN_CLAIMANTS_NAME, claimantsName); } public void setGroupId(int groupId) { setColumn(COLUMN_GROUP_ID, groupId); } public void setUsername(String username) { setColumn(COLUMN_USER_NAME, username); } public void setPassword(String pwd) { try { String str = ""; char[] pass = pwd.toCharArray(); for (int i = 0; i < pass.length; i++) { String hex = Integer.toHexString(pass[i]); while (hex.length() < 2) { String s = "0"; s += hex; hex = s; } str += hex; } if (str.equals("") && !pwd.equals("")) { str = null; } setColumn(COLUMN_PASSWORD, str); } catch (Exception ex) { ex.printStackTrace(); setColumn(COLUMN_PASSWORD, pwd); } } public void setDeleted(boolean deleted) { setColumn(COLUMN_DELETED, deleted); } public Collection ejbFindAll() throws FinderException { IDOQuery sql = idoQuery(); sql.appendSelectAllFrom(this); sql.appendWhere(); sql.appendLeftParenthesis(); sql.append(COLUMN_DELETED); sql.append(" is null "); sql.appendOr(); sql.appendEquals(COLUMN_DELETED, false); sql.appendRightParenthesis(); return idoFindPKsByQuery(sql); } public Integer ejbFindByGroupId(int groupId) throws FinderException { IDOQuery query = idoQueryGetSelect(); query.appendWhereEquals(COLUMN_GROUP_ID, groupId); query.appendAnd(); query.appendLeftParenthesis(); query.append(COLUMN_DELETED); query.append(" is null "); query.appendOr(); query.appendEquals(COLUMN_DELETED, false); query.appendRightParenthesis(); return (Integer) idoFindOnePKByQuery(query); } public Collection ejbFindAllByClub(Group club) throws FinderException { IDOQuery query = idoQuery(); query.appendSelectAllFrom(this); query.appendWhereEquals(COLUMN_CLUB_ID, ((Integer) club.getPrimaryKey()).intValue()); query.appendAnd(); query.appendLeftParenthesis(); query.append(COLUMN_DELETED); query.append(" is null "); query.appendOr(); query.appendEquals(COLUMN_DELETED, false); query.appendRightParenthesis(); return idoFindPKsByQuery(query); } public Object ejbFindByGroup(Group group) throws FinderException { IDOQuery sql = idoQuery(); sql.appendSelectAllFrom(this); sql.appendWhereEquals(COLUMN_GROUP_ID, group); sql.appendAnd(); sql.appendLeftParenthesis(); sql.append(COLUMN_DELETED); sql.append(" is null "); sql.appendOr(); sql.appendEquals(COLUMN_DELETED, false); sql.appendRightParenthesis(); return idoFindOnePKByQuery(sql); } public Object ejbFindByDivision(Group division) throws FinderException { IDOQuery sql = idoQuery(); sql.appendSelectAllFrom(this); sql.appendWhereEquals(COLUMN_DIVISION_ID, division); sql.appendAnd(); sql.append(COLUMN_GROUP_ID); sql.append(" is null "); sql.appendAnd(); sql.appendLeftParenthesis(); sql.append(COLUMN_DELETED); sql.append(" is null "); sql.appendOr(); sql.appendEquals(COLUMN_DELETED, false); sql.appendRightParenthesis(); return idoFindOnePKByQuery(sql); } public Object ejbFindByClub(Group club) throws FinderException { IDOQuery sql = idoQuery(); sql.appendSelectAllFrom(this); sql.appendWhereEquals(COLUMN_CLUB_ID, club); sql.appendAnd(); sql.append(COLUMN_DIVISION_ID); sql.append(" is null "); sql.appendAnd(); sql.append(COLUMN_GROUP_ID); sql.append(" is null "); sql.appendAnd(); sql.appendLeftParenthesis(); sql.append(COLUMN_DELETED); sql.append(" is null "); sql.appendOr(); sql.appendEquals(COLUMN_DELETED, false); sql.appendRightParenthesis(); return idoFindOnePKByQuery(sql); } public Object ejbFindByUserNameAndBankShortName(String userName, String bankShortName) throws FinderException { IDOQuery sql = idoQuery(); sql.appendSelect(); sql.append("info.* from "); sql.append(getEntityName()); sql.append(" info, fin_bank_branch branch, fin_bank bank"); sql.appendWhereEquals("info.fin_bank_branch_id", "branch.fin_bank_branch_id"); sql.appendAnd(); sql.appendEquals("branch.bank_id", "bank.fin_bank_id"); sql.appendAnd(); sql.appendEqualsQuoted("bank.short_name", bankShortName); sql.appendAnd(); sql.appendEqualsQuoted(COLUMN_USER_NAME, userName); sql.appendAnd(); sql.appendLeftParenthesis(); sql.append(COLUMN_DELETED); sql.append(" is null"); sql.appendOr(); sql.appendEquals(COLUMN_DELETED, false); sql.appendRightParenthesis(); System.out.println("sql = " + sql.toString()); return idoFindOnePKByQuery(sql); } }