Если все фильтры отключены, они не учитываются.

This commit is contained in:
2023-12-26 19:41:11 +03:00
parent ce31d5dae2
commit 7030e13238
4 changed files with 20 additions and 11 deletions

3
.idea/workspace.xml generated
View File

@@ -11,9 +11,6 @@
<change beforePath="$PROJECT_DIR$/src/Common/Database/DBObjectFilter.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/DBObjectFilter.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/DataSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/DataSet.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/DataSetFilter.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/DataSetFilter.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMRunTasksSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMRunTasksSet.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -53,5 +53,8 @@ public abstract class DBObjectFilter<D extends DBObject> {
public void Refresh() {
menuItem.setText(description + " " + Utils.RBrackets(count));
}
public boolean isActive() {
return active;
}
//--
}

View File

@@ -274,7 +274,6 @@ public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
filter.Refresh();
}
public boolean applyFilters(D object) {
//todo добавить ситуацию когда все фильтры отменены
for (DataSetFilter<D> filter : filters) {
if (!filter.Validate(object))
return false;

View File

@@ -25,13 +25,6 @@ public abstract class DataSetFilter<D extends DBObject> {
for (DBObjectFilter filter : filters)
filter.setActive(flag);
}
public boolean Validate(D object) {
boolean res = false;
for (DBObjectFilter<D> filter : filters)
if (filter.Validate(object))
res |= true;
return res;
}
public abstract void fill();
public void Drop() {
for (DBObjectFilter<D> filter : filters)
@@ -41,4 +34,21 @@ public abstract class DataSetFilter<D extends DBObject> {
for (DBObjectFilter<D> filter : filters)
filter.Refresh();
}
public boolean isActive(){
for (DBObjectFilter<D> filter: filters){
if (filter.isActive())
return true;
}
return false;
}
public boolean Validate(D object) {
if (!isActive()){
return true;
}
boolean res = false;
for (DBObjectFilter<D> filter : filters)
if (filter.Validate(object))
res |= true;
return res;
}
}