mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-11-03 03:16:10 -06:00 
			
		
		
		
	Enhancement: document link field fixes (#5020)
* Implement more efficient getFew for document retrieval * Filter out parent document ID & already-selected documents * Clip very long document titles
This commit is contained in:
		@@ -96,6 +96,21 @@ export const commonAbstractPaperlessServiceTests = (endpoint, ServiceClass) => {
 | 
			
		||||
      expect(req.request.method).toEqual('PATCH')
 | 
			
		||||
      req.flush([])
 | 
			
		||||
    })
 | 
			
		||||
 | 
			
		||||
    test('should call appropriate api endpoint for get a few objects', () => {
 | 
			
		||||
      subscription = service.getFew([1, 2, 3]).subscribe()
 | 
			
		||||
      const req = httpTestingController.expectOne(
 | 
			
		||||
        `${environment.apiBaseUrl}${endpoint}/?id__in=1,2,3`
 | 
			
		||||
      )
 | 
			
		||||
      expect(req.request.method).toEqual('GET')
 | 
			
		||||
      req.flush([])
 | 
			
		||||
      subscription = service.getFew([4, 5, 6], { foo: 'bar' }).subscribe()
 | 
			
		||||
      const req2 = httpTestingController.expectOne(
 | 
			
		||||
        `${environment.apiBaseUrl}${endpoint}/?id__in=4,5,6&foo=bar`
 | 
			
		||||
      )
 | 
			
		||||
      expect(req2.request.method).toEqual('GET')
 | 
			
		||||
      req2.flush([])
 | 
			
		||||
    })
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  beforeEach(() => {
 | 
			
		||||
 
 | 
			
		||||
@@ -91,6 +91,19 @@ export abstract class AbstractPaperlessService<T extends ObjectWithId> {
 | 
			
		||||
    )
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  getFew(ids: number[], extraParams?): Observable<Results<T>> {
 | 
			
		||||
    let httpParams = new HttpParams()
 | 
			
		||||
    httpParams = httpParams.set('id__in', ids.join(','))
 | 
			
		||||
    for (let extraParamKey in extraParams) {
 | 
			
		||||
      if (extraParams[extraParamKey] != null) {
 | 
			
		||||
        httpParams = httpParams.set(extraParamKey, extraParams[extraParamKey])
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    return this.http.get<Results<T>>(this.getResourceUrl(), {
 | 
			
		||||
      params: httpParams,
 | 
			
		||||
    })
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  clearCache() {
 | 
			
		||||
    this._listAll = null
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user