Changeset 1583
- Timestamp:
- Mar 2, 2011, 5:40:25 PM (12 years ago)
- Location:
- trunk/grails-app
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/controllers/dbnp/studycapturing/AssayController.groovy
r1576 r1583 150 150 flash.errorMessage = e.message 151 151 redirect action: 'selectAssay' 152 return ;152 return 153 153 154 154 } … … 159 159 flash.assayId = params.assayId 160 160 161 [fieldMap: fieldMap, measurementTokens: measurementTokens *.name]161 [fieldMap: fieldMap, measurementTokens: measurementTokens.name] 162 162 } 163 163 … … 170 170 171 171 def fieldMap = flash.fieldMap 172 def measurementTokens = flash.measurementTokens173 172 174 173 def fieldMapSelection = [:] … … 199 198 if (params."cat_4" == 'on') { 200 199 201 measurementTokensSelection = params.measurementToken == 'null' ? measurementTokens : [ name: params.measurementToken] 200 def measurementToken = params.measurementToken 201 202 if (measurementToken) { 203 204 if (measurementToken instanceof String) 205 measurementTokensSelection = [[name: measurementToken]] 206 else 207 measurementTokensSelection = measurementToken.collect{[name: it]} 208 209 } else { 210 measurementTokensSelection = flash.measurementTokens 211 } 202 212 203 213 } -
trunk/grails-app/services/dbnp/studycapturing/AssayService.groovy
r1581 r1583 33 33 def collectAssayTemplateFields(assay) throws Exception { 34 34 35 def getUsedTemplateField Names = { templateEntities ->35 def getUsedTemplateFields = { templateEntities -> 36 36 37 37 // gather all unique and non null template fields that haves values … … 40 40 field && templateEntities.any { it.fieldExists(field.name) && it.getFieldValue(field.name) } 41 41 42 } *.name42 }.collect{[name: it.name, comment: it.comment]} 43 43 44 44 } … … 53 53 def samples = assay.samples 54 54 55 [ 'Subject Data' : getUsedTemplateField Names( samples*."parentSubject".unique() ),56 'Sampling Event Data' : getUsedTemplateField Names( samples*."parentEvent".unique() ),57 'Sample Data' : getUsedTemplateField Names( samples ),58 'Event Group' : [ 'name'],55 [ 'Subject Data' : getUsedTemplateFields( samples*."parentSubject".unique() ), 56 'Sampling Event Data' : getUsedTemplateFields( samples*."parentEvent".unique() ), 57 'Sample Data' : getUsedTemplateFields( samples ), 58 'Event Group' : [[name: 'name', comment: 'Name of Event Group']], 59 59 'Module Measurement Data': requestModuleMeasurementNames(assay) 60 60 ] … … 172 172 } 173 173 174 [ 'Subject Data' : getFieldValues(samples, fieldMap['Subject Data'] , 'parentSubject'),175 'Sampling Event Data' : getFieldValues(samples, fieldMap['Sampling Event Data'] , 'parentEvent'),176 'Sample Data' : getFieldValues(samples, fieldMap['Sample Data'] ),174 [ 'Subject Data' : getFieldValues(samples, fieldMap['Subject Data']*.name, 'parentSubject'), 175 'Sampling Event Data' : getFieldValues(samples, fieldMap['Sampling Event Data']*.name, 'parentEvent'), 176 'Sample Data' : getFieldValues(samples, fieldMap['Sample Data']*.name), 177 177 'Event Group' : eventFieldMap, 178 'Module Measurement Data': measurementTokens ? requestModuleMeasurements(assay, measurementTokens) : [:]178 'Module Measurement Data': measurementTokens*.name ? requestModuleMeasurements(assay, measurementTokens) : [:] 179 179 ] 180 180 } -
trunk/grails-app/views/assay/compileExportData.gsp
r1581 r1583 13 13 </head> 14 14 <body> 15 16 <h1>Below you see a preview of the resulting Excel file, click OK to generate it</h1> 15 17 16 18 <table> -
trunk/grails-app/views/assay/selectAssay.gsp
r1559 r1583 33 33 ${flash.errorMessage} 34 34 </div> 35 %{--<g:form name="assaySelect" action="exportAssayAsExcel">--}% 35 36 <h1>Select the assay you want to export data from</h1> 37 36 38 <g:form name="assaySelect" action="selectFields"> 37 39 <g:select optionKey="id" optionValue="title" name="studyId" from="${userStudies}" id="study" -
trunk/grails-app/views/assay/selectFields.gsp
r1581 r1583 11 11 <meta name="layout" content="main" /> 12 12 <title>Select assay fields</title> 13 <script type="text/javascript" src="${resource(dir: 'js', file: 'tooltips.js', plugin: 'gdt')}"></script> 14 <script type="text/javascript" src="${resource(dir: 'js', file: 'jquery.qtip-1.0.0-rc3.min.js', plugin: 'gdt')}"></script> 15 <link rel="stylesheet" href="${resource(dir: 'css', file: 'templates.css')}"/> 13 16 14 17 <style type="text/css"> 15 16 .selectCategoryDiv{ 17 float: left; 18 width: auto; 18 .category{ 19 margin-left: 5px; 19 20 } 20 21 21 .selectFieldDiv{ 22 .field{ 23 margin-left: 20px; 22 24 } 23 25 24 .clear {clear: both;} 26 .element .helpIcon{ 27 margin-top: 0; 28 } 29 </style> 25 30 26 </style> 31 <script type="text/javascript"> 32 $(document).ready(function() { 33 attachHelpTooltips(); 34 }) 35 </script> 27 36 </head> 28 37 <body> 29 38 <div> 39 40 <h1>Select the columns that you want to be included in the resulting Excel file</h1> 41 30 42 <g:form name="fieldSelectForm" action="compileExportData"> 31 <div class="selectCategoryDiv">32 43 33 <g:set var="catNum" value="${0}"/> 44 <g:set var="catNum" value="${0}"/> 45 <g:each in="${fieldMap}" var="entry"> 34 46 35 <g:each in="${fieldMap + ['Measurement tokens':'']}">47 <assayExporter:categorySelector category="${entry.key}" ref="cat_${catNum}"/> 36 48 37 <assay:categorySelector category="${it.key}" ref="cat_${catNum}"/><br/> 49 <assayExporter:fieldSelectors ref="cat_${catNum}" fields="${entry.value}"/> 50 38 51 <g:set var="catNum" value="${catNum + 1}"/> 39 52 40 53 </g:each> 41 54 42 </div> 43 44 <div class="selectFieldDiv"> 45 46 <g:set var="catNum" value="${0}"/> 47 48 <g:each in="${fieldMap}"> 49 50 <assay:fieldSelector ref="cat_${catNum}" fieldNames="${it.value}"/><br/> 51 <g:set var="catNum" value="${catNum + 1}"/> 52 53 </g:each> 54 55 <g:select name="measurementToken" id="measurementToken" from="${measurementTokens}" noSelection="${[null:'All tokens']}"/> 56 57 </div> 58 59 <div class="clear"></div> 60 55 <assayExporter:categorySelector category="Measurements" ref="cat_${catNum}"/> 56 <g:select name="measurementToken" id="measurementToken" from="${measurementTokens}" class="field" multiple="true"/> 57 <br /><br /> 61 58 <g:submitButton name="submit" value="Submit"/> 62 59 63 60 </g:form> 61 64 62 </div> 65 63 </body>
Note: See TracChangeset
for help on using the changeset viewer.