List of usage examples for com.vaadin.ui TextField setValue
@Override public void setValue(String value)
From source file:com.oodrive.nuage.webui.component.window.VvrAttributesWindow.java
License:Apache License
@SuppressWarnings("serial") @Override/*from www .ja v a2 s .c o m*/ public final Window init(final AbstractItemModel model) { // Cast model in vvrModel final VvrModel vvrModel = (VvrModel) model; // Add new window final Window vvrAttributesWindow = new Window("VVR Attributes"); vvrAttributesWindow.center(); vvrAttributesWindow.setWidth("400px"); vvrAttributesWindow.setResizable(false); final VerticalLayout layout = new VerticalLayout(); vvrAttributesWindow.setContent(layout); layout.setMargin(true); final FormLayout vvrAttributesLayout = new FormLayout(); layout.addComponent(vvrAttributesLayout); vvrAttributesLayout.setMargin(true); // Enter NAME String value = vvrModel.getVvrName(); if (value == null) { value = ""; } final TextField name = new TextField("Name", value); name.setSizeFull(); vvrAttributesLayout.addComponent(name); // Enter description value = vvrModel.getVvrDescription(); if (value == null) { value = ""; } final TextField desc = new TextField("Description", value); desc.setSizeFull(); vvrAttributesLayout.addComponent(desc); // Enter name final TextField vvrUUID = new TextField("UUID"); vvrUUID.setValue(vvrUuid.toString()); vvrUUID.setReadOnly(true); vvrUUID.setSizeFull(); vvrAttributesLayout.addComponent(vvrUUID); // OK button final HorizontalLayout hzlayout = new HorizontalLayout(); layout.addComponent(hzlayout); hzlayout.setSizeFull(); final Button okButton = new Button("OK"); hzlayout.addComponent(okButton); hzlayout.setComponentAlignment(okButton, Alignment.MIDDLE_CENTER); okButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { WaitingComponent.executeBackground(vvrModel, new Background() { @Override public void processing() { vvrModel.setVvrName(name.getValue()); vvrModel.setVvrDescription(desc.getValue()); } @Override public void postProcessing() { } }); vvrAttributesWindow.close(); } }); // Cancel button final Button cancelButton = new Button("Cancel"); hzlayout.addComponent(cancelButton); hzlayout.setComponentAlignment(cancelButton, Alignment.MIDDLE_CENTER); cancelButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { // Just close the window vvrAttributesWindow.close(); } }); return vvrAttributesWindow; }
From source file:com.oodrive.nuage.webui.component.window.VvrCreateWindow.java
License:Apache License
@SuppressWarnings("serial") @Override/*from w ww. j a va 2 s . co m*/ public final Window init(final AbstractItemModel model) { // Add new window vvrCreateWindow.center(); final FormLayout vvrCreateLayout = new FormLayout(); vvrCreateLayout.setMargin(true); vvrCreateWindow.setContent(vvrCreateLayout); vvrCreateWindow.setResizable(false); vvrCreateWindow.setClosable(false); // Enter name final TextField vvrName = new TextField("Name"); vvrName.setValue(""); vvrCreateLayout.addComponent(vvrName); // Enter decription final TextField vvrDescription = new TextField("Description"); vvrDescription.setValue(""); vvrCreateLayout.addComponent(vvrDescription); // Button create final Button vvrCreateButton = new Button("Create"); vvrCreateLayout.addComponent(vvrCreateButton); vvrCreateButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { try { ((VvrManagerModel) model).createVvr(vvrName.getValue(), vvrDescription.getValue()); Notification.show("New VVR created", Notification.Type.TRAY_NOTIFICATION); postProcessing.execute(); } catch (final Exception e) { final ErrorWindow err = new ErrorWindow("VVR not created: " + e.getMessage()); err.add(model); } } }); return vvrCreateWindow; }
From source file:com.oodrive.nuage.webui.WebUiUtils.java
License:Apache License
/** * Create a new long text field with a given setter/getter. * // ww w . j a v a 2 s . co m * @param operation * the operation to get/set the value contains in the text field. * @param fieldName * the name of the field * @param rootLayout * the layout to add the text field * @param model * the model used to get/set the value */ @SuppressWarnings({ "serial" }) public static final void createFieldLong(final LongAttributeOperation operation, final String fieldName, final FormLayout rootLayout, final AbstractItemModel model) { final TextField field = new TextField(fieldName, Long.toString(operation.getLongValue())); field.setWidth("250px"); field.setImmediate(true); rootLayout.addComponent(field); field.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(final ValueChangeEvent event) { final String newValue = String.valueOf(event.getProperty().getValue()); final String oldValue = Long.toString(operation.getLongValue()); if (!oldValue.equals(newValue)) { try { // Cast here to check format final long longNewValue = Long.valueOf(newValue); // Set value in background (could be a long operation) WaitingComponent.executeBackground(model, new Background() { @Override public void processing() { operation.setLongValue(longNewValue); } @Override public void postProcessing() { // Get the new real value set in the model (can be different) final String newValue = Long.toString(operation.getLongValue()); Notification.show(fieldName + " changed", newValue, Notification.Type.TRAY_NOTIFICATION); // Reset the field with the new value field.setValue(newValue); } }); } catch (final NumberFormatException e) { final ErrorWindow err = new ErrorWindow("You must enter a valid number"); err.add(model); // Reset the last value field.setValue(oldValue); } } } }); }
From source file:com.oodrive.nuage.webui.WebUiUtils.java
License:Apache License
/** * Create a new integer text field with a given setter/getter. * //from ww w .j av a 2 s. c o m * @param operation * the operation to get/set the value contains in the text field. * @param fieldName * the name of the field * @param rootLayout * the layout to add the text field * @param model * the model used to get/set the value */ @SuppressWarnings({ "serial" }) public static final void createFieldInteger(final IntegerAttributeOperation operation, final String fieldName, final FormLayout rootLayout, final AbstractItemModel model, final boolean emptyAllowed) { final TextField field = new TextField(fieldName, Integer.toString(operation.getIntegerValue())); field.setWidth("250px"); field.setImmediate(true); rootLayout.addComponent(field); field.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(final ValueChangeEvent event) { final String newValue = String.valueOf(event.getProperty().getValue()); final String oldValue = Integer.toString(operation.getIntegerValue()); if (!oldValue.equals(newValue)) { try { final int intNewValue; if (emptyAllowed && "".equals(newValue)) { // Empty equals 0 intNewValue = 0; } else { // Cast here to check format intNewValue = Integer.valueOf(newValue); } // Set value in background (could be a long operation) WaitingComponent.executeBackground(model, new Background() { @Override public void processing() { operation.setIntegerValue(intNewValue); } @Override public void postProcessing() { // Get the new real value set in the model (can be different) final String newValue = Integer.toString(operation.getIntegerValue()); Notification.show(fieldName + " changed", newValue, Notification.Type.TRAY_NOTIFICATION); // Reset the field with the new value field.setValue(newValue); } }); } catch (final NumberFormatException e) { final ErrorWindow err = new ErrorWindow("You must enter a valid number"); err.add(model); // Reset the last value field.setValue(oldValue); } } } }); }
From source file:com.openhris.employee.NewEmployeeWindow.java
public NewEmployeeWindow(String employeeId) { this.employeeId = employeeId; setCaption("New Employee"); setWidth("535px"); errorLabel.setVisible(false);//from w w w .ja va 2 s .c om GridLayout grid = new GridLayout(3, 9); grid.setSpacing(true); grid.setSizeFull(); final TextField firstname = new HRISTextField("Firstname:"); grid.addComponent(firstname, 0, 0); final TextField middlename = new HRISTextField("Middlename:"); grid.addComponent(middlename, 1, 0); final TextField lastname = new HRISTextField("Lastname:"); grid.addComponent(lastname, 2, 0); corporation = dropDown.populateCorporateComboBox(new ComboBox()); grid.addComponent(corporation, 0, 1, 1, 1); final PopupDateField entryDate = new HRISPopupDateField("Entry Date:"); grid.addComponent(entryDate, 2, 1); trade = new ComboBox("Trade: "); trade.setWidth("100%"); corporation.addListener(corporateListener); grid.addComponent(trade, 0, 2, 1, 2); final ComboBox dependent = dropDown.populateTotalDependent("Employee's Dependent"); grid.addComponent(dependent, 2, 2); branch = new ComboBox("Branch: "); branch.setWidth("100%"); trade.addListener(tradeListener); branch.addListener(branchListener); grid.addComponent(branch, 0, 3, 1, 3); final TextField department = new HRISTextField("Department: "); grid.addComponent(department, 2, 3); final TextField position = new HRISTextField("Position: "); grid.addComponent(position, 0, 4); final TextField sssNo = new HRISTextField("SSS #:"); grid.addComponent(sssNo, 1, 4); final TextField hdmfNo = new HRISTextField("HDMF #: "); grid.addComponent(hdmfNo, 2, 4); final ComboBox employmentStatus = dropDown.populateEmploymentStatus("Employment Status: "); grid.addComponent(employmentStatus, 0, 5); final TextField tinNo = new HRISTextField("Tin #:"); grid.addComponent(tinNo, 1, 5); final TextField peicNo = new HRISTextField("Philhealth #"); grid.addComponent(peicNo, 2, 5); final TextField employmentWage = new HRISTextField("Employment Wage: "); employmentWage.setValue("0.0"); employmentWage.addListener(checkEntryIfDoubleListener); grid.addComponent(employmentWage, 0, 6); final ComboBox employmentWageStatus = dropDown.populateEmploymentWageStatus("Employment Wage Status: "); grid.addComponent(employmentWageStatus, 1, 6); final ComboBox employmentWageEntry = dropDown.populateEmploymentWageEntry("Employment Wage Entry: "); grid.addComponent(employmentWageEntry, 2, 6); Button saveButton = new Button("SAVE NEW EMPLOYEE"); saveButton.setWidth("100%"); saveButton.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { boolean resultQueryInsert, result1, result2, checkId; boolean checkResultForDuplicate; result1 = utilities.checkInputIfDouble(employmentWage.getValue().toString().trim()); if (corporation.getValue() == null) { getWindow().showNotification("Select Corporation!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (trade.getValue() == null) { getWindow().showNotification("Select Trade!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (branch.getValue() == null) { getWindow().showNotification("Select Branch!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (dependent.getValue() == null) { getWindow().showNotification("Select # of dependent!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (employmentStatus.getValue() == null) { getWindow().showNotification("Select Employment Status!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (employmentWageStatus.getValue() == null) { getWindow().showNotification("Select Employment Wage Status!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (employmentWageEntry.getValue() == null) { getWindow().showNotification("Select Employment Wage Entry!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (department.getValue() == null) { getWindow().showNotification("Select Department!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (result1 == false) { getWindow().showNotification("Invalid Input for EmploymentWage/EmploymentAllowanceEntry", Window.Notification.TYPE_ERROR_MESSAGE); return; } checkResultForDuplicate = employeeService.checkForDuplicateEmployee( firstname.getValue().toString().trim().toLowerCase(), middlename.getValue().toString().trim().toLowerCase(), lastname.getValue().toString().trim().toLowerCase()); if (checkResultForDuplicate) { try { errorLabel.setVisible(true); } catch (Exception e) { e.printStackTrace(System.out); } return; } int corporate_id = companyService.getCorporateId(corporation.getValue().toString()); int trade_id = companyService.getTradeId(trade.getValue().toString(), getCorporateId()); int branch_id = companyService.getBranchId(getTradeId(), branch.getValue().toString()); PostEmploymentInformationBean pe = new PostEmploymentInformationBean(); pe.setFirstname(firstname.getValue().toString().trim()); pe.setMiddlename(middlename.getValue().toString().trim()); pe.setLastname(lastname.getValue().toString().trim()); pe.setCompany(corporation.getValue().toString()); pe.setTrade(trade.getValue().toString()); pe.setBranch(branch.getValue().toString()); pe.setBranchId(branch_id); pe.setDepartment(department.getValue().toString().trim()); pe.setTotalDependent(dependent.getItem(dependent.getValue()).toString()); pe.setPosition(position.getValue().toString().trim()); pe.setEntryDate( utilities.parsingDate(utilities.convertDateFormat(entryDate.getValue().toString()))); pe.setSssNo(sssNo.getValue().toString().trim()); pe.setTinNo(tinNo.getValue().toString().trim()); pe.setPhicNo(peicNo.getValue().toString().trim()); pe.setHdmfNo(hdmfNo.getValue().toString().trim()); pe.setEmploymentStatus(employmentStatus.getItem(employmentStatus.getValue()).toString()); pe.setEmploymentWageStatus( employmentWageStatus.getItem(employmentWageStatus.getValue()).toString()); pe.setEmploymentWageEntry(employmentWageEntry.getItem(employmentWageEntry.getValue()).toString()); pe.setEmploymentWage(utilities.convertStringToDouble(employmentWage.getValue().toString().trim())); resultQueryInsert = employeeService.insertNewEmployee(pe); if (resultQueryInsert == true) { close(); } else { getWindow().showNotification("SQL ERROR!"); } } }); grid.addComponent(saveButton, 1, 7, 2, 7); grid.addComponent(errorLabel, 1, 8, 2, 8); addComponent(grid); }
From source file:com.openhris.employee.salary.EmployeeSalaryInformation.java
public ComponentContainer layout2() { GridLayout glayout = new GridLayout(2, 1); glayout.setSpacing(true);// w ww.j a v a2 s.c o m glayout.setWidth("600px"); TextField employmentStatusField = new HRISTextField("Employment Status: "); employmentStatusField.setWidth("200px"); glayout.addComponent(employmentStatusField, 0, 0); Button setContributionBtn = new Button("SET EMPLOYEE'S CONTRIBUTIONS MAIN BRANCH"); setContributionBtn.setWidth("100%"); setContributionBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { Window subWindow = setContributionMainBranch(); if (subWindow.getParent() == null) { getWindow().addWindow(subWindow); } subWindow.setModal(true); subWindow.center(); } }); glayout.addComponent(setContributionBtn, 1, 0); glayout.setColumnExpandRatio(1, 1); glayout.setComponentAlignment(setContributionBtn, Alignment.BOTTOM_CENTER); if (GlobalVariables.getUserRole().equals("administrator") || GlobalVariables.getUserRole().equals("hr")) { setContributionBtn.setEnabled(true); } else { setContributionBtn.setEnabled(false); } if (getEmployeeId() != null) { EmploymentInformation employmentInformation = si.getEmployeeSalaryInformation(getEmployeeId()); employmentStatusField.setValue(employmentInformation.getCurrentStatus().toUpperCase()); } employmentStatusField.setReadOnly(true); return glayout; }
From source file:com.openhris.payroll.PayrollSubModules.java
public Window perDiemWindow(Item item) { this.item = item; VerticalLayout vlayout = new VerticalLayout(); vlayout.setSpacing(true);/*w w w.j a v a2 s . c o m*/ vlayout.setMargin(true); final Window sub = new Window("PER DIEM", vlayout); sub.setWidth("220px"); sub.setModal(true); sub.center(); final TextField perDiemAmount = new TextField("Amount: "); perDiemAmount.setWidth("100%"); perDiemAmount .setValue(util.convertStringToDouble(getPayrollTableItem().getItemProperty("per diem").toString())); perDiemAmount.setNullSettingAllowed(false); sub.addComponent(perDiemAmount); Button save = new Button("SAVE"); save.setWidth("100%"); save.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { int payrollId = util .convertStringToInteger(getPayrollTableItem().getItemProperty("id").getValue().toString()); double amountToBeReceive = util.convertStringToDouble( getPayrollTableItem().getItemProperty("amount to be receive").toString()); double amountReceived = util .convertStringToDouble(getPayrollTableItem().getItemProperty("amount received").toString()); double amount = util.convertStringToDouble(perDiemAmount.getValue().toString()) - util.convertStringToDouble( getPayrollTableItem().getItemProperty("per diem").getValue().toString()); boolean result = ps.addPerDiem(payrollId, util.convertStringToDouble(perDiemAmount.getValue().toString()), util.convertStringToDouble( getPayrollTableItem().getItemProperty("per diem").getValue().toString()), amountToBeReceive, amountReceived); if (result) { getPayrollTableItem().getItemProperty("amount to be receive") .setValue(amountToBeReceive + amount); getPayrollTableItem().getItemProperty("amount received").setValue(amountReceived + amount); getPayrollTableItem().getItemProperty("per diem").setValue(perDiemAmount.getValue()); (sub.getParent()).removeWindow(sub); } } }); sub.addComponent(save); return sub; }
From source file:com.openhris.timekeeping.AttendanceTableContainerWindow.java
VerticalLayout generateAttendanceTable() { VerticalLayout vlayout = new VerticalLayout(); vlayout.setSizeFull();//from ww w . j av a2 s .c o m vlayout.setSpacing(true); final Table table = new Table(); table.removeAllItems(); table.setEnabled(true); table.setSizeFull(); table.setImmediate(true); table.setColumnCollapsingAllowed(true); table.addContainerProperty("date", String.class, null); table.addContainerProperty("policy", ComboBox.class, null); table.addContainerProperty("holidays", ComboBox.class, null); table.addContainerProperty("premium", CheckBox.class, null); table.addContainerProperty("lates", TextField.class, null); table.addContainerProperty("undertime", TextField.class, null); table.addContainerProperty("overtime", TextField.class, null); table.addContainerProperty("night differential", TextField.class, null); table.addContainerProperty("duty manager", TextField.class, null); table.addContainerProperty("l/min", Double.class, null); table.addContainerProperty("u/min", Double.class, null); table.addContainerProperty("o/min", Double.class, null); table.addContainerProperty("nd/min", Double.class, null); table.addContainerProperty("dm/min", Double.class, null); table.addContainerProperty("lholiday", Double.class, null); table.addContainerProperty("sholiday", Double.class, null); table.addContainerProperty("wdo", Double.class, null); table.addContainerProperty("psday", Double.class, null); //paid non-working holiday table.addContainerProperty("latesLH", Double.class, null); table.addContainerProperty("latesSH", Double.class, null); table.addContainerProperty("latesWO", Double.class, null); table.addContainerProperty("undertimeLH", Double.class, null); table.addContainerProperty("undertimeSH", Double.class, null); table.addContainerProperty("undertimeWO", Double.class, null); table.setColumnAlignment("date", Table.ALIGN_CENTER); table.setColumnAlignment("policy", Table.ALIGN_CENTER); table.setColumnAlignment("premium", Table.ALIGN_CENTER); table.setColumnAlignment("lates", Table.ALIGN_CENTER); table.setColumnAlignment("undertime", Table.ALIGN_CENTER); table.setColumnAlignment("overtime", Table.ALIGN_CENTER); table.setColumnAlignment("night differential", Table.ALIGN_CENTER); table.setColumnAlignment("duty manager", Table.ALIGN_CENTER); table.setColumnAlignment("l/min", Table.ALIGN_RIGHT); table.setColumnAlignment("u/min", Table.ALIGN_RIGHT); table.setColumnAlignment("o/min", Table.ALIGN_RIGHT); table.setColumnAlignment("nd/min", Table.ALIGN_RIGHT); table.setColumnAlignment("dm/min", Table.ALIGN_RIGHT); table.setColumnAlignment("lholiday", Table.ALIGN_RIGHT); table.setColumnAlignment("sholiday", Table.ALIGN_RIGHT); table.setColumnAlignment("wdo", Table.ALIGN_RIGHT); table.setColumnAlignment("psday", Table.ALIGN_RIGHT); table.setColumnAlignment("latesLH", Table.ALIGN_RIGHT); table.setColumnAlignment("latesSH", Table.ALIGN_RIGHT); table.setColumnAlignment("latesWO", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeLH", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeSH", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeWO", Table.ALIGN_RIGHT); table.setColumnWidth("date", 70); table.setColumnWidth("policy", 125); table.setColumnWidth("holidays", 125); table.setColumnWidth("premium", 60); table.setColumnWidth("lates", 50); table.setColumnWidth("undertime", 60); table.setColumnWidth("overtime", 50); table.setColumnWidth("night differential", 110); table.setColumnWidth("duty manager", 80); table.setColumnWidth("l/min", 40); table.setColumnWidth("u/min", 40); table.setColumnWidth("o/min", 40); table.setColumnWidth("nd/min", 50); table.setColumnCollapsed("latesLH", true); table.setColumnCollapsed("latesSH", true); table.setColumnCollapsed("latesWO", true); table.setColumnCollapsed("undertimeLH", true); table.setColumnCollapsed("undertimeSH", true); table.setColumnCollapsed("undertimeWO", true); final String[] holidayList = { "legal-holiday", "special-holiday" }; if (getEmploymentWageEntry().equals("monthly")) { employmentWage = utilities.roundOffToTwoDecimalPlaces((employmentWage * 12) / 314); } for (int i = 0; i < dateList.size(); i++) { Object itemId = new Integer(i); final ComboBox holidays = dropDown.populateAttendanceHolidayDropDownList(new ComboBox()); holidays.setEnabled(false); holidays.setWidth("120px"); holidays.setNullSelectionAllowed(false); holidays.setData(itemId); final CheckBox premium = new CheckBox(); premium.setData(itemId); premium.setImmediate(true); final TextField lates = new TextField(); lates.setWidth("100%"); lates.setValue("0"); lates.addStyleName("numerical"); lates.setEnabled(true); lates.setData(itemId); lates.setImmediate(true); final TextField undertime = new TextField(); undertime.setWidth("100%"); undertime.setValue("0"); undertime.addStyleName("numerical"); undertime.setEnabled(true); undertime.setData(itemId); undertime.setImmediate(true); final TextField overtime = new TextField(); overtime.setWidth("100%"); overtime.setValue("0"); overtime.addStyleName("numerical"); overtime.setEnabled(true); overtime.setData(itemId); overtime.setImmediate(true); final TextField nightDifferential = new TextField(); nightDifferential.setWidth("70%"); nightDifferential.setValue("0"); nightDifferential.addStyleName("numerical"); nightDifferential.setEnabled(true); nightDifferential.setData(itemId); nightDifferential.setImmediate(true); final TextField dutyManager = new TextField(); dutyManager.setWidth("80%"); dutyManager.setValue("0"); dutyManager.addStyleName("numerical"); dutyManager.setEnabled(true); dutyManager.setData(itemId); dutyManager.setImmediate(true); final ComboBox policy = dropDown.populateAttendancePolicyDropDownList(new ComboBox()); policy.setWidth("120px"); policy.setNullSelectionAllowed(true); policy.setData(itemId); policy.addListener(new Property.ValueChangeListener() { @Override public void valueChange(Property.ValueChangeEvent event) { Object itemId = policy.getData(); Item item = table.getItem(itemId); double additionalWorkingDayOffPay = 0; holidays.removeAllItems(); for (String temp : holidayList) { holidays.addItem(temp); } premium.setValue(false); lates.setValue("0"); undertime.setValue("0"); overtime.setValue("0"); nightDifferential.setValue("0"); item.getItemProperty("l/min").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); item.getItemProperty("o/min").setValue(0.0); item.getItemProperty("nd/min").setValue(0.0); item.getItemProperty("dm/min").setValue(0.0); item.getItemProperty("sholiday").setValue(0.0); item.getItemProperty("lholiday").setValue(0.0); item.getItemProperty("wdo").setValue(0.0); item.getItemProperty("psday").setValue(0.0); item.getItemProperty("psday").setValue(0.0); item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH").setValue(0.0); item.getItemProperty("latesWO").setValue(0.0); item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO").setValue(0.0); if (event.getProperty().getValue() == null) { holidays.setEnabled(false); lates.setEnabled(true); undertime.setEnabled(true); overtime.setEnabled(true); nightDifferential.setEnabled(true); dutyManager.setEnabled(true); } else if (event.getProperty().getValue().equals("holiday")) { holidays.setEnabled(true); lates.setEnabled(false); undertime.setEnabled(false); overtime.setEnabled(false); nightDifferential.setEnabled(false); dutyManager.setEnabled(false); } else if (event.getProperty().getValue().equals("working-holiday")) { holidays.setEnabled(true); lates.setEnabled(true); undertime.setEnabled(true); overtime.setEnabled(true); nightDifferential.setEnabled(true); dutyManager.setEnabled(true); } else if (event.getProperty().getValue().equals("working-day-off")) { holidays.setEnabled(true); lates.setEnabled(true); undertime.setEnabled(true); overtime.setEnabled(true); nightDifferential.setEnabled(true); dutyManager.setEnabled(true); additionalWorkingDayOffPay = computation.processAdditionalWorkingDayOff(getEmploymentWage(), getEmploymentWageEntry()); System.out.println("wdo: " + additionalWorkingDayOffPay); if (getBranch().equals("on-call and trainees")) { item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces(getEmploymentWage())); } else { item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalWorkingDayOffPay)); } } else { holidays.setEnabled(false); lates.setEnabled(false); undertime.setEnabled(false); overtime.setEnabled(false); nightDifferential.setEnabled(false); dutyManager.setEnabled(false); } } }); policy.setImmediate(true); holidays.addListener(new ComboBox.ValueChangeListener() { @Override public void valueChange(Property.ValueChangeEvent event) { Object itemId = holidays.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); double additionalHolidayPay = 0; double multiplePremiumPay = 0; double additionalWorkingDayOffPay = 0; premium.setValue(false); lates.setValue("0"); undertime.setValue("0"); overtime.setValue("0"); nightDifferential.setValue("0"); item.getItemProperty("sholiday").setValue(0.0); item.getItemProperty("lholiday").setValue(0.0); item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH").setValue(0.0); item.getItemProperty("latesWO").setValue(0.0); item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO").setValue(0.0); if (policyStr == null) { } else { if (policyStr.equals("working-holiday")) { if (event.getProperty().getValue().equals("legal-holiday")) { additionalHolidayPay = computation.processAdditionalHolidayPay( event.getProperty().getValue().toString(), getEmploymentWage()); item.getItemProperty("lholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalHolidayPay)); item.getItemProperty("sholiday").setValue(0.0); } else { additionalHolidayPay = computation.processAdditionalHolidayPay( event.getProperty().getValue().toString(), getEmploymentWage()); item.getItemProperty("sholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalHolidayPay)); item.getItemProperty("lholiday").setValue(0.0); } } else if (policyStr.equals("holiday")) { if (event.getProperty().getValue().equals("legal-holiday")) { if (getEmploymentWageEntry().equals("daily")) { additionalHolidayPay = computation.processAdditionalHolidayPay( event.getProperty().getValue().toString(), getEmploymentWage()); item.getItemProperty("psday") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalHolidayPay)); } else { item.getItemProperty("psday").setValue(0.0); } } else { item.getItemProperty("psday").setValue(0.0); } } else if (policyStr.equals("working-day-off")) { if (event.getProperty().getValue() == null) { item.getItemProperty("psday").setValue(0.0); } else if (event.getProperty().getValue().equals("legal-holiday")) { additionalWorkingDayOffPay = computation.processAdditionalWorkingDayOff( getEmploymentWage(), getEmploymentWageEntry()); item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalWorkingDayOffPay)); multiplePremiumPay = computation.processMultiplePremiumPay( event.getProperty().getValue().toString(), getEmploymentWage()); item.getItemProperty("lholiday").setValue(multiplePremiumPay); item.getItemProperty("sholiday").setValue(0.0); } else { additionalWorkingDayOffPay = computation.processAdditionalWorkingDayOff( getEmploymentWage(), getEmploymentWageEntry()); item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces(additionalWorkingDayOffPay)); multiplePremiumPay = computation.processMultiplePremiumPay( event.getProperty().getValue().toString(), getEmploymentWage()); item.getItemProperty("sholiday").setValue(multiplePremiumPay); item.getItemProperty("lholiday").setValue(0.0); } } } } }); holidays.setImmediate(true); premium.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); lates.setValue("0"); undertime.setValue("0"); overtime.setValue("0"); nightDifferential.setValue("0"); dutyManager.setValue("0"); item.getItemProperty("l/min").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); item.getItemProperty("o/min").setValue(0.0); item.getItemProperty("nd/min").setValue(0.0); item.getItemProperty("dm/min").setValue(0.0); if (event.getButton().booleanValue() == true) { premiumRate = 0.1; } else { premiumRate = 0.0; } item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces( Double.parseDouble(item.getItemProperty("wdo").getValue().toString()) + (Double.parseDouble(item.getItemProperty("wdo").getValue().toString()) * premiumRate))); item.getItemProperty("lholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(Double .parseDouble(item.getItemProperty("lholiday").getValue().toString()) + (Double.parseDouble(item.getItemProperty("lholiday").getValue().toString()) * premiumRate))); item.getItemProperty("sholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(Double .parseDouble(item.getItemProperty("sholiday").getValue().toString()) + (Double.parseDouble(item.getItemProperty("sholiday").getValue().toString()) * premiumRate))); } }); lates.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double lateDeduction; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for lates!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { if (getBranch().equals("on-call and trainees")) { lateDeduction = computation.processEmployeesLatesForOnCall(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("l/min") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); } else { if (utilities.convertStringToInteger(event.getText().trim()) > 5) { lateDeduction = computation.processEmployeesLates(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); if (policyStr == null || policyStr.isEmpty()) { item.getItemProperty("l/min") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); } else if (policyStr.equals("working-holiday") && holidayStr.equals("legal-holiday")) { item.getItemProperty("latesLH") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); item.getItemProperty("latesSH").setValue(0.0); item.getItemProperty("latesWO").setValue(0.0); item.getItemProperty("l/min").setValue(0.0); } else if (policyStr.equals("working-holiday") && holidayStr.equals("special-holiday")) { item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction * 0.3)); item.getItemProperty("latesWO").setValue(0.0); if (getEmploymentWageEntry().equals("daily")) { item.getItemProperty("l/min").setValue(lateDeduction); } else { item.getItemProperty("l/min").setValue(0.0); } } else if (policyStr.equals("working-day-off")) { item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH").setValue(0.0); if (getEmploymentWageEntry().equals("daily")) { item.getItemProperty("latesWO") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction * .3)); item.getItemProperty("l/min").setValue(lateDeduction); } else { item.getItemProperty("latesWO") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction * .3)); item.getItemProperty("l/min").setValue(0.0); } } } else { item.getItemProperty("l/min").setValue(0.0); } } } else { item.getItemProperty("l/min").setValue(0.0); } } }); undertime.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double undertimeDeduction; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { if (getBranch().equals("on-call and trainees")) { undertimeDeduction = computation.processEmployeesUndertimeForOnCall(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("u/min") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); } else { undertimeDeduction = computation.processEmployeesUndertime(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); if (policyStr == null || policyStr.isEmpty()) { item.getItemProperty("u/min") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); } else if (policyStr.equals("working-holiday") && holidayStr.equals("legal-holiday")) { item.getItemProperty("undertimeLH") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); } else if (policyStr.equals("working-holiday") && holidayStr.equals("special-holiday")) { item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction * 0.3)); item.getItemProperty("undertimeWO").setValue(0.0); if (getEmploymentWageEntry().equals("daily")) { item.getItemProperty("u/min").setValue(undertimeDeduction); } else { item.getItemProperty("u/min").setValue(0.0); } } else if (policyStr.equals("working-day-off")) { item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); item.getItemProperty("u/min").setValue(0.0); if (getEmploymentWageEntry().equals("daily")) { item.getItemProperty("undertimeWO").setValue( utilities.roundOffToTwoDecimalPlaces(undertimeDeduction * .3)); item.getItemProperty("u/min").setValue(undertimeDeduction); } else { item.getItemProperty("undertimeWO").setValue( utilities.roundOffToTwoDecimalPlaces(undertimeDeduction * .3)); item.getItemProperty("u/min").setValue(0.0); } } } } else { item.getItemProperty("u/min").setValue(0.0); } } }); overtime.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double overtimeAddition; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { String branch = getBranch().replaceAll("\\(.*?\\)", ""); if (branch.trim().equals("on-call and trainees")) { overtimeAddition = computation.processEmployeesOvertimeForOnCall(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("o/min") .setValue(utilities.roundOffToTwoDecimalPlaces(overtimeAddition)); } else { overtimeAddition = computation.processEmployeesOvertime(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("o/min").setValue(utilities.roundOffToTwoDecimalPlaces( overtimeAddition + (overtimeAddition * premiumRate))); } } else { item.getItemProperty("o/min").setValue(0.0); } } }); nightDifferential.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double nightDifferentialAddition; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { if (getBranch().equals("on-call and trainees")) { nightDifferentialAddition = computation.processEmployeesNightDifferentialForOnCall( policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("nd/min").setValue(utilities.roundOffToTwoDecimalPlaces( nightDifferentialAddition + (nightDifferentialAddition * premiumRate))); } else { nightDifferentialAddition = computation.processEmployeesNightDifferential(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("nd/min").setValue(utilities.roundOffToTwoDecimalPlaces( nightDifferentialAddition + (nightDifferentialAddition * premiumRate))); } } else { item.getItemProperty("nd/min").setValue(0.0); } } }); dutyManager.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double dutyManagerAddition; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for Duty Manager!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { if (getBranch().equals("on-call and trainees")) { dutyManagerAddition = computation.processEmployeeDutyManagerForOnCall(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("dm/min") .setValue(utilities.roundOffToTwoDecimalPlaces(dutyManagerAddition)); } else { dutyManagerAddition = computation.processEmployeeDutyManager(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); item.getItemProperty("dm/min") .setValue(utilities.roundOffToTwoDecimalPlaces(dutyManagerAddition)); } } else { item.getItemProperty("dm/min").setValue(0.0); } } }); table.addItem(new Object[] { utilities.convertDateFormat(dateList.get(i).toString()), policy, holidays, premium, lates, undertime, overtime, nightDifferential, dutyManager, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, //lates from legal & special holiday 0.0, 0.0, 0.0 //undertime from legal & special holiday }, i); } table.setPageLength(table.size()); vlayout.addComponent(table); final Button button = new Button(); button.setCaption("Save Attendance Data"); vlayout.addComponent(button); for (Object listener : button.getListeners(Button.ClickListener.class)) { button.removeListener(Button.ClickListener.class, listener); } button.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { try { Collection attendanceTableCollection = table.getContainerDataSource().getItemIds(); List<Timekeeping> attendanceList = new ArrayList<Timekeeping>(); for (int i = 0; i < attendanceTableCollection.size(); i++) { String str = table.getItem(i).toString(); String[] attStr = str.split(" "); List<String> tkeepList = new ArrayList<String>(Arrays.asList(attStr)); Timekeeping t = new Timekeeping(); t.setAttendanceDate(utilities.parsingDate(tkeepList.get(0))); t.setPolicy(tkeepList.get(1)); t.setHoliday(tkeepList.get(2)); t.setPremium(utilities.convertStringToBoolean(tkeepList.get(3))); t.setLates(utilities.convertStringToDouble(tkeepList.get(4))); t.setUndertime(utilities.convertStringToDouble(tkeepList.get(5))); t.setOvertime(utilities.convertStringToDouble(tkeepList.get(6))); t.setNightDifferential(utilities.convertStringToDouble(tkeepList.get(7))); t.setDutyManager(utilities.convertStringToDouble(tkeepList.get(8))); t.setLateDeduction(utilities.convertStringToDouble(tkeepList.get(9))); t.setUndertimeDeduction(utilities.convertStringToDouble(tkeepList.get(10))); t.setOvertimePaid(utilities.convertStringToDouble(tkeepList.get(11))); t.setNightDifferentialPaid(utilities.convertStringToDouble(tkeepList.get(12))); t.setDutyManagerPaid(utilities.convertStringToDouble(tkeepList.get(13))); t.setLegalHolidayPaid(utilities.convertStringToDouble(tkeepList.get(14))); t.setSpecialHolidayPaid(utilities.convertStringToDouble(tkeepList.get(15))); t.setWorkingDayOffPaid(utilities.convertStringToDouble(tkeepList.get(16))); t.setNonWorkingHolidayPaid(utilities.convertStringToDouble(tkeepList.get(17))); t.setLatesLegalHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(18))); t.setLatesSpecialHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(19))); t.setLatesWorkingDayOffDeduction(utilities.convertStringToDouble(tkeepList.get(20))); t.setUndertimeLegalHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(21))); t.setUndertimeSpecialHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(22))); t.setUndertimeWorkingDayOffDeduction(utilities.convertStringToDouble(tkeepList.get(23))); attendanceList.add(t); } ProcessPayrollComputation processPayroll = new ProcessPayrollComputation(employeeId, getBranchId()); processPayroll.initVariables(); processPayroll.initVariablesForComputation(attendanceList); boolean result = processPayroll.processPayrollComputation(payrollDate, payrollPeriod, attendancePeriodFrom, attendancePeriodTo, 0); if (result) { close(); } else { getWindow().showNotification("SQL ERROR"); } } catch (Exception e) { e.getMessage(); } } }); return vlayout; }
From source file:com.openhris.timekeeping.EditAttendanceTableContainerWindow.java
VerticalLayout generateAttendanceTable() { VerticalLayout vlayout = new VerticalLayout(); vlayout.setSizeFull();/*from w w w.java2 s .c om*/ vlayout.setSpacing(true); if (getEmploymentWageEntry().equals("monthly")) { employmentWage = utilities.roundOffToTwoDecimalPlaces((employmentWage * 12) / 314); } final Table table = new Table(); table.removeAllItems(); table.setEnabled(true); table.setWidth("100%"); table.setImmediate(true); table.setColumnCollapsingAllowed(true); table.addContainerProperty("edit", CheckBox.class, null); table.addContainerProperty("date", String.class, null); table.addContainerProperty("policy", String.class, null); table.addContainerProperty("holidays", String.class, null); table.addContainerProperty("premium", CheckBox.class, null); table.addContainerProperty("lates", TextField.class, null); table.addContainerProperty("undertime", TextField.class, null); table.addContainerProperty("overtime", TextField.class, null); table.addContainerProperty("night differential", TextField.class, null); table.addContainerProperty("l/min", Double.class, null); table.addContainerProperty("u/min", Double.class, null); table.addContainerProperty("o/min", Double.class, null); table.addContainerProperty("nd/min", Double.class, null); table.addContainerProperty("lholiday", Double.class, null); table.addContainerProperty("sholiday", Double.class, null); table.addContainerProperty("wdo", Double.class, null); table.addContainerProperty("psday", Double.class, null); //paid non-working holiday table.addContainerProperty("latesLH", Double.class, null); table.addContainerProperty("latesSH", Double.class, null); table.addContainerProperty("latesWO", Double.class, null); table.addContainerProperty("undertimeLH", Double.class, null); table.addContainerProperty("undertimeSH", Double.class, null); table.addContainerProperty("undertimeWO", Double.class, null); table.setColumnAlignment("edit", Table.ALIGN_CENTER); table.setColumnAlignment("date", Table.ALIGN_CENTER); table.setColumnAlignment("policy", Table.ALIGN_CENTER); table.setColumnAlignment("premium", Table.ALIGN_CENTER); table.setColumnAlignment("lates", Table.ALIGN_CENTER); table.setColumnAlignment("undertime", Table.ALIGN_CENTER); table.setColumnAlignment("overtime", Table.ALIGN_CENTER); table.setColumnAlignment("night differential", Table.ALIGN_CENTER); table.setColumnAlignment("l/min", Table.ALIGN_RIGHT); table.setColumnAlignment("u/min", Table.ALIGN_RIGHT); table.setColumnAlignment("o/min", Table.ALIGN_RIGHT); table.setColumnAlignment("nd/min", Table.ALIGN_RIGHT); table.setColumnAlignment("lholiday", Table.ALIGN_RIGHT); table.setColumnAlignment("sholiday", Table.ALIGN_RIGHT); table.setColumnAlignment("wdo", Table.ALIGN_RIGHT); table.setColumnAlignment("psday", Table.ALIGN_RIGHT); table.setColumnAlignment("latesLH", Table.ALIGN_RIGHT); table.setColumnAlignment("latesSH", Table.ALIGN_RIGHT); table.setColumnAlignment("latesWO", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeLH", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeSH", Table.ALIGN_RIGHT); table.setColumnAlignment("undertimeWO", Table.ALIGN_RIGHT); table.setColumnCollapsed("latesLH", true); table.setColumnCollapsed("latesSH", true); table.setColumnCollapsed("latesWO", true); table.setColumnCollapsed("undertimeLH", true); table.setColumnCollapsed("undertimeSH", true); table.setColumnCollapsed("undertimeWO", true); final String[] holidayList = { "legal-holiday", "special-holiday" }; for (int i = 0; i < getDateList().size(); i++) { Object itemId = new Integer(i); final CheckBox edit = new CheckBox(); edit.setData(i); edit.setEnabled(UserAccessControl.isEditAttendance()); edit.setImmediate(true); final CheckBox premium = new CheckBox(); premium.setData(itemId); premium.setEnabled(false); premium.setImmediate(true); final TextField lates = new TextField(); lates.setWidth("50px"); lates.setValue("0"); lates.setEnabled(true); lates.setData(itemId); lates.setEnabled(false); lates.setImmediate(true); final TextField undertime = new TextField(); undertime.setWidth("50px"); undertime.setValue("0"); undertime.setEnabled(true); undertime.setData(itemId); undertime.setEnabled(false); undertime.setImmediate(true); final TextField overtime = new TextField(); overtime.setWidth("50px"); overtime.setValue("0"); overtime.setEnabled(true); overtime.setData(itemId); overtime.setEnabled(false); overtime.setImmediate(true); final TextField nightDifferential = new TextField(); nightDifferential.setWidth("50px"); nightDifferential.setValue("0"); nightDifferential.setEnabled(true); nightDifferential.setData(itemId); nightDifferential.setEnabled(false); nightDifferential.setImmediate(true); edit.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { premium.setEnabled(event.getButton().booleanValue()); lates.setEnabled(event.getButton().booleanValue()); undertime.setEnabled(event.getButton().booleanValue()); overtime.setEnabled(event.getButton().booleanValue()); nightDifferential.setEnabled(event.getButton().booleanValue()); } }); premium.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); lates.setValue("0"); undertime.setValue("0"); overtime.setValue("0"); nightDifferential.setValue("0"); item.getItemProperty("l/min").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); item.getItemProperty("o/min").setValue(0.0); item.getItemProperty("nd/min").setValue(0.0); if (event.getButton().booleanValue() == true) { premiumRate = 0.1; } else { premiumRate = 0.0; } item.getItemProperty("wdo") .setValue(utilities.roundOffToTwoDecimalPlaces( Double.parseDouble(item.getItemProperty("wdo").getValue().toString()) + (Double.parseDouble(item.getItemProperty("wdo").getValue().toString()) * premiumRate))); item.getItemProperty("lholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(Double .parseDouble(item.getItemProperty("lholiday").getValue().toString()) + (Double.parseDouble(item.getItemProperty("lholiday").getValue().toString()) * premiumRate))); item.getItemProperty("sholiday") .setValue(utilities.roundOffToTwoDecimalPlaces(Double .parseDouble(item.getItemProperty("sholiday").getValue().toString()) + (Double.parseDouble(item.getItemProperty("sholiday").getValue().toString()) * premiumRate))); } }); lates.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double lateDeduction; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for lates!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { if (utilities.convertStringToInteger(event.getText().trim()) > 5) { lateDeduction = computation.processEmployeesLates(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); if (policyStr == null || policyStr.isEmpty()) { item.getItemProperty("l/min") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); } else if (policyStr.equals("working-holiday") && holidayStr.equals("legal-holiday")) { item.getItemProperty("latesLH") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); item.getItemProperty("latesSH").setValue(0.0); item.getItemProperty("latesWO").setValue(0.0); item.getItemProperty("l/min").setValue(0.0); } else if (policyStr.equals("working-holiday") && holidayStr.equals("special-holiday")) { item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); item.getItemProperty("latesWO").setValue(0.0); item.getItemProperty("l/min").setValue(0.0); } else if (policyStr.equals("working-day-off")) { item.getItemProperty("latesLH").setValue(0.0); item.getItemProperty("latesSH").setValue(0.0); item.getItemProperty("latesWO") .setValue(utilities.roundOffToTwoDecimalPlaces(lateDeduction)); item.getItemProperty("l/min").setValue(0.0); } } else { item.getItemProperty("l/min").setValue(0.0); } } else { item.getItemProperty("l/min").setValue(0.0); } } }); undertime.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double undertimeDeduction; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { undertimeDeduction = computation.processEmployeesUndertime(policyStr, holidayStr, utilities.convertStringToInteger(event.getText().trim()), getEmploymentWage()); if (policyStr == null || policyStr.isEmpty()) { item.getItemProperty("u/min") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); } else if (policyStr.equals("working-holiday") && holidayStr.equals("legal-holiday")) { item.getItemProperty("undertimeLH") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); } else if (policyStr.equals("working-holiday") && holidayStr.equals("special-holiday")) { item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); item.getItemProperty("undertimeWO").setValue(0.0); item.getItemProperty("u/min").setValue(0.0); } else if (policyStr.equals("working-day-off")) { item.getItemProperty("undertimeLH").setValue(0.0); item.getItemProperty("undertimeSH").setValue(0.0); item.getItemProperty("undertimeWO") .setValue(utilities.roundOffToTwoDecimalPlaces(undertimeDeduction)); item.getItemProperty("u/min").setValue(0.0); } } else { item.getItemProperty("u/min").setValue(0.0); } } }); overtime.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double overtimeAddition; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { overtimeAddition = computation.processEmployeesOvertime(policyStr, holidayStr, Integer.parseInt(event.getText().trim()), getEmploymentWage()); item.getItemProperty("o/min").setValue(utilities .roundOffToTwoDecimalPlaces(overtimeAddition + (overtimeAddition * premiumRate))); } else { item.getItemProperty("o/min").setValue(0.0); } } }); nightDifferential.addListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { Object itemId = lates.getData(); Item item = table.getItem(itemId); String policyStr = item.getItemProperty("policy").toString(); String holidayStr = item.getItemProperty("holidays").toString(); double nightDifferentialAddition; boolean checkIfInputIsInteger = utilities.checkInputIfInteger(event.getText().trim()); if (!checkIfInputIsInteger) { getWindow().showNotification("Enter numeric format for undertime!", Window.Notification.TYPE_WARNING_MESSAGE); return; } if (!event.getText().isEmpty()) { nightDifferentialAddition = computation.processEmployeesNightDifferential(policyStr, holidayStr, Integer.parseInt(event.getText().trim()), getEmploymentWage()); item.getItemProperty("nd/min").setValue(utilities.roundOffToTwoDecimalPlaces( nightDifferentialAddition + (nightDifferentialAddition * premiumRate))); } else { item.getItemProperty("nd/min").setValue(0.0); } } }); List<Timekeeping> timekeepingListByRowData = timekeepingService.getTimekeepingRowData( utilities.convertDateFormat(getDateList().get(i).toString()), getPayrollId()); for (Timekeeping t : timekeepingListByRowData) { String policy; String holiday; if (!t.getPolicy().equals("null")) { policy = t.getPolicy(); } else { policy = ""; } if (!t.getHoliday().equals("null")) { holiday = t.getHoliday(); } else { holiday = ""; } premium.setValue(t.isPremium()); lates.setValue(t.getLates()); undertime.setValue(t.getUndertime()); overtime.setValue(t.getOvertime()); nightDifferential.setValue(t.getNightDifferential()); table.addItem( new Object[] { edit, utilities.convertDateFormat(getDateList().get(i).toString()), policy, holiday, premium, lates, undertime, overtime, nightDifferential, t.getLateDeduction(), t.getUndertimeDeduction(), t.getOvertimePaid(), t.getNightDifferentialPaid(), t.getLegalHolidayPaid(), t.getSpecialHolidayPaid(), t.getWorkingDayOffPaid(), t.getNonWorkingHolidayPaid(), t.getLatesLegalHolidayDeduction(), t.getLatesSpecialHolidayDeduction(), t.getLatesWorkingDayOffDeduction(), t.getUndertimeLegalHolidayDeduction(), t.getUndertimeSpecialHolidayDeduction(), t.getUndertimeWorkingDayOffDeduction() }, new Integer(i)); } } table.setPageLength(table.size()); for (Object listener : table.getListeners(ItemClickEvent.class)) { table.removeListener(ItemClickEvent.class, listener); } table.addListener(new ItemClickEvent.ItemClickListener() { @Override public void itemClick(ItemClickEvent event) { final Object itemId = event.getItemId(); final Item item = table.getItem(itemId); Boolean editRow = Boolean.valueOf(item.getItemProperty("edit").getValue().toString()); if (event.getPropertyId().equals("policy")) { if (editRow) { Window sub = new AttendancePolicyWindow(holidayList, item, getEmploymentWageEntry(), getEmploymentWage()); if (sub.getParent() == null) { getApplication().getMainWindow().addWindow(sub); } } else { getWindow().showNotification("Click Edit!", Window.Notification.TYPE_WARNING_MESSAGE); } } } }); vlayout.addComponent(table); final Button saveButton = new Button(); saveButton.setWidth("200px"); saveButton.setCaption("UPDATE ATTENDANCE DATA"); saveButton.setEnabled(UserAccessControl.isEditAttendance()); for (Object listener : saveButton.getListeners(Button.ClickListener.class)) { saveButton.removeListener(Button.ClickListener.class, listener); } GridLayout glayout = new GridLayout(2, 1); glayout.setSizeFull(); glayout.setSpacing(true); saveButton.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { try { Collection attendanceTableCollection = table.getContainerDataSource().getItemIds(); List<Timekeeping> attendanceList = new ArrayList<>(); Iterator iterator = attendanceTableCollection.iterator(); while (iterator.hasNext()) { String str = table.getItem(iterator.next()).toString(); String[] attStr = str.split(" "); List<String> tkeepList = new ArrayList<>(Arrays.asList(attStr)); Timekeeping t = new Timekeeping(); t.setAttendanceDate(utilities.parsingDate(tkeepList.get(1))); t.setPolicy(tkeepList.get(2)); t.setHoliday(tkeepList.get(3)); t.setPremium(utilities.convertStringToBoolean(tkeepList.get(4))); t.setLates(utilities.convertStringToDouble(tkeepList.get(5))); t.setUndertime(utilities.convertStringToDouble(tkeepList.get(6))); t.setOvertime(utilities.convertStringToDouble(tkeepList.get(7))); t.setNightDifferential(utilities.convertStringToDouble(tkeepList.get(8))); t.setLateDeduction(utilities.convertStringToDouble(tkeepList.get(9))); t.setUndertimeDeduction(utilities.convertStringToDouble(tkeepList.get(10))); t.setOvertimePaid(utilities.convertStringToDouble(tkeepList.get(11))); t.setNightDifferentialPaid(utilities.convertStringToDouble(tkeepList.get(12))); t.setLegalHolidayPaid(utilities.convertStringToDouble(tkeepList.get(13))); t.setSpecialHolidayPaid(utilities.convertStringToDouble(tkeepList.get(14))); t.setWorkingDayOffPaid(utilities.convertStringToDouble(tkeepList.get(15))); t.setNonWorkingHolidayPaid(utilities.convertStringToDouble(tkeepList.get(16))); t.setLatesLegalHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(17))); t.setLatesSpecialHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(18))); t.setLatesWorkingDayOffDeduction(utilities.convertStringToDouble(tkeepList.get(19))); t.setUndertimeLegalHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(20))); t.setUndertimeSpecialHolidayDeduction(utilities.convertStringToDouble(tkeepList.get(21))); t.setUndertimeWorkingDayOffDeduction(utilities.convertStringToDouble(tkeepList.get(22))); attendanceList.add(t); } ProcessPayrollComputation processPayroll = new ProcessPayrollComputation(getEmployeeId(), getBranchId()); processPayroll.initVariables(); processPayroll.initVariablesForComputation(attendanceList); boolean result = processPayroll.processPayrollComputation(payrollDate, payrollPeriod, attendancePeriodFrom, attendancePeriodTo, getPayrollId()); if (result) { close(); } else { getWindow().showNotification("SQL ERROR"); } } catch (Exception e) { e.getMessage(); } } }); glayout.addComponent(saveButton, 0, 0); glayout.setComponentAlignment(saveButton, Alignment.MIDDLE_LEFT); // vlayout.addComponent(saveButton); Button printButton = new Button("PRINT ATTENDANCE"); printButton.setWidth("200px"); printButton.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { OpenHrisReports reports = new OpenHrisReports(0, null); String fileName = "IndividualAttendanceReport_"; reports.deleteFile(fileName); Window reportWindow = new IndividualAttendanceReport(getPayrollId(), getApplication()); } }); glayout.addComponent(printButton, 1, 0); glayout.setComponentAlignment(printButton, Alignment.MIDDLE_RIGHT); vlayout.addComponent(glayout); return vlayout; }
From source file:com.peergreen.example.webconsole.extensions.NotifierExtension.java
License:Open Source License
@PostConstruct public void init() { HorizontalLayout row = new HorizontalLayout(); row.setWidth("100%"); Button simpleButton = new Button("Click to create a notification !"); final Random random = new Random(); simpleButton.addClickListener(new Button.ClickListener() { @Override/*from w w w . j av a2 s . c o m*/ public void buttonClick(Button.ClickEvent clickEvent) { notifierService.addNotification(MESSAGES[random.nextInt(MESSAGES.length)]); } }); simpleButton.setWidth("400px"); row.addComponent(simpleButton); row.setComponentAlignment(simpleButton, Alignment.BOTTOM_LEFT); final TextField customNotification = new TextField(); customNotification.setCaption("Write something and type enter"); final ShortcutListener addNotification = new ShortcutListener("Execute", ShortcutAction.KeyCode.ENTER, null) { @Override public void handleAction(Object o, Object o2) { notifierService.addNotification(customNotification.getValue()); customNotification.setValue(""); } }; customNotification.addFocusListener(new FieldEvents.FocusListener() { @Override public void focus(FieldEvents.FocusEvent focusEvent) { customNotification.addShortcutListener(addNotification); } }); customNotification.addBlurListener(new FieldEvents.BlurListener() { @Override public void blur(FieldEvents.BlurEvent blurEvent) { customNotification.removeShortcutListener(addNotification); } }); customNotification.setWidth("400px"); row.addComponent(customNotification); addComponent(row); setExpandRatio(row, 1.5f); }