package entity;

import java.io.Serializable;
import org.apache.commons.lang.builder.ToStringBuilder;


/** 
 * Javadoc for the Employee class
 * @author
 * 		
*/
public class Employee implements Serializable {

    /** identifier field */
    private Integer id;

    /** persistent field */
    private String name;

    /** nullable persistent field */
    private Integer salary;

    /** nullable persistent field */
    private Integer departmentId;

    /** nullable persistent field */
    private entity.Department department;

    /** full constructor */
    public Employee(Integer id, String name, Integer salary, Integer departmentId, entity.Department department) {
        this.id = id;
        this.name = name;
        this.salary = salary;
        this.departmentId = departmentId;
        this.department = department;
    }

    /** default constructor */
    public Employee() {
    }

    /** minimal constructor */
    public Employee(Integer id, String name) {
        this.id = id;
        this.name = name;
    }

    public Integer getId() {
        return this.id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    /** 
     * employee name
     */
    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }

    /** 
     * salary
     */
    public Integer getSalary() {
        return this.salary;
    }

    public void setSalary(Integer salary) {
        this.salary = salary;
    }

    /** 
     * departmentId
     */
    public Integer getDepartmentId() {
        return this.departmentId;
    }

    public void setDepartmentId(Integer departmentId) {
        this.departmentId = departmentId;
    }

    public entity.Department getDepartment() {
        return this.department;
    }

    public void setDepartment(entity.Department department) {
        this.department = department;
    }

    public String toString() {
        return new ToStringBuilder(this)
            .append("id", getId())
            .append("name", getName())
            .append("salary", getSalary())
            .append("departmentId", getDepartmentId())
            .append("department", getDepartment())
            .toString();
    }

}