Skip to content

Commit 769299d

Browse files
Validation testing feedback (#486)
- Frequency fk refactor - Procedure Schedule to Clinical Rounds - Remove Discard option from forms - Notes Report - Remove Label from Cases - Frequency lookup refactor - Location search
1 parent 7709e8c commit 769299d

16 files changed

Lines changed: 117 additions & 78 deletions

File tree

nirc_ehr/resources/queries/study/observation_order.query.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
<fk>
3030
<fkDbSchema>ehr_lookups</fkDbSchema>
3131
<fkTable>treatment_frequency</fkTable>
32-
<fkColumnName>rowid</fkColumnName>
32+
<fkColumnName>meaning</fkColumnName>
3333
</fk>
3434
</column>
3535
<column columnName="performedby">

nirc_ehr/resources/queries/study/prcOverdue.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ SELECT
77
timestampdiff('SQL_TSI_DAY', po.windowEnd, now()) as daysOverdue,
88
po.orderedby,
99
po.remark,
10+
po.caseid,
1011
po.objectid,
1112
CASE WHEN po.qcstate.label = 'Completed' THEN 'Completed' ELSE '' END as status
1213
FROM prc_order po

nirc_ehr/resources/queries/study/prcSchedule.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ SELECT
77
po.windowEnd,
88
po.orderedby,
99
po.remark,
10+
po.caseid,
1011
po.objectid,
1112
CASE WHEN po.qcstate.label = 'Completed' THEN 'Completed' ELSE '' END as status
1213
FROM prc_order po

nirc_ehr/resources/queries/study/treatmentSchedule.query.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
<fk>
4343
<fkDbSchema>ehr_lookups</fkDbSchema>
4444
<fkTable>treatment_frequency</fkTable>
45-
<fkColumnName>rowid</fkColumnName>
45+
<fkColumnName>meaning</fkColumnName>
4646
</fk>
4747
</column>
4848
<column columnName="remark">

nirc_ehr/resources/queries/study/treatment_order.query.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
<fk>
4949
<fkDbSchema>ehr_lookups</fkDbSchema>
5050
<fkTable>treatment_frequency</fkTable>
51-
<fkColumnName>rowid</fkColumnName>
51+
<fkColumnName>meaning</fkColumnName>
5252
<filters>
5353
<filterGroup>
5454
<filter column="active" operator="eq" value="true"/> <!-- filter applied only during insert and update, will not be used during grid view -->

nirc_ehr/resources/referenceStudy/study/datasets/datasets_metadata.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1459,7 +1459,7 @@
14591459
<datatype>integer</datatype>
14601460
</column>
14611461
<column columnName="frequency">
1462-
<datatype>integer</datatype>
1462+
<datatype>varchar</datatype>
14631463
</column>
14641464
<column columnName="type">
14651465
<datatype>varchar</datatype>

nirc_ehr/resources/reports/additionalReports.tsv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ foster Reproductive Management query Fostering TRUE study foster FALSE FALSE
88
projects Colony Management query Project Assignment TRUE study assignment FALSE FALSE qcstate/publicdata This is for project assignments
99
chemistry Clinical query Chemistry TRUE study chemistryResults FALSE FALSE qcstate/publicdata This is for chemistry results
1010
alias Colony Management query Aliases true study demographicsAliases false false qcstate/publicdata This report shows the animal aliases
11+
notes Colony Management query Notes true study notes false false qcstate/publicdata This report shows the animal notes
1112
activeClinTreatmentOrders Clinical query Active Clinical Medication Orders true study treatment_order Clinical Active Treatment Orders date false false qcstate/publicdata This report contains the treatment orders entered for each animal
1213
activeBehaviorTreatmentOrders Behavior query Active Behavior Medication Orders true study treatment_order Behavior Active Treatment Orders date false false qcstate/publicdata This report contains the treatment orders entered for each animal
1314
allTreatments Clinical query All Treatment Orders true study treatment_order false false qcstate/publicdata This report shows all treatment orders

nirc_ehr/resources/scripts/nirc_triggers.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ exports.init = function (EHR) {
1919
EHR.Server.TriggerManager.unregisterAllHandlersForQueryNameAndEvent('study', 'blood', EHR.Server.TriggerManager.Events.BEFORE_UPSERT);
2020
EHR.Server.TriggerManager.unregisterAllHandlersForQueryNameAndEvent('study', 'cases', EHR.Server.TriggerManager.Events.AFTER_UPSERT);
2121
EHR.Server.TriggerManager.unregisterAllHandlersForQueryNameAndEvent('study', 'cases', EHR.Server.TriggerManager.Events.AFTER_DELETE);
22+
23+
helper.setScriptOptions({
24+
datasetsToClose: ['assignment', 'protocolAssignment' , 'housing', 'treatment_order', 'observation_order', 'cases', 'pairings', 'exemptions', 'flags']
25+
});
2226
});
2327

2428
EHR.Server.TriggerManager.registerHandlerForQuery(EHR.Server.TriggerManager.Events.INIT, 'study', 'assignment', function(event, helper) {

nirc_ehr/resources/views/animalHistory.html

Lines changed: 51 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,57 @@
4444
xtype: 'ehr-locationfiltertype',
4545
inputValue: EHR.panel.LocationFilterType.filterName,
4646
label: EHR.panel.LocationFilterType.label,
47-
searchOptions: {
48-
area: true,
49-
room: true,
50-
cage: false
51-
}
47+
getItems: function() {
48+
var toAdd = [], searchItems = [];
49+
var ctx = this.filterContext;
50+
51+
toAdd.push({
52+
width: 200,
53+
html: 'Search By Location:<br>'
54+
+ '<div style="width: 175px;"></div>'
55+
});
56+
57+
searchItems.push({
58+
xtype: 'ehr-simplecombo',
59+
itemId: 'cageField',
60+
fieldLabel: 'Cage',
61+
name: 'cageField',
62+
value: ctx.cage,
63+
schemaName: 'ehr_lookups',
64+
queryName: 'cage',
65+
displayField: 'cage',
66+
valueField: 'location'
67+
68+
})
69+
70+
toAdd.push({
71+
xtype: 'panel',
72+
defaults: {
73+
border: false,
74+
width: 200,
75+
labelWidth: 90,
76+
labelAlign: 'top'
77+
},
78+
keys: [{
79+
key: Ext4.EventObject.ENTER,
80+
handler: this.tabbedReportPanel.onSubmit,
81+
scope: this.tabbedReportPanel
82+
}],
83+
items: searchItems
84+
});
85+
86+
return toAdd;
87+
},
88+
isValid: function(){
89+
if(!this.down('#cageField').getValue()){
90+
return false;
91+
}
92+
93+
return true;
94+
},
95+
getTitle: function(){
96+
return 'Cage: ' + this.down('#cageField').getDisplayValue();
97+
},
5298
},{
5399
xtype: 'ldk-nofiltersfiltertype',
54100
inputValue: LDK.panel.NoFiltersFilterType.filterName,

nirc_ehr/resources/web/nirc_ehr/buttons/addClinicalObsButton.js

Lines changed: 23 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
EHR.DataEntryUtils.registerGridButton('NIRC_DAILY_CLINICAL_OBS', function(config){
33
return Ext4.Object.merge({
44
text: 'Daily Observations',
5-
tooltip: 'Click to delete selected rows',
5+
tooltip: 'Click to add daily observations',
66
handler: function(btn) {
77
LABKEY.Query.selectRows({
88
schemaName: 'ehr',
@@ -40,58 +40,39 @@ EHR.DataEntryUtils.registerGridButton('NIRC_DAILY_CLINICAL_OBS', function(config
4040
EHR.DataEntryUtils.registerGridButton('NIRC_DAILY_CLINICAL_OBS_ORDERS', function(config){
4141
return Ext4.Object.merge({
4242
text: 'Daily Observations',
43-
tooltip: 'Click to delete selected rows',
43+
tooltip: 'Click to add daily observation orders',
4444
handler: function(btn) {
45+
4546
LABKEY.Query.selectRows({
46-
schemaName: 'ehr_lookups',
47-
queryName: 'treatment_frequency',
48-
columns: 'rowid',
49-
filterArray: [LABKEY.Filter.create('meaning', 'SID', LABKEY.Filter.Types.EQUAL)],
50-
scope: this,
47+
schemaName: 'ehr',
48+
queryName: 'observation_types',
5149
success: function (results) {
50+
var grid = btn.up('gridpanel');
5251
if (results?.rows?.length > 0) {
53-
const sidRowId = results.rows[0].rowid;
54-
LABKEY.Query.selectRows({
55-
schemaName: 'ehr',
56-
queryName: 'observation_types',
57-
success: function (results) {
58-
var grid = btn.up('gridpanel');
59-
if (results?.rows?.length > 0) {
60-
for (var i = 0; i < results.rows.length; i++) {
61-
var row = results.rows[i];
62-
if (row.value === 'Verified Id?' || row.value === 'Stool' || row.value === 'Activity' ||
63-
row.value === 'Appetite' || row.value === 'Hydration' || row.value === 'BCS') {
52+
for (var i = 0; i < results.rows.length; i++) {
53+
var row = results.rows[i];
54+
if (row.value === 'Verified Id?' || row.value === 'Stool' || row.value === 'Activity' ||
55+
row.value === 'Appetite' || row.value === 'Hydration' || row.value === 'BCS') {
6456

65-
var newRecord = grid.store.createModel({});
66-
newRecord.set({
67-
category: row.value,
68-
frequency: sidRowId
69-
});
70-
grid.store.add(newRecord);
71-
}
72-
}
73-
}
74-
else {
75-
Ext4.Msg.alert('Unable to load observation types. Please contact the system administrator.');
76-
}
77-
},
78-
failure: function (error) {
79-
Ext4.Msg.alert('Unable to load observation types. Please contact the system administrator.');
80-
console.log('Error loading observation types: ' + error);
81-
},
82-
scope: this
83-
});
57+
var newRecord = grid.store.createModel({});
58+
newRecord.set({
59+
category: row.value,
60+
frequency: 'SID'
61+
});
62+
grid.store.add(newRecord);
63+
}
64+
}
8465
}
8566
else {
86-
Ext4.Msg.alert('Unable to load treatment frequencies. Please contact the system administrator.');
67+
Ext4.Msg.alert('Unable to load observation types. Please contact the system administrator.');
8768
}
8869
},
8970
failure: function (error) {
90-
Ext4.Msg.alert('Unable to load treatment frequencies. Please contact the system administrator.');
91-
console.log('Error loading treatment frequencies: ' + error);
92-
}
71+
Ext4.Msg.alert('Unable to load observation types. Please contact the system administrator.');
72+
console.log('Error loading observation types: ' + error);
73+
},
74+
scope: this
9375
});
94-
9576
}
9677
}, config);
9778
});

0 commit comments

Comments
 (0)