Skip to content

kosotd/FieldSearchService

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FieldSearchService

Class for executing (so far oracle) queries.

Usage:

    val fieldSearchService = FieldSearchService.create(dataSource)
    val (count, _) = fieldSearchService.search(SearchTableDTO(), {
        it.searchObjectsCount()
    }, {
        println(it)
    })

    val (ids, _) = fieldSearchService.search(SearchTableDTO()) {
        it.searchObjects()
    }
    SearchTableDTO json example:
    {
        "name":"TABLE",
        "fields":[
            {"name":"FIELD1","operator":"=","value":"1","fieldType":"NUMBER", "priority":1},  
            {"name":"FIELD2","operator":"=","value":"qwe", "logicalStatement":"AND", "priority":1}
        ],
        "join_tables":[
            {
                "fields":[           
                    {"name":"FIELD3","operator":"=","value":"78","fieldType":"NUMBER", "logicalStatement":"OR", "priority":0}
                ],
                "join_column":"JOIN_TABLE_ID",
                "parent_join_column":"ID",
                "name":"JOIN_TABLE"
            }
        ]
    }
    => query:
        SELECT t.ID 
        FROM TABLE 
        JOIN JOIN_TABLE j0 ON j0.JOIN_TABLE_ID = t.ID 
        WHERE (t.FIELD1 = 1 AND (t.FIELD2 = 'qwe' OR j0.FIELD3 = 78))

Maven:

    <dependency>
      <groupId>com.kosotd</groupId>
      <artifactId>field-search-service</artifactId>
      <version>1.4</version>
    </dependency>
    ...
    <repository>
        <id>field-search-service-mvn-repo</id>
        <url>https://raw.github.com/kosotd/FieldSearchService/mvn-repo/</url>
    </repository>

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages