From d0094c13450a0b3a8f628ffc3b9dd921995f0e89 Mon Sep 17 00:00:00 2001 From: alexdbondoc17 Date: Wed, 9 Mar 2022 00:26:26 +0000 Subject: [PATCH] Enhanc`searchable` in `annotations` --- app/models/annotation.rb | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/app/models/annotation.rb b/app/models/annotation.rb index 1f64a95..acf06cb 100644 --- a/app/models/annotation.rb +++ b/app/models/annotation.rb @@ -35,9 +35,17 @@ class Annotation < ApplicationRecord integer :document_id integer :doctrine_id - join(:library_rank, target: Cdao::Document, type: :integer, join: { from: :id, to: :document_id }) - join(:search_year, target: Cdao::Document, type: :integer, join: { from: :id, to: :document_id }) - join(:search_doc_date, target: Cdao::Document, type: :date, join: { from: :id, to: :document_id }) + integer :library_rank do + document.library.rank + end + + integer :search_year do + document.year.present? && document.year > 0 ? document.year : (document.doc_date.try :year) + end + + date :search_doc_date do + document.doc_date.presence || Date.new(year.presence || 0) + end date :created_at date :updated_at