Class: Cpro::Resources::Flux

Inherits:
Base
  • Object
show all
Defined in:
lib/cpro/resources/flux.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Cpro::Resources::Base

Instance Method Details

#deposit_cdv(source, name: nil) ⇒ Object

Émettre un statut de cycle de vie : le fichier attendu est un CDAR D22B conforme à l'Annexe A de la norme AFNOR XP Z12-012. La gem le transporte, elle ne le fabrique pas.



16
17
18
# File 'lib/cpro/resources/flux.rb', line 16

def deposit_cdv(source, name: nil)
  depot(source, :cdv, name: name)
end

#deposit_ereporting(source, name: nil) ⇒ Object



20
21
22
# File 'lib/cpro/resources/flux.rb', line 20

def deposit_ereporting(source, name: nil)
  depot(source, :ereporting, name: name)
end

#deposit_facturx(source, name: nil) ⇒ Object



6
7
8
# File 'lib/cpro/resources/flux.rb', line 6

def deposit_facturx(source, name: nil)
  depot(source, :facturx, name: name) { |contenu| verifier_facturx(contenu) }
end

#deposit_ubl(source, name: nil) ⇒ Object



10
11
12
# File 'lib/cpro/resources/flux.rb', line 10

def deposit_ubl(source, name: nil)
  depot(source, :ubl, name: name)
end

#emettre_statut(facture, statut, **options) ⇒ Object



24
25
26
27
# File 'lib/cpro/resources/flux.rb', line 24

def emettre_statut(facture, statut, **options)
  message = Cdv::Message.new(facture: facture, statut: statut, **options)
  depot(StringIO.new(message.to_xml), :cdv, name: message.nom_fichier)
end

#healthcheckObject



39
40
41
# File 'lib/cpro/resources/flux.rb', line 39

def healthcheck
  get("healthcheck")
end

#status(uid) ⇒ Object



29
30
31
32
33
# File 'lib/cpro/resources/flux.rb', line 29

def status(uid)
  status!(uid)
rescue NotFoundError
  nil
end

#status!(uid) ⇒ Object



35
36
37
# File 'lib/cpro/resources/flux.rb', line 35

def status!(uid)
  Entities::StatutFlux.new(get("flux/#{normalize_uid(uid, "identifiant de flux")}"))
end