Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package admin.mangedbean;
- import admin.dao.service.SharableService;
- import admin.dao.service.StateService;
- import java.math.BigDecimal;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import java.util.Map;
- import javax.annotation.PostConstruct;
- import javax.faces.application.FacesMessage;
- import javax.faces.bean.ManagedBean;
- import javax.faces.bean.RequestScoped;
- import javax.faces.context.FacesContext;
- import javax.faces.event.ActionEvent;
- import model.Country;
- import model.StateTable;
- import org.primefaces.component.datatable.DataTable;
- import org.primefaces.event.CellEditEvent;
- import org.primefaces.event.RowEditEvent;
- import org.primefaces.event.SelectEvent;
- import org.primefaces.model.LazyDataModel;
- import org.primefaces.model.SelectableDataModel;
- import org.primefaces.model.SortOrder;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- @Controller
- @ManagedBean
- @RequestScoped
- public final class StateManagedBean extends LazyDataModel<StateTable>
- {
- @Autowired
- private StateService stateService;
- @Autowired
- private SharableService sharableService;
- private final List<StateTable>list;
- private List<StateTable> selectedValues;
- private List<StateTable> filteredValues;
- private List<Country>countries;
- private Long countryId;
- private Long id;
- public StateManagedBean()
- {
- list=null;
- stateService=null;
- }
- @PostConstruct
- public void init()
- {
- countries=sharableService.getCountryList();
- }
- public List<Country> getCountries()
- {
- if(countries==null)
- {
- countries=sharableService.getCountryList();
- }
- return countries;
- }
- public Long getId()
- {
- return id;
- }
- public void setId(Long id)
- {
- this.id = id;
- }
- public StateService getStateService() {
- return stateService;
- }
- public void setStateService(StateService stateService) {
- this.stateService = stateService;
- }
- @Override
- public StateTable getRowData(String rowKey)
- {
- if(list==null)
- {
- return null;
- }
- for(StateTable stateTable:list)
- {
- if(stateTable.getStateId().toString().equals(rowKey))
- {
- return stateTable;
- }
- }
- return null;
- }
- @Override
- public Object getRowKey(StateTable stateTable)
- {
- return stateTable.getStateId();
- }
- public List<StateTable> getSelectedValues()
- {
- return selectedValues;
- }
- public void setSelectedValues(List<StateTable> selectedValues)
- {
- this.selectedValues = selectedValues;
- }
- public List<StateTable> getFilteredValues()
- {
- return filteredValues;
- }
- public void setFilteredValues(List<StateTable> filteredValues)
- {
- this.filteredValues = filteredValues;
- }
- public int currentPage(int first, int pageSize)
- {
- return first<=0||pageSize<=0?1:new BigDecimal(first+1).divide(new BigDecimal(pageSize), 0, BigDecimal.ROUND_CEILING).intValue();
- }
- @Override
- public void setRowIndex(int rowIndex)
- {
- int pageSize = getPageSize();
- if(rowIndex==-1||pageSize==0)
- {
- super.setRowIndex(-1);
- }
- else
- {
- super.setRowIndex(rowIndex%pageSize);
- }
- }
- public void setSelectedValue(List<StateTable> stateTables)
- {
- for(StateTable stateTable:stateTables)
- {
- if(id.equals(stateTable.getStateId()))
- {
- selectedValues=new ArrayList<StateTable>();
- selectedValues.add(stateTable);
- break;
- }
- }
- }
- @Override
- public List<StateTable> load(int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, String> filters)
- {
- int rowCount = stateService.rowCount().intValue();
- int currentPage = currentPage(first, pageSize);
- if(rowCount<=currentPage*pageSize-pageSize)
- {
- first-=pageSize;
- }
- if(pageSize<=0)
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_FATAL, "Error!", "The page size supplied is incorrect. The current operation has been rejected.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- return Collections.emptyList();
- }
- int currentRow=0;
- if(id!=null&&id>0&&stateService.checkId(id))
- {
- currentRow=(int) (stateService.getCurrentRow(id)-1);
- final DataTable dataTable = (DataTable) FacesContext.getCurrentInstance().getViewRoot().findComponent("form:dataTable");
- first=currentRow-(currentRow%pageSize);
- dataTable.setFirst(first);
- }
- if(filters!=null&&!filters.isEmpty())
- {
- List<StateTable> stateTables = stateService.getList(first, pageSize, sortOrder, sortField, filters);
- setRowCount(stateTables.size());
- if(id!=null)
- {
- setSelectedValue(stateTables);
- }
- id=null;
- return stateTables;
- }
- setRowCount(rowCount);
- List<StateTable> stateTables = stateService.getList(first, pageSize, sortOrder, sortField);
- if(id!=null)
- {
- setSelectedValue(stateTables);
- }
- id=null;
- return stateTables;
- }
- public void deleteMultiple(ActionEvent actionEvent)
- {
- int size=selectedValues.size();
- if(size<=0)
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Message", "Please select the rows you want to delete.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- else if(actionEvent.getComponent().getId().equals("confirmDeleteMultiple")&&selectedValues!=null&&!selectedValues.isEmpty())
- {
- stateService.delete(selectedValues);
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Sucess!", size+(size==1?" row has":" rows have")+" been deleted successfully as you stated.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- else
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_FATAL, "System Error", "Please try again later.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- }
- public void deleteSingle(ActionEvent actionEvent)
- {
- if(actionEvent.getComponent().getId().equals("confirmDeleteSingle")&&selectedValues!=null&&!selectedValues.isEmpty())
- {
- stateService.delete(selectedValues.get(0).getStateId());
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Sucess!", "The row with the id "+selectedValues.get(0).getStateId()+" has been deleted successfully as you stated.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- else
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_FATAL, "System Error", "Please try again later.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- }
- public Long getCountryId()
- {
- return countryId;
- }
- public void setCountryId(Long countryId)
- {
- this.countryId = countryId;
- }
- public void onRowEdit(RowEditEvent event)
- {
- StateTable stateTable=(StateTable) event.getObject();
- if(stateService.update(stateTable))
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Success : ", "The row with the id "+stateTable.getStateId()+" has been updated successfully.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- }
- public void onRowEditCancel(RowEditEvent event)
- {
- StateTable stateTable=(StateTable) event.getObject();
- if(stateTable!=null)
- {
- FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_WARN, "Warning : ", "The changes to the row with the id "+stateTable.getStateId()+" were not made, since you have chosen to cancel.");
- FacesContext.getCurrentInstance().addMessage(null, message);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement