Class: DigitalAssetsController

Inherits:
ApplicationController
  • Object
show all
Includes:
DigitalAssetsHelper
Defined in:
app/controllers/digital_assets_controller.rb

Constant Summary collapse

CACHE_LAST_PARSE_TIME =
'last_parse_time'

Instance Method Summary collapse

Methods included from DigitalAssetsHelper

#search_da

Instance Method Details

#destroyObject



34
35
36
37
38
# File 'app/controllers/digital_assets_controller.rb', line 34

def destroy
  da = DigitalAsset.where(:digital_asset_id => params[:id])
  da[0].delete if da.present?
  head :ok
end

#fund_docsObject



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'app/controllers/digital_assets_controller.rb', line 52

def fund_docs
  @digital_assets = []
  fund_doctypes = {:doctype => [
    DigitalAsset::ContentType::PROSPECTUS,
    DigitalAsset::ContentType::SUMMARY_PROSPECTUS,
    DigitalAsset::ContentType::SAI,
    DigitalAsset::ContentType::ANNUAL_REPORT,
    DigitalAsset::ContentType::SEMIANNUAL_REPORT,
    DigitalAsset::ContentType::FACTSHEET,
    DigitalAsset::ContentType::COMMENTARY
  ]}
  @digital_assets = search_da(fund_doctypes)
  # remove anything that doesn't have a fundcode
  @digital_assets = @digital_assets.reject {|da| da.fund_code.nil?}
  respond_with(@digital_assets)
end

#indexObject Also known as: search

GET /digital_assets GET /digital_assets.json /digital_assets/search/sami_code=92023 /digital_assets/search/sami_code=NE00192&title=Fund%20Prospectus&fund_code=20293



12
13
14
15
# File 'app/controllers/digital_assets_controller.rb', line 12

def index
  @digital_assets = request.query_parameters.present? ? search_da(request.query_parameters) : DigitalAsset.all
  respond_with(@digital_assets)
end

#showObject

GET /digital_assets/1 GET /digital_assets/1.json



20
21
22
23
# File 'app/controllers/digital_assets_controller.rb', line 20

def show
  @digital_asset = /\w{4,8}\.\d{0,3}/ =~ params[:id] ? DigitalAsset.sami_is(params[:id]).desc(:changed_at).first : DigitalAsset.find(params[:id])
  respond_with(@digital_asset)
end

#updateObject Also known as: create



25
26
27
28
29
30
# File 'app/controllers/digital_assets_controller.rb', line 25

def update
  da_passed = params[:digital_asset]
  da = DigitalAsset.find_or_initialize_by(digital_asset_id: da_passed[:digital_asset_id])
  da.update_attributes! da_passed
  head :ok
end

#updated_timeObject



40
41
42
43
44
45
46
47
48
49
50
# File 'app/controllers/digital_assets_controller.rb', line 40

def updated_time
  Daengine.log "updated_time params #{params.inspect}", "info"
  ids = params[:ids]
  updated_time = Hash.new
  ids.each do |id|
    da = DigitalAsset.where(:digital_asset_id => id) 
    updated_time[id] = da[0].doc_changed_at if da.present?
  end
  Daengine.log "updated_time result #{updated_time.inspect}", "info"
  render json: updated_time.to_json, status: :ok
end