Skip to content

Commit 362514d

Browse files
committed
add logic on backend
1 parent 229c895 commit 362514d

3 files changed

Lines changed: 19 additions & 2 deletions

File tree

lib/public/views/DataPasses/ActiveColumns/dataPassesActiveColumns.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import { sumNotNulls } from '../../../utilities/formatting/sumNotNulls.js';
2020
import { h } from '/js/src/index.js';
2121
import { formatDataPassName } from '../format/formatDataPassName.js';
2222
import { formatDataPassStatusHistory } from '../format/formatStatusHistory.js';
23+
import { checkboxes } from '../../../components/Filters/common/filters/checkboxFilter.js';
2324

2425
/**
2526
* List of active columns for a generic data passes table
@@ -101,4 +102,10 @@ export const dataPassesActiveColumns = {
101102
sortable: true,
102103
classes: 'w-10',
103104
},
104-
};
105+
106+
nonPhysicsProductions: {
107+
name: 'include nonphysical productions',
108+
filter: (runsOverviewModel) => checkboxes(runsOverviewModel.filteringModel.get('runQualities').selectionModel),
109+
visible: false,
110+
}
111+
};

lib/server/controllers/dataPasses.controller.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ const listDataPassesHandler = async (req, res) => {
3333
lhcPeriodIds: Joi.array().items(Joi.number()),
3434
ids: Joi.array().items(Joi.number()),
3535
names: Joi.array().items(Joi.string()),
36+
includeTest: Joi.boolean(),
37+
includeDebug: Joi.boolean(),
3638
},
3739
page: PaginationDto,
3840
sort: DtoFactory.order(['id', 'name']),

lib/server/services/dataPasses/DataPassService.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,10 @@ class DataPassService {
115115
* @property {number[]} [filter.simulationPassIds] simulationPass identifier to filter with
116116
* @property {number[]} [filter.ids] data passes identifier to filter with
117117
* @property {string[]} [filter.names] data passes names to filter with
118+
* @property {boolean} [filter.includeTest]
119+
* @property {boolean} [filter.includeDebug]
118120
*/
119-
const { ids, names, lhcPeriodIds, simulationPassIds } = filter;
121+
const { ids, names, lhcPeriodIds, simulationPassIds, includeTest = false, includeDebug = false } = filter;
120122
if (lhcPeriodIds) {
121123
queryBuilder.where('lhcPeriodId').oneOf(...lhcPeriodIds);
122124
}
@@ -129,6 +131,12 @@ class DataPassService {
129131
if (names) {
130132
queryBuilder.where('name').oneOf(...names);
131133
}
134+
if (!includeTest) {
135+
queryBuilder.where('name').not().substring('test');
136+
}
137+
if (!includeDebug) {
138+
queryBuilder.where('name').not().substring('debug');
139+
}
132140
}
133141

134142
const { count, rows } = await DataPassRepository.findAndCountAll(queryBuilder);

0 commit comments

Comments
 (0)