Payee.java
package cpa.app.vip;
import java.io.*;
import java.util.*;
/****************************************************
* This class is a bean class representing a Payee.
*
* @author Paul McKinney
****************************************************/
public class Payee implements Serializable
{
//properties
private String id = "";
private String name = "";
private String contactFirstName = "";
private String contactLastName = "";
private String contactTitle = "";
private String contactTelephoneNum = "";
private String contactTelephoneExtention = "";
private Vector mailCodes = new Vector();
//getters
public String getId()
{
return id;
}
public String getName()
{
return name;
}
public String getContactFirstName()
{
return contactFirstName;
}
public String getContactLastName()
{
return contactLastName;
}
public String getContactTitle()
{
return contactTitle;
}
public String getContactTelephoneNum()
{
return contactTelephoneNum;
}
public String getContactTelephoneExtention()
{
if (contactTelephoneExtention == null)
return "";
else
return contactTelephoneExtention;
}
//mail code is Comptroller terminology for a vendor's outlet
//or seperate phyiscal location if the vendor has more than
//one location
public PayeeMailCode getMailCode(String mailCode)
{
PayeeMailCode retObject = null;
PayeeMailCode pmc = new PayeeMailCode();
pmc.setPayeePin(getId());
pmc.setCode(mailCode);
if(pmc.restore())
retObject = pmc;
return retObject;
}
boolean setMailCodes()
{
boolean isSet = false;
PayeeDA payeeDA = new PayeeDA(this);
mailCodes.removeAllElements();
String[] mailCodeCodes = payeeDA.selectMailCodeCodes();
if (mailCodeCodes == null)
isSet = false;
else
{
for (int i=0; i<mailCodeCodes.length; i++)
mailCodes.addElement(getMailCode(mailCodeCodes[i]));
isSet = true;
}
return isSet;
}
public PayeeMailCode[] getMailCodes()
{
PayeeMailCode[] mailCodeArr = new PayeeMailCode[mailCodes.size()];
mailCodes.copyInto(mailCodeArr);
return mailCodeArr;
}
public PayeeMailCode getMailCode()
{
return new PayeeMailCode();
}
//setters
void setId(String id)
{
this.id = id.trim();
}
void setName(String name)
{
this.name = name.trim();
}
void setContactFirstName(String contactFirstName)
{
this.contactFirstName = contactFirstName.trim();
}
void setContactLastName(String contactLastName)
{
this.contactLastName = contactLastName.trim();
}
void setContactTitle(String contactTitle)
{
this.contactTitle = contactTitle.trim();
}
void setContactTelephoneNum(String contactTelephoneNum)
{
this.contactTelephoneNum = contactTelephoneNum.trim();
}
void setContactTelephoneExtention(String contactTelephoneExtention)
{
if (contactTelephoneExtention == null)
this.contactTelephoneExtention = null;
else
this.contactTelephoneExtention = contactTelephoneExtention.trim();
}
boolean isValid()
{
String[] msgArray = getValidateMsgs();
if (msgArray.length == 0)
return true;
else
return false;
}
boolean isValidToDelete()
{
String[] msgArray = getValidateDeleteMsgs();
if (msgArray.length == 0)
return true;
else
return false;
}
public String[] getValidateDeleteMsgs()
{
Vector messages = new Vector();
if (restore())
{
setMailCodes();
if (getMailCodes().length == 0)
; //do nothing
else
messages.addElement("Mail Codes exist for Payee: \"" + getId() + "\".");
}
else
messages.addElement("Payee: \"" + getId() + "\" not found.");
String[] arr = new String[messages.size()];
messages.copyInto(arr);
return arr;
}
public String[] getValidateMsgs()
{
Vector messages = new Vector();
if (getId().equals(""))
messages.addElement("ID field required.");
else
if (getId().length() < 11)
messages.addElement("ID field requires 11 characters.");
if (getName().equals(""))
messages.addElement("Name field required.");
if (getContactFirstName().equals(""))
messages.addElement("First Name field required.");
if (getContactLastName().equals(""))
messages.addElement("Last Name field required.");
if (getContactTitle().equals(""))
messages.addElement("Title field required.");
if (getContactTelephoneNum().equals(""))
messages.addElement("Telephone Number field required.");
String[] arr = new String[messages.size()];
messages.copyInto(arr);
return arr;
}
boolean save()
{
boolean isSaved = false;
PayeeDA payeeDA = new PayeeDA(this);
if (isValid())
{
if (payeeDA.save())
isSaved = true;
}
return isSaved;
}
boolean restore()
{
PayeeDA payeeDA = new PayeeDA(this);
return (payeeDA.restore());
}
boolean remove()
{
PayeeDA payeeDA = new PayeeDA(this);
return payeeDA.remove();
}
//for debugging only
public String toString()
{
return "[" + getId() + "]" +
"[" + getName() + "]" +
"[" + getContactFirstName() + "]" +
"[" + getContactLastName() + "]" +
"[" + getContactTitle() + "]" +
"[" + getContactTelephoneNum() + "]" +
"[" + getContactTelephoneExtention() + "]";
}
}