com.openhris.employee.EmployeePersonalInformation.java Source code

Java tutorial

Introduction

Here is the source code for com.openhris.employee.EmployeePersonalInformation.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.openhris.employee;

import com.hrms.classes.GlobalVariables;
import com.hrms.utilities.ConvertionUtilities;
import com.openhris.commons.DropDownComponent;
import com.openhris.commons.UploadImage;
import com.openhris.model.Employee;
import com.openhris.model.PersonalInformation;
import com.openhris.model.PostEmploymentInformationBean;
import com.openhris.service.EmployeeCurrentStatusService;
import com.openhris.service.PersonalInformationService;
import com.openhris.serviceprovider.EmployeeCurrentStatusServiceImpl;
import com.openhris.serviceprovider.EmployeeServiceImpl;
import com.openhris.serviceprovider.PersonalInformationServiceImpl;
import com.openhris.service.EmployeeService;
import com.vaadin.Application;
import com.vaadin.terminal.Sizeable;
import com.vaadin.terminal.StreamResource;
import com.vaadin.terminal.ThemeResource;
import com.vaadin.ui.AbstractLayout;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.ComboBox;
import com.vaadin.ui.ComponentContainer;
import com.vaadin.ui.DateField;
import com.vaadin.ui.Embedded;
import com.vaadin.ui.GridLayout;
import com.vaadin.ui.Panel;
import com.vaadin.ui.PopupDateField;
import com.vaadin.ui.TextArea;
import com.vaadin.ui.TextField;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import com.vaadin.ui.themes.Reindeer;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.util.Date;
import java.util.List;

/**
 *
 * @author jet
 */
public class EmployeePersonalInformation extends VerticalLayout {

    GridLayout glayout;
    private String employeeId = null;
    private Application application;

    DropDownComponent dropDownComponent = new DropDownComponent();
    PersonalInformation personalInformation;
    PersonalInformationService piService = new PersonalInformationServiceImpl();
    ConvertionUtilities convertionUtilities = new ConvertionUtilities();
    EmployeeCurrentStatusService employeeCurrentStatusService = new EmployeeCurrentStatusServiceImpl();
    EmployeeService employeeService = new EmployeeServiceImpl();

    Embedded avatar;
    TextField fnField;
    TextField mnField;
    TextField lnField;
    TextField companyIdField;
    PopupDateField dobField;
    TextField pobField;
    ComboBox genderBox;
    ComboBox civilStatusBox;
    TextField citizenshipField;
    TextField heightField;
    TextField weightField;
    TextField religionField;
    TextField spouseNameField;
    TextField spouseOccupationField;
    TextField spouseOfficeAddressField;
    TextField fathersNameField;
    TextField fathersOccupationField;
    TextField mothersNameField;
    TextField mothersOccupationField;
    TextField parentsAddressField;
    TextField dialectSpeakWriteField;
    TextField contactPersonNameField;
    TextField contactPersonAddressField;
    TextField contactPersonNoField;
    TextField skillsField;
    TextField hobbyField;

    public EmployeePersonalInformation() {
    }

    public EmployeePersonalInformation(String employeeId, Application application) {
        this.employeeId = employeeId;
        this.application = application;

        init();
        addComponent(layout());
        setComponentAlignment(glayout, Alignment.TOP_CENTER);
    }

    public void init() {
        setSpacing(true);
        setMargin(true);
        setSizeFull();
        setImmediate(true);
    }

    public ComponentContainer layout() {
        glayout = new GridLayout(4, 19);
        glayout.setSpacing(true);
        glayout.setWidth("600px");
        glayout.setHeight("100%");

        final Panel imagePanel = new Panel();
        imagePanel.setStyleName("light");
        AbstractLayout panelLayout = (AbstractLayout) imagePanel.getContent();
        panelLayout.setMargin(false);
        imagePanel.setWidth("100px");

        avatar = new Embedded(null, new ThemeResource("../myTheme/img/fnc.jpg"));
        avatar.setImmediate(true);
        avatar.setWidth(90, Sizeable.UNITS_PIXELS);
        avatar.setHeight(90, Sizeable.UNITS_PIXELS);
        avatar.addStyleName("logo-img");
        imagePanel.addComponent(avatar);
        glayout.addComponent(avatar, 0, 0, 0, 1);
        glayout.setComponentAlignment(imagePanel, Alignment.MIDDLE_CENTER);

        Button uploadPhotoBtn = new Button("Upload..");
        uploadPhotoBtn.setWidth("100%");
        uploadPhotoBtn.setStyleName(Reindeer.BUTTON_SMALL);
        uploadPhotoBtn.addListener(new Button.ClickListener() {

            @Override
            public void buttonClick(Button.ClickEvent event) {
                if (getEmployeeId() == null) {
                    getWindow().showNotification("You did not select and Employee!",
                            Window.Notification.TYPE_WARNING_MESSAGE);
                    return;
                }

                Window uploadImage = new UploadImage(imagePanel, avatar, getEmployeeId());
                uploadImage.setWidth("450px");
                if (uploadImage.getParent() == null) {
                    getWindow().addWindow(uploadImage);
                }
                uploadImage.setModal(true);
                uploadImage.center();
            }
        });
        glayout.addComponent(uploadPhotoBtn, 0, 2);
        glayout.setComponentAlignment(uploadPhotoBtn, Alignment.MIDDLE_CENTER);

        fnField = createTextField("Firstname: ");
        glayout.addComponent(fnField, 1, 0);
        glayout.setComponentAlignment(fnField, Alignment.MIDDLE_LEFT);

        mnField = createTextField("Middlename: ");
        glayout.addComponent(mnField, 2, 0);
        glayout.setComponentAlignment(mnField, Alignment.MIDDLE_LEFT);

        lnField = createTextField("Lastname: ");
        glayout.addComponent(lnField, 3, 0);
        glayout.setComponentAlignment(lnField, Alignment.MIDDLE_LEFT);

        companyIdField = createTextField("Employee ID: ");
        companyIdField.setEnabled(false);
        glayout.addComponent(companyIdField, 1, 1, 2, 1);
        glayout.setComponentAlignment(companyIdField, Alignment.MIDDLE_LEFT);

        dobField = new PopupDateField("Date of Birth: ");
        dobField.addStyleName("mydate");
        dobField.setDateFormat("MM/dd/yyyy");
        dobField.setWidth("100%");
        dobField.setResolution(DateField.RESOLUTION_DAY);
        glayout.addComponent(dobField, 1, 2);
        glayout.setComponentAlignment(dobField, Alignment.MIDDLE_LEFT);

        pobField = createTextField("Birth Place: ");
        pobField.setValue("N/A");
        glayout.addComponent(pobField, 2, 2, 3, 2);
        glayout.setComponentAlignment(pobField, Alignment.MIDDLE_LEFT);

        genderBox = dropDownComponent.populateGenderList(new ComboBox());
        genderBox.setWidth("100%");
        glayout.addComponent(genderBox, 1, 3);
        glayout.setComponentAlignment(genderBox, Alignment.MIDDLE_LEFT);

        civilStatusBox = dropDownComponent.populateCivilStatusList(new ComboBox());
        civilStatusBox.setWidth("100%");
        glayout.addComponent(civilStatusBox, 2, 3);
        glayout.setComponentAlignment(civilStatusBox, Alignment.MIDDLE_LEFT);

        citizenshipField = createTextField("Citizenship: ");
        citizenshipField.setValue("N/A");
        glayout.addComponent(citizenshipField, 3, 3);
        glayout.setComponentAlignment(citizenshipField, Alignment.MIDDLE_LEFT);

        heightField = createTextField("Height(cm):");
        heightField.setValue(0.0);
        glayout.addComponent(heightField, 1, 4);
        glayout.setComponentAlignment(heightField, Alignment.MIDDLE_LEFT);

        weightField = createTextField("Weight(kg): ");
        weightField.setValue(0.0);
        glayout.addComponent(weightField, 2, 4);
        glayout.setComponentAlignment(weightField, Alignment.MIDDLE_LEFT);

        religionField = createTextField("Religion: ");
        religionField.setValue("N/A");
        glayout.addComponent(religionField, 3, 4);
        glayout.setComponentAlignment(religionField, Alignment.MIDDLE_LEFT);

        spouseNameField = createTextField("Spouse Name: ");
        spouseNameField.setValue("N/A");
        glayout.addComponent(spouseNameField, 1, 5, 2, 5);
        glayout.setComponentAlignment(spouseNameField, Alignment.MIDDLE_LEFT);

        spouseOccupationField = createTextField("Spouse Occupation: ");
        spouseOccupationField.setValue("N/A");
        glayout.addComponent(spouseOccupationField, 3, 5);
        glayout.setComponentAlignment(spouseOccupationField, Alignment.MIDDLE_LEFT);

        spouseOfficeAddressField = createTextField("Spouse Office Address: ");
        spouseOfficeAddressField.setValue("N/A");
        glayout.addComponent(spouseOfficeAddressField, 1, 6, 3, 6);
        glayout.setComponentAlignment(spouseOfficeAddressField, Alignment.MIDDLE_LEFT);

        fathersNameField = createTextField("Father's Name: ");
        fathersNameField.setValue("N/A");
        glayout.addComponent(fathersNameField, 1, 7, 2, 7);
        glayout.setComponentAlignment(fathersNameField, Alignment.MIDDLE_LEFT);

        fathersOccupationField = createTextField("Father's Occupation: ");
        fathersOccupationField.setValue("N/A");
        glayout.addComponent(fathersOccupationField, 3, 7);
        glayout.setComponentAlignment(fathersOccupationField, Alignment.MIDDLE_LEFT);

        mothersNameField = createTextField("Mother's Maiden Name: ");
        mothersNameField.setValue("N/A");
        glayout.addComponent(mothersNameField, 1, 8, 2, 8);
        glayout.setComponentAlignment(mothersNameField, Alignment.MIDDLE_LEFT);

        mothersOccupationField = createTextField("Mother's Occupation: ");
        mothersOccupationField.setValue("N/A");
        glayout.addComponent(mothersOccupationField, 3, 8);
        glayout.setComponentAlignment(mothersOccupationField, Alignment.MIDDLE_LEFT);

        parentsAddressField = createTextField("Parents Address");
        parentsAddressField.setValue("N/A");
        glayout.addComponent(parentsAddressField, 1, 9, 3, 9);
        glayout.setComponentAlignment(parentsAddressField, Alignment.MIDDLE_LEFT);

        dialectSpeakWriteField = createTextField("Language or Dialect you can speak or write: ");
        dialectSpeakWriteField.setValue("N/A");
        glayout.addComponent(dialectSpeakWriteField, 1, 10, 3, 10);
        glayout.setComponentAlignment(dialectSpeakWriteField, Alignment.MIDDLE_LEFT);

        contactPersonNameField = createTextField("Contact Person: ");
        contactPersonNameField.setValue("N/A");
        glayout.addComponent(contactPersonNameField, 1, 11);
        glayout.setComponentAlignment(contactPersonNameField, Alignment.MIDDLE_LEFT);

        contactPersonAddressField = createTextField("Contact Person's Address: ");
        contactPersonAddressField.setValue("N/A");
        glayout.addComponent(contactPersonAddressField, 2, 11, 3, 11);
        glayout.setComponentAlignment(contactPersonAddressField, Alignment.MIDDLE_LEFT);

        contactPersonNoField = createTextField("Contact Person's Tel No: ");
        contactPersonNoField.setValue("N/A");
        glayout.addComponent(contactPersonNoField, 1, 12);
        glayout.setComponentAlignment(contactPersonNoField, Alignment.MIDDLE_LEFT);

        skillsField = createTextField("Skills: ");
        skillsField.setValue("N/A");
        glayout.addComponent(skillsField, 2, 12);
        glayout.setComponentAlignment(skillsField, Alignment.MIDDLE_LEFT);

        hobbyField = createTextField("Hobbies");
        hobbyField.setValue("N/A");
        glayout.addComponent(hobbyField, 3, 12);
        glayout.setComponentAlignment(hobbyField, Alignment.MIDDLE_LEFT);

        if (employeeId != null) {
            personalInformation = piService.getPersonalInformationData(employeeId);
            final byte[] image = personalInformation.getImage();
            if (image != null) {
                StreamResource.StreamSource imageSource = new StreamResource.StreamSource() {

                    @Override
                    public InputStream getStream() {
                        return new ByteArrayInputStream(image);
                    }

                };

                StreamResource imageResource = new StreamResource(imageSource,
                        personalInformation.getFirstname() + ".jpg", getThisApplication());
                imageResource.setCacheTime(0);
                avatar.setSource(imageResource);
            }
            fnField.setValue(personalInformation.getFirstname().toUpperCase());
            mnField.setValue(personalInformation.getMiddlename().toUpperCase());
            lnField.setValue(personalInformation.getLastname().toUpperCase());
            companyIdField.setValue(employeeId);
            dobField.setValue(personalInformation.getDob());
            pobField.setValue(personalInformation.getPob());

            if (personalInformation.getCivilStatus() != null) {
                Object civilStatusId = civilStatusBox.addItem();
                civilStatusBox.setItemCaption(civilStatusId, personalInformation.getCivilStatus());
                civilStatusBox.setValue(civilStatusId);
            }

            if (personalInformation.getGender() != null) {
                Object genderId = genderBox.addItem();
                genderBox.setItemCaption(genderId, personalInformation.getGender());
                genderBox.setValue(genderId);
            }

            citizenshipField.setValue(personalInformation.getCitizenship());
            heightField.setValue(personalInformation.getHeight());
            weightField.setValue(personalInformation.getWeight());
            religionField.setValue(personalInformation.getReligion());
            spouseNameField.setValue(personalInformation.getSpouseName());
            spouseOccupationField.setValue(personalInformation.getSpouseOccupation());
            spouseOfficeAddressField.setValue(personalInformation.getSpouseOfficeAddress());
            fathersNameField.setValue(personalInformation.getFathersName());
            fathersOccupationField.setValue(personalInformation.getFathersOccupation());
            mothersNameField.setValue(personalInformation.getMothersName());
            mothersOccupationField.setValue(personalInformation.getMothersOccupation());
            parentsAddressField.setValue(personalInformation.getParentsAddress());
            dialectSpeakWriteField.setValue(personalInformation.getDialectSpeakWrite());
            contactPersonNameField.setValue(personalInformation.getContactPersonName());
            contactPersonAddressField.setValue(personalInformation.getContactPersonAddress());
            contactPersonNoField.setValue(personalInformation.getContactPersonNo());
            skillsField.setValue(personalInformation.getSkills());
            hobbyField.setValue(personalInformation.getHobby());
        }

        Button removeBtn = new Button("REMOVE EMPLOYEE");
        removeBtn.setWidth("100%");
        boolean visible = false;
        if (GlobalVariables.getUserRole() == null) {
            visible = false;
        } else if (GlobalVariables.getUserRole().equals("hr")
                || GlobalVariables.getUserRole().equals("administrator")) {
            visible = true;
        }
        removeBtn.setVisible(visible);
        removeBtn.addListener(new Button.ClickListener() {

            @Override
            public void buttonClick(Button.ClickEvent event) {
                if (!GlobalVariables.getUserRole().equals("administrator")) {
                    getWindow().showNotification("You need to an ADMINISTRATOR to perform this ACTION.",
                            Window.Notification.TYPE_WARNING_MESSAGE);
                    return;
                }

                Window window = getRemoveWindow(getEmployeeId());
                window.setModal(true);
                if (window.getParent() == null) {
                    getWindow().addWindow(window);
                }
                window.center();
            }
        });
        glayout.addComponent(removeBtn, 1, 13);

        Button saveButton = new Button("UPDATE EMPLOYEE's INFORMATION");
        saveButton.setWidth("100%");
        saveButton.addListener(new Button.ClickListener() {

            @Override
            public void buttonClick(Button.ClickEvent event) {
                if (dobField.getValue() == null || dobField.getValue().toString().isEmpty()) {
                    getWindow().showNotification("Date of Birth Required!", Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                }

                if (heightField.getValue() == null || heightField.getValue().toString().isEmpty()) {
                    getWindow().showNotification("Null/Empty Value for Height is not ALLOWED!",
                            Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                } else {
                    if (!convertionUtilities.checkInputIfDouble(heightField.getValue().toString())) {
                        getWindow().showNotification("Enter a numeric format for Height!",
                                Window.Notification.TYPE_ERROR_MESSAGE);
                        return;
                    }
                }

                if (weightField.getValue() == null || weightField.getValue().toString().isEmpty()) {
                    getWindow().showNotification("Null/Empty Value for Weight is not ALLOWED!",
                            Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                } else {
                    if (!convertionUtilities.checkInputIfDouble(weightField.getValue().toString())) {
                        getWindow().showNotification("Enter a numeric format for Weight!",
                                Window.Notification.TYPE_ERROR_MESSAGE);
                        return;
                    }
                }

                if (genderBox.getValue() == null || genderBox.getValue().toString().isEmpty()) {
                    getWindow().showNotification("Select a Gender!", Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                }

                if (civilStatusBox.getValue() == null || civilStatusBox.getValue().toString().isEmpty()) {
                    getWindow().showNotification("Select Civil Status!", Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                }

                PersonalInformation pi = new PersonalInformation();
                pi.setFirstname(fnField.getValue().toString().toLowerCase().trim());
                pi.setMiddlename(mnField.getValue().toString().toLowerCase().trim());
                pi.setLastname(lnField.getValue().toString().toLowerCase().trim());
                pi.setEmployeeId(employeeId);
                pi.setDob((Date) dobField.getValue());
                pi.setPob((pobField.getValue() == null) ? "N/A"
                        : pobField.getValue().toString().toLowerCase().trim());
                pi.setHeight(convertionUtilities.convertStringToDouble(heightField.getValue().toString()));
                pi.setWeight(convertionUtilities.convertStringToDouble(weightField.getValue().toString()));

                if (convertionUtilities.checkInputIfInteger(genderBox.getValue().toString())) {
                    pi.setGender(genderBox.getItemCaption(genderBox.getValue()));
                } else {
                    pi.setGender(genderBox.getValue().toString());
                }

                if (convertionUtilities.checkInputIfInteger(civilStatusBox.getValue().toString())) {
                    pi.setCivilStatus(civilStatusBox.getItemCaption(civilStatusBox.getValue()));
                } else {
                    pi.setCivilStatus(civilStatusBox.getValue().toString());
                }

                pi.setCitizenship(
                        (citizenshipField.getValue() == null) ? "N/A" : citizenshipField.getValue().toString());
                pi.setReligion((religionField.getValue() == null) ? "N/A" : religionField.getValue().toString());
                pi.setSpouseName(
                        (spouseNameField.getValue() == null) ? "N/A" : spouseNameField.getValue().toString());
                pi.setSpouseOccupation((spouseOccupationField.getValue() == null) ? "N/A"
                        : spouseOccupationField.getValue().toString());
                pi.setSpouseOfficeAddress((spouseOfficeAddressField.getValue() == null) ? "N/A"
                        : spouseOfficeAddressField.getValue().toString());
                pi.setFathersName(
                        (fathersNameField.getValue() == null) ? "N/A" : fathersNameField.getValue().toString());
                pi.setFathersOccupation((fathersOccupationField.getValue() == null) ? "N/A"
                        : fathersOccupationField.getValue().toString());
                pi.setMothersName(
                        (mothersNameField.getValue() == null) ? "N/A" : mothersNameField.getValue().toString());
                pi.setMothersOccupation((mothersOccupationField.getValue() == null) ? "N/A"
                        : mothersOccupationField.getValue().toString());
                pi.setParentsAddress((parentsAddressField.getValue() == null) ? "N/A"
                        : parentsAddressField.getValue().toString());
                pi.setDialectSpeakWrite((dialectSpeakWriteField.getValue() == null) ? "N/A"
                        : dialectSpeakWriteField.getValue().toString());
                pi.setContactPersonName((contactPersonNameField.getValue() == null) ? "N/A"
                        : contactPersonNameField.getValue().toString());
                pi.setContactPersonAddress((contactPersonAddressField.getValue() == null) ? "N/A"
                        : contactPersonAddressField.getValue().toString());
                pi.setContactPersonNo((contactPersonNoField.getValue() == null) ? "N/A"
                        : contactPersonNoField.getValue().toString());
                pi.setSkills((skillsField.getValue() == null) ? "N/A" : skillsField.getValue().toString());
                pi.setHobby((hobbyField.getValue() == null) ? "N/A" : hobbyField.getValue().toString());
                pi.setEmployeeId(getEmployeeId());

                //                boolean result = piService.updatePersonalInformation(pi, "UPDATE PERSONAL INFORMATION");
                Window window = updatePersonalInformationConfirmation(pi);
                window.setModal(true);
                if (window.getParent() == null) {
                    getWindow().addWindow(window);
                }
                window.center();

                //      if(result){
                //          getWindow().showNotification("Information Updated", Window.Notification.TYPE_TRAY_NOTIFICATION);
                //      } else {
                //          getWindow().showNotification("SQL Error", Window.Notification.TYPE_ERROR_MESSAGE);
                //      }
            }
        });
        if (GlobalVariables.getUserRole().equals("administrator") || GlobalVariables.getUserRole().equals("hr")) {
            saveButton.setEnabled(true);
        } else {
            saveButton.setEnabled(false);
        }
        glayout.addComponent(saveButton, 2, 13, 3, 13);

        glayout.setColumnExpandRatio(1, .10f);
        glayout.setColumnExpandRatio(2, .10f);
        glayout.setColumnExpandRatio(3, .10f);

        return glayout;
    }

    private Window getRemoveWindow(String employeeId) {
        VerticalLayout vlayout = new VerticalLayout();
        vlayout.setSpacing(true);
        vlayout.setMargin(true);

        final Window window = new Window("REMOVE EMPLOYEE", vlayout);
        window.setWidth("350px");

        Button removeBtn = new Button("Are you sure your want to remove this Employee?");
        removeBtn.setWidth("100%");
        removeBtn.addListener(new Button.ClickListener() {

            @Override
            public void buttonClick(Button.ClickEvent event) {
                EmployeeMainUI employeeMainUI = new EmployeeMainUI(GlobalVariables.getUserRole(), 0);
                boolean result = employeeCurrentStatusService.removeEmployee(getEmployeeId());
                if (result) {
                    clearFields();
                    employeeMainUI.employeesTable(getEmployeeList(0));
                    (window.getParent()).removeWindow(window);
                } else {
                    getWindow().showNotification("Cannot Remove Employee, Contact your DBA!",
                            Window.Notification.TYPE_ERROR_MESSAGE);
                }
            }
        });
        window.addComponent(removeBtn);

        return window;
    }

    private Window updatePersonalInformationConfirmation(final PersonalInformation pi) {
        VerticalLayout vlayout = new VerticalLayout();
        vlayout.setSpacing(true);
        vlayout.setMargin(true);

        final Window window = new Window("UPDATE WINDOW", vlayout);
        window.setWidth("350px");

        final TextArea remarks = new TextArea("Remarks");
        remarks.setWidth("100%");
        remarks.setRows(3);
        window.addComponent(remarks);

        Button removeBtn = new Button("UPDATE EMPLOYEE?");
        removeBtn.setWidth("100%");
        removeBtn.addListener(new Button.ClickListener() {

            @Override
            public void buttonClick(Button.ClickEvent event) {
                if (remarks.getValue() == null || remarks.getValue().toString().trim().isEmpty()) {
                    getWindow().showNotification("Add remarks!", Window.Notification.TYPE_ERROR_MESSAGE);
                    return;
                }

                boolean result = piService.updatePersonalInformation(pi, remarks.getValue().toString().trim());
                if (result) {
                    getWindow().showNotification("Information Updated", Window.Notification.TYPE_TRAY_NOTIFICATION);
                    (window.getParent()).removeWindow(window);
                } else {
                    getWindow().showNotification("SQL Error", Window.Notification.TYPE_ERROR_MESSAGE);
                }
            }

        });
        window.addComponent(removeBtn);

        return window;
    }

    public String getEmployeeId() {
        return employeeId;
    }

    private TextField createTextField(String str) {
        TextField t = new TextField();
        t.setCaption(str);
        t.setWidth("100%");
        t.setStyleName(Reindeer.TEXTFIELD_SMALL);
        t.setNullSettingAllowed(true);

        return t;
    }

    public List<Employee> getEmployeeList(int branchId) {
        return employeeService.getEmployeePerBranch(branchId);
    }

    public Application getThisApplication() {
        return application;
    }

    public void clearFields() {
        fnField.setValue("");
        mnField.setValue("");
        lnField.setValue("");
        companyIdField.setValue("");
        dobField.setValue(new Date());
        pobField.setValue("");

        genderBox.removeAllItems();
        genderBox = dropDownComponent.populateGenderList(genderBox);

        civilStatusBox.removeAllItems();
        civilStatusBox = dropDownComponent.populateCivilStatusList(civilStatusBox);

        citizenshipField.setValue("");
        heightField.setValue("");
        weightField.setValue("");
        religionField.setValue("");
        spouseNameField.setValue("");
        spouseOccupationField.setValue("");
        spouseOfficeAddressField.setValue("");
        fathersNameField.setValue("");
        fathersOccupationField.setValue("");
        mothersNameField.setValue("");
        mothersOccupationField.setValue("");
        parentsAddressField.setValue("");
        dialectSpeakWriteField.setValue("");
        contactPersonNameField.setValue("");
        contactPersonAddressField.setValue("");
        contactPersonNoField.setValue("");
        skillsField.setValue("");
        hobbyField.setValue("");
    }
}