jlawyerorg / j-lawyer-org

Main project containing all submodules for building an entire j-lawyer.org system. Submit issues (bugs, enhancement requests) here.
https://www.j-lawyer.org
GNU Affero General Public License v3.0
51 stars 23 forks source link

Suchen nach Akten über Tags ohne Suchtext zu langsam #432

Closed Mucki526 closed 4 years ago

Mucki526 commented 4 years ago

Die reine Suche nach Akten (Buchstabensuche) funktioniert.

Aber die Suche nach Akten über Tags sucht sich in der 1.10 bei uns "einen Wolf". Bsp.: Ich suche die Akten, in denen der Tag "offene Kostennote" gesetzt ist. Aktiviere ich den entsprechenden Tag (der linke Stern für die Aktentags), gehe in die Suchzeile und klicke Enter dreht sich nur noch die "Eieruhr" am Mauszeiger, gefunden wird trotz gesetzter Tags nichts. Es kommt irgendwann der Timeout "Aktensuche konnte nicht ausgeführt werden".

In der letzten Version des Clients funktionierte das schnell und gut. Ich verwaltete meine Debitoren auf diese Weise. ...

j-dimension commented 4 years ago
select distinct(cases.id) from cases 
    left join case_tags on case_tags.archiveFileKey=cases.id 
                        left join case_documents on case_documents.archiveFileKey=cases.id 
                        left join document_tags on document_tags.documentKey=case_documents.id
                        where cases.archived=0 and (ucase(cases.name) like '%%' or ucase(fileNumber) like '%%' or ucase(reason) like '%%' or ucase(custom1) like '%%' or ucase(custom2) like '%%' or ucase(custom3) like '%%' or ucase(subjectField) like '%%')
                         and (
                        (case_tags.tagName in ( 'schnuffel'))  
                        or (document_tags.tagName in ('schnuffel'))
                        )
j-dimension commented 4 years ago
select distinct case_tags.archiveFileKey, case_tags.tagName, document_tags.tagName 
from case_tags, case_documents, document_tags 
where case_tags.archiveFileKey in (

    select cases.id from cases, case_tags 
    where (ucase(cases.name) like '%%' or ucase(fileNumber) like '%%' or ucase(reason) like '%%' or ucase(custom1) like '%%' or ucase(custom2) like '%%' or ucase(custom3) like '%%' or ucase(subjectField) like '%%') and archived=0 and ((case_tags.tagName in ('schnuffel') and case_tags.archiveFileKey=cases.id) or (document_tags.tagName in ('schnuffel') and document_tags.documentKey=case_documents.id and case_documents.archiveFileKey=cases.id)))