Apply filter when entering project details view
This will allow to get a already filtered WBS if you have been inside the project before and you have applied some filters, as the filter is already stored in the session. FEA: ItEr77S15FilteringEnhancements
This commit is contained in:
parent
75ecc38664
commit
210c111b62
2 changed files with 25 additions and 7 deletions
|
|
@ -51,7 +51,6 @@ import org.libreplan.business.orders.entities.Order.SchedulingMode;
|
|||
import org.libreplan.business.orders.entities.OrderElement;
|
||||
import org.libreplan.business.orders.entities.OrderStatusEnum;
|
||||
import org.libreplan.business.planner.entities.PositionConstraintType;
|
||||
import org.libreplan.business.planner.entities.TaskElement;
|
||||
import org.libreplan.business.resources.entities.Criterion;
|
||||
import org.libreplan.business.templates.entities.OrderTemplate;
|
||||
import org.libreplan.business.users.entities.User;
|
||||
|
|
@ -68,7 +67,6 @@ import org.libreplan.web.common.components.bandboxsearch.BandboxMultipleSearch;
|
|||
import org.libreplan.web.common.components.bandboxsearch.BandboxSearch;
|
||||
import org.libreplan.web.common.components.finders.FilterPair;
|
||||
import org.libreplan.web.common.components.finders.OrderFilterEnum;
|
||||
import org.libreplan.web.common.components.finders.TaskElementFilterEnum;
|
||||
import org.libreplan.web.common.components.finders.TaskGroupFilterEnum;
|
||||
import org.libreplan.web.orders.criterionrequirements.AssignedCriterionRequirementToOrderElementController;
|
||||
import org.libreplan.web.orders.labels.AssignedLabelsToOrderElementController;
|
||||
|
|
@ -543,7 +541,7 @@ public class OrderCRUDController extends GenericForwardComposer {
|
|||
|
||||
private void reloadTree(TreeComponent orderElementsTree) {
|
||||
final Tree tree = (Tree) orderElementsTree.getFellowIfAny("tree");
|
||||
tree.setModel(orderElementTreeController.getTreeModel());
|
||||
tree.setModel(orderElementTreeController.getFilteredTreeModel());
|
||||
tree.addEventListener(Events.ON_SELECT, new EventListener() {
|
||||
@Override
|
||||
public void onEvent(Event event) {
|
||||
|
|
|
|||
|
|
@ -36,14 +36,11 @@ import java.util.Set;
|
|||
import javax.annotation.Resource;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.aspectj.weaver.ast.Instanceof;
|
||||
import org.libreplan.business.labels.entities.Label;
|
||||
import org.libreplan.business.orders.entities.Order;
|
||||
import org.libreplan.business.orders.entities.OrderElement;
|
||||
import org.libreplan.business.orders.entities.OrderLine;
|
||||
import org.libreplan.business.orders.entities.OrderLineGroup;
|
||||
import org.libreplan.business.orders.entities.SchedulingState;
|
||||
import org.libreplan.business.planner.entities.TaskElement;
|
||||
import org.libreplan.business.requirements.entities.CriterionRequirement;
|
||||
import org.libreplan.business.templates.entities.OrderElementTemplate;
|
||||
import org.libreplan.business.users.entities.UserRole;
|
||||
|
|
@ -54,7 +51,6 @@ import org.libreplan.web.common.Util;
|
|||
import org.libreplan.web.common.components.bandboxsearch.BandboxMultipleSearch;
|
||||
import org.libreplan.web.common.components.bandboxsearch.BandboxSearch;
|
||||
import org.libreplan.web.common.components.finders.FilterPair;
|
||||
import org.libreplan.web.common.components.finders.IFilterEnum;
|
||||
import org.libreplan.web.common.components.finders.OrderElementFilterEnum;
|
||||
import org.libreplan.web.common.components.finders.TaskElementFilterEnum;
|
||||
import org.libreplan.web.orders.assigntemplates.TemplateFinderPopup;
|
||||
|
|
@ -76,6 +72,7 @@ import org.zkoss.zul.Datebox;
|
|||
import org.zkoss.zul.Popup;
|
||||
import org.zkoss.zul.Tab;
|
||||
import org.zkoss.zul.Textbox;
|
||||
import org.zkoss.zul.TreeModel;
|
||||
import org.zkoss.zul.Treechildren;
|
||||
import org.zkoss.zul.Treeitem;
|
||||
import org.zkoss.zul.Vbox;
|
||||
|
|
@ -613,6 +610,29 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
name, ignoreLabelsInheritance);
|
||||
}
|
||||
|
||||
public TreeModel getFilteredTreeModel() {
|
||||
OrderElementTreeModel filteredModel = getFilteredModel();
|
||||
if (filteredModel == null) {
|
||||
return null;
|
||||
}
|
||||
return filteredModel.asTree();
|
||||
}
|
||||
|
||||
public OrderElementTreeModel getFilteredModel() {
|
||||
if (orderModel == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
OrderElementPredicate predicate = createPredicate();
|
||||
this.predicate = predicate;
|
||||
|
||||
if (predicate != null) {
|
||||
return orderModel.getOrderElementsFilteredByPredicate(predicate);
|
||||
} else {
|
||||
return orderModel.getOrderElementTreeModel();
|
||||
}
|
||||
}
|
||||
|
||||
private void filterByPredicate(OrderElementPredicate predicate) {
|
||||
OrderElementTreeModel orderElementTreeModel = orderModel
|
||||
.getOrderElementsFilteredByPredicate(predicate);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue