/** SalariedWorker - A class to represent workers paid on a salaried basis)
 *
 * @author - Nancy Harris and Mike Stanley
 * @version - V1 - 10/01/08
 */
 
 public class SalariedWorker
 {
 	// declare the instance variables of the class
	
	private String name; 		// the name of the worker
	private String SSN;  		// the SSN of the worker
	private String homeDepartment; // the department of the worker
	private int exemptions;	// the number of tax exemptions for this worker
	private double wage; 		// the payment amount for this salaried worker	
	private double hours;		// will be 80 for all salaried workers
	
	/** explicit value constructor
	 * 
	 * @param name 	       The name of the worker
	 * @param SSN  	       The SSN of the worker
	 * @param homeDepartment The department of the worker
	 * @param exempt	       The number of payroll exemptions
	 & @param rate 	       The salaried rate for this employee
	 */
	public SalariedWorker(String name, String SSN, String homeDepartment, int exempt, double rate)
	{
		this.name = name;
		this.SSN = SSN;
		this.homeDepartment = homeDepartment;
		this.exemptions = exempt;
		this.wage = rate;
	} //end constructor
	
	/** pay produces the pay amount for this employee
	 *  pay is simply the return of the wage value
	 *
	 * @param hours For salaried workers, this is informational only
	 *
	 * @return pay - The amount to pay this employee
	 */
	public double pay(double hours)
	{
		double pay;
		
		this.hours = hours;  // informational only
	   pay = this.wage;
		
		return pay;
	} //end pay()
	
	/** toString produces a single line for each employee
	 *
	 *  format is Name\tSSN\texemptions\thours\trate\n
	 *
	 * @return temp - The line representing the employee
	 */
	 public String toString()
	 {
	 	String temp;
		
		temp = this.name+"\t"+this.SSN+"\t"+this.homeDepartment+"\t"+this.exemptions+"\t"+
		       this.hours+"\t"+this.wage+"\n";
				 
	 	return temp;
	 } //end toString()
} //end SalariedWorker