Ignore:
Timestamp:
Jul 2, 2010, 10:16:19 AM (11 years ago)
Author:
vinlud
Message:

changes so far, not working yet

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/dbnp/query/SimpleQueryController.groovy

    r594 r642  
    1818import dbnp.studycapturing.Study
    1919import org.compass.core.engine.SearchEngineQueryParseException
     20import dbnp.rest.common.CommunicationManager
    2021
    2122class SimpleQueryController {
     
    3132    def pagesFlow = {
    3233
     34        // Starting simpleQuery flow, initialize variables
    3335        onStart {
    3436            println "Starting webflow simpleQuery"
    3537            flow.search_term            = null
    36             flow.page = 0
     38            flow.page                   = 0
    3739                        flow.pages = [
    3840                [title: 'Query'],
     
    4446                query {
    4547                        render(view: "/simpleQuery/mainPage")
     48
    4649            onRender {
    4750              println "Rendering mainPage"
     51              flow.operators              = ['>', '=', '<']
     52              flow.showFirstRowCompounds  = true
    4853              flow.species = Term.findAll()
    4954              flow.page = 1
     
    6469        searching {
    6570           action {
     71              println "Starting search..."
     72              def searchResult
     73              def searchGscfResult
     74              def searchSamResult
    6675
    67               println "Searching"
    68               println params
    69              
     76              // TODO: walk parameters, remove empty entries
     77
     78              // Map parameters
    7079              flow.search_term            = params.search_term
    7180              flow.search_sa_compounds    = params.sa_compound
     81              flow.search_sa_operators    = params.sa_operator
    7282              flow.search_sa_values       = params.sa_value
    7383              flow.search_tt_genepaths    = params.sa_genepath
    7484              flow.search_tt_regulations  = params.sa_regulation
    7585
    76               // Searchable plugin not yielding results yet
    77               /*
     86              // Check to see how parameters are being handled
     87              if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     88                println "string"
     89              } else {
     90                println "array of size " + flow.search_sa_compounds.length
     91              }
     92
     93              // Search the keyword with the Searchable plugin
    7894              try {
    79                 println searchableService.countHits("mouse")
     95                searchGscfResult = searchableService.search(flow.search_term)
    8096              } catch (SearchEngineQueryParseException ex) {
    81                 //return [parseException: true]
    8297                println ex
     98                return [parseException: true]
    8399              }
    84               */
    85100
    86               // Search for the term in Terms
    87               // results = searchableService.search(flow.search_term, type:"Term")
     101              // Map non-study objects to Studies
     102              // ... todo when the plugin works and I can see the output
    88103
    89               // Map the Terms to Studies
    90               // ...
     104              // Search in the SAM module
     105              println "checking compounds"
     106              if (flow.search_sa_compounds) {
     107                objComs = new CommunicationManager()
    91108
    92               // Save the results in the flow
    93               // flow.studies = results
     109                if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     110                  searchSamResult = objComs.getSAMStudies(flow.search_sa_compounds, flow.search_sa_values, flow.search_sa_operators)
     111                } else {
     112                  def tmpSamResult
     113                  flow.search_sa_compounds.each {
     114                    obj, i -> println " ${i}: ${obj}" // objComs.getSAMStudies()
     115                    tmpSamResult = objComs.getSAMStudies(flow.search_sa_compounds[i], flow.search_sa_values[i], flow.search_sa_operators[i])
     116
     117                    // Combine each search
     118                    // searchSamResult = Merge(searchSamResult, tmpSamResult)
     119                    searchSamResult = tmpSamResult
     120                  };
     121                }
     122              }
     123
     124             // Merge the results of all searches
     125             /*
     126             if (searchGscfResult.size() > 0) {
     127                searchResult = Merge(searchSamResult, searchGscfResult)
     128             }             
     129             */
    94130
    95131
    96 
    97               // As a usable result set we will use all studies for now
    98               flow.listStudies = Study.findAll()
     132             // Save the results in the flow
     133             flow.listStudies = searchGscfResult.results
    99134
    100135           }
     
    113148              flow.page = 2
    114149
     150              // TODO: Fix the showing of entered data, broke with plugin develeopment
    115151              if (flow.search_sa_compounds) {
    116152                if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     
    120156                }
    121157              }
    122 
    123               println flow.search_sa_compounds.getClass()
    124158            }
    125159
Note: See TracChangeset for help on using the changeset viewer.