ruby_ufebs 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ec810416c2556466033b7b703dde1236d4525e40
4
- data.tar.gz: 58e0578544a9ac21c5fd46f35c809bec48d29da7
3
+ metadata.gz: 2fde77327f89a47d9093cf6348a1166f21646a87
4
+ data.tar.gz: ac8b9f64f3fede7f12a31e2ed0c74bd8a3130c58
5
5
  SHA512:
6
- metadata.gz: 323f0353f7dc2452ad1e72cc97d038d71d08e328f0004175cd100f8903500cff0b6dcf4e4db69621a515724b8751d674db140715dfef27f1f6918a156405ffe2
7
- data.tar.gz: e0730eee134186b52d8101070801eea1646b09119b7b359a9d6d61d866146c71eeaa61f7a9227b04ca045644ba2a1d9e503bf680c81ec089ef38a7b9dead4baf
6
+ metadata.gz: b91e5fed70f42e635255acdf20a61ff3975a3d6962232161ba0ed87fc08299abc5f8e54798984e152d93e41c80b430a066f90f8512ca1788fdd06290abde1fcb
7
+ data.tar.gz: dd597a549024422c3c692894b18d1ffa06c070f642c9f075fa52f9a42296735cec527609bd291123f063b7b1f621b0559fe519f0c19ab4987f79e73b5f2cc5ae
@@ -5,14 +5,14 @@ module Ufebs
5
5
  register_namespace 'ed', "urn:cbr-ru:ed:v2.0"
6
6
  namespace 'ed'
7
7
 
8
- attribute :kbk, String, tag: 'CBC'
9
- attribute :okato, String, tag: 'OKATO'
10
- attribute :tax_period, String, tag: 'TaxPeriod'
8
+ attribute :kbk, String, tag: 'CBC'
9
+ attribute :okato, String, tag: 'OKATO'
10
+ attribute :tax_period, String, tag: 'TaxPeriod'
11
11
  attribute :drawer_status, String, tag: 'DrawerStatus'
12
- attribute :payt_reason, String, tag: 'PaytReason'
13
- attribute :doc_no, String, tag: 'DocNo'
12
+ attribute :payt_reason, String, tag: 'PaytReason'
13
+ attribute :doc_no, String, tag: 'DocNo'
14
14
  attribute :tax_payt_kind, String, tag: 'TaxPaytKind'
15
- attribute :doc_date, String, tag: 'DocDate'
15
+ attribute :doc_date, String, tag: 'DocDate'
16
16
 
17
17
  def initialize(
18
18
  tax_payt_kind: 'HC',
@@ -0,0 +1,58 @@
1
+ require_relative 'ed_field_list'
2
+ require_relative 'ed_reestr_info'
3
+
4
+ module Ufebs
5
+ module Entities
6
+ class EdDefineAnswerInfo
7
+ include HappyMapper
8
+
9
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
10
+ namespace 'ed'
11
+
12
+ attribute :acc_doc_date, String, tag: 'AccDocDate'
13
+ attribute :acc_doc_no, String, tag: 'AccDocNo'
14
+ attribute :payer_acc, String, tag: 'PayerAcc'
15
+ attribute :payee_acc, String, tag: 'PayeeAcc'
16
+ attribute :payer_inn, String, tag: 'PayerINN'
17
+ attribute :payee_inn, String, tag: 'PayeeINN'
18
+ attribute :sum, String, tag: 'Sum'
19
+ attribute :enter_date, String, tag: 'EnterDate'
20
+ attribute :payee_corr_acc, String, tag: 'PayeeCorrAcc'
21
+ attribute :payee_bic, String, tag: 'PayeeBIC'
22
+
23
+ element :payer_long_name, String, tag: 'PayerLongName'
24
+ element :payee_long_name, String, tag: 'PayeeLongName'
25
+ element :purpose, String, tag: 'Purpose'
26
+ element :address, String, tag: 'Address'
27
+ element :ed_define_answer_text, String, tag: 'EDDefineAnswerText'
28
+
29
+ has_many :ed_filed_lists,
30
+ Ufebs::Entities::EdFieldList,
31
+ tag: 'EDFieldList'
32
+
33
+ has_many :ed_define_reestr_infos,
34
+ Ufebs::Entities::EdReestrInfo,
35
+ tag: 'EDReestrInfo'
36
+
37
+ def initialize(params = {})
38
+ params.each do |key, value|
39
+ case key.to_sym
40
+ when :ed_filed_lists then set_ed_filed_lists(value)
41
+ when :ed_define_reestr_infos then set_ed_define_reestr_infos(value)
42
+ else instance_variable_set("@#{key}".to_sym, value)
43
+ end
44
+ end
45
+ end
46
+
47
+ def set_ed_filed_lists(value)
48
+ @ed_filed_lists =
49
+ value.map { |params| Ufebs::Entities::EdFieldList.new(params) }
50
+ end
51
+
52
+ def set_ed_define_reestr_infos(value)
53
+ @ed_define_reestr_infos =
54
+ value.map { |params| Ufebs::Entities::EdReestrInfo.new(params) }
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,51 @@
1
+ require_relative 'ed_field_list'
2
+ require_relative 'ed_reestr_info'
3
+
4
+ module Ufebs
5
+ module Entities
6
+ class EdDefineRequestInfo
7
+ include HappyMapper
8
+
9
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
10
+ namespace 'ed'
11
+
12
+ attribute :acc_doc_date, String, tag: 'AccDocDate'
13
+ attribute :acc_doc_no, String, tag: 'AccDocNo'
14
+ attribute :payer_acc, String, tag: 'PayerAcc'
15
+ attribute :payee_acc, String, tag: 'PayeeAcc'
16
+ attribute :sum, String, tag: 'Sum'
17
+
18
+ element :payer_name, String, tag: 'PayerName'
19
+ element :payee_name, String, tag: 'PayeeName'
20
+ element :ed_define_request_text, String, tag: 'EDDefineRequestText'
21
+
22
+ has_many :ed_filed_lists,
23
+ Ufebs::Entities::EdFieldList,
24
+ tag: 'EDFieldList'
25
+
26
+ has_many :ed_define_reestr_infos,
27
+ Ufebs::Entities::EdReestrInfo,
28
+ tag: 'EDReestrInfo'
29
+
30
+ def initialize(params = {})
31
+ params.each do |key, value|
32
+ case key.to_sym
33
+ when :ed_filed_lists then set_ed_filed_lists(value)
34
+ when :ed_define_reestr_infos then set_ed_define_reestr_infos(value)
35
+ else instance_variable_set("@#{key}".to_sym, value)
36
+ end
37
+ end
38
+ end
39
+
40
+ def set_ed_filed_lists(value)
41
+ @ed_filed_lists =
42
+ value.map { |params| Ufebs::Entities::EdFieldList.new(params) }
43
+ end
44
+
45
+ def set_ed_define_reestr_infos(value)
46
+ @ed_define_reestr_infos =
47
+ value.map { |params| Ufebs::Entities::EdReestrInfo.new(params) }
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,18 @@
1
+ module Ufebs
2
+ module Entities
3
+ class EdFieldList
4
+ include HappyMapper
5
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
6
+ namespace 'ed'
7
+
8
+ element :field_no, String, tag: 'FieldNo'
9
+ element :field_value, String, tag: 'FieldValue'
10
+
11
+ def initialize(params = {})
12
+ params.each do |key, value|
13
+ instance_variable_set("@#{key}".to_sym, value)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,29 @@
1
+ module Ufebs
2
+ module Entities
3
+ class EdReestrInfo
4
+ include HappyMapper
5
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
6
+ namespace 'ed'
7
+
8
+ attribute :transaction_id, String, tag: 'TransactionID'
9
+
10
+ has_many :ed_reestr_filed_lists,
11
+ Ufebs::Entities::EdFieldList,
12
+ tag: 'EDReestrFieldList'
13
+
14
+ def initialize(params = {})
15
+ params.each do |key, value|
16
+ case key.to_sym
17
+ when :ed_reestr_filed_lists then set_ed_reestr_filed_lists(value)
18
+ else instance_variable_set("@#{key}".to_sym, value)
19
+ end
20
+ end
21
+ end
22
+
23
+ def set_ed_reestr_filed_lists(value)
24
+ @ed_reestr_filed_lists =
25
+ value.map { |params| Ufebs::Entities::EdFieldList.new(params) }
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,114 @@
1
+ module Ufebs
2
+ module Requests
3
+ class DefineAnswer
4
+ include HappyMapper
5
+ include Ufebs::Fields::Header
6
+
7
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
8
+ tag 'ED244'
9
+ namespace 'ed'
10
+
11
+ attribute :ed_define_request_code, String, tag: 'EDDefineRequestCode'
12
+ attribute :ed_define_answer_code, String, tag: 'EDDefineAnswerCode'
13
+
14
+ has_one :original_epd, Ufebs::Entities::EdRefId,
15
+ tag: 'OriginalEPD'
16
+
17
+ has_one :ed_define_answer_info, Ufebs::Entities::EdDefineAnswerInfo,
18
+ tag: 'EDDefineAnswerInfo'
19
+
20
+ has_one :initial_ed, Ufebs::Entities::EdRefId,
21
+ tag: 'InitialED'
22
+
23
+ def initialize(params = {})
24
+ params.each do |key, value|
25
+ case key.to_sym
26
+ when :ed_define_answer_info then set_ed_define_answer_info(value)
27
+ when :original_epd then set_original_epd(value)
28
+ when :initial_ed then set_initial_ed(value)
29
+ else instance_variable_set("@#{key}".to_sym, value)
30
+ end
31
+ end
32
+ end
33
+
34
+ def set_ed_define_answer_info(value)
35
+ @ed_define_answer_info = Ufebs::Entities::EdDefineAnswerInfo.new(value)
36
+ end
37
+
38
+ def set_original_epd(value)
39
+ @original_epd = Ufebs::Entities::EdRefId.new(value)
40
+ end
41
+
42
+ def set_initial_ed(value)
43
+ @initial_ed = Ufebs::Entities::EdRefId.new(value)
44
+ end
45
+ end
46
+ end
47
+ end
48
+
49
+ # <?xml version="1.0" encoding="utf-8"?>
50
+ # <ED244 EDDefineRequestCode="EDDefineRequestCode1" EDDefineAnswerCode="EDDefineAnswerCode1" EDReceiver="EDReceiver1" EDNo="1" EDDate="1900-01-01" EDAuthor="EDAuthor1" xmlns="urn:cbr-ru:ed:v2.0">
51
+ # <OriginalEPD EDNo="1" EDDate="1900-01-01" EDAuthor="EDAuthor1" />
52
+ # <EDDefineAnswerInfo AccDocDate="1900-01-01" AccDocNo="AccDo1" PayerAcc="PayerAcc1" PayeeAcc="PayeeAcc1" PayerINN="PayerINN1" PayeeINN="PayeeINN1" Sum="1" EnterDate="1900-01-01" PayeeCorrAcc="PayeeCorrAcc1" PayeeBIC="PayeeBIC1">
53
+ # <PayerLongName>PayerLongName1</PayerLongName>
54
+ # <PayeeLongName>PayeeLongName1</PayeeLongName>
55
+ # <Purpose>Purpose1</Purpose>
56
+ # <Address>Address1</Address>
57
+ # <EDDefineAnswerText>EDDefineAnswerText1</EDDefineAnswerText>
58
+ # <EDFieldList>
59
+ # <FieldNo>FieldNo1</FieldNo>
60
+ # <FieldValue>FieldValue1</FieldValue>
61
+ # </EDFieldList>
62
+ # <EDFieldList>
63
+ # <FieldNo>FieldNo2</FieldNo>
64
+ # <FieldValue>FieldValue2</FieldValue>
65
+ # </EDFieldList>
66
+ # <EDFieldList>
67
+ # <FieldNo>FieldNo3</FieldNo>
68
+ # <FieldValue>FieldValue3</FieldValue>
69
+ # </EDFieldList>
70
+ # <EDReestrInfo TransactionID="1">
71
+ # <EDReestrFieldList>
72
+ # <FieldNo>FieldNo1</FieldNo>
73
+ # <FieldValue>FieldValue1</FieldValue>
74
+ # </EDReestrFieldList>
75
+ # <EDReestrFieldList>
76
+ # <FieldNo>FieldNo2</FieldNo>
77
+ # <FieldValue>FieldValue2</FieldValue>
78
+ # </EDReestrFieldList>
79
+ # <EDReestrFieldList>
80
+ # <FieldNo>FieldNo3</FieldNo>
81
+ # <FieldValue>FieldValue3</FieldValue>
82
+ # </EDReestrFieldList>
83
+ # </EDReestrInfo>
84
+ # <EDReestrInfo TransactionID="-99999">
85
+ # <EDReestrFieldList>
86
+ # <FieldNo>FieldNo4</FieldNo>
87
+ # <FieldValue>FieldValue4</FieldValue>
88
+ # </EDReestrFieldList>
89
+ # <EDReestrFieldList>
90
+ # <FieldNo>FieldNo5</FieldNo>
91
+ # <FieldValue>FieldValue5</FieldValue>
92
+ # </EDReestrFieldList>
93
+ # <EDReestrFieldList>
94
+ # <FieldNo>FieldNo6</FieldNo>
95
+ # <FieldValue>FieldValue6</FieldValue>
96
+ # </EDReestrFieldList>
97
+ # </EDReestrInfo>
98
+ # <EDReestrInfo TransactionID="99999">
99
+ # <EDReestrFieldList>
100
+ # <FieldNo>FieldNo7</FieldNo>
101
+ # <FieldValue>FieldValue7</FieldValue>
102
+ # </EDReestrFieldList>
103
+ # <EDReestrFieldList>
104
+ # <FieldNo>FieldNo8</FieldNo>
105
+ # <FieldValue>FieldValue8</FieldValue>
106
+ # </EDReestrFieldList>
107
+ # <EDReestrFieldList>
108
+ # <FieldNo>FieldNo9</FieldNo>
109
+ # <FieldValue>FieldValue9</FieldValue>
110
+ # </EDReestrFieldList>
111
+ # </EDReestrInfo>
112
+ # </EDDefineAnswerInfo>
113
+ # <InitialED EDNo="1" EDDate="1900-01-01" EDAuthor="EDAuthor1" />
114
+ # </ED244>
@@ -0,0 +1,101 @@
1
+ module Ufebs
2
+ module Requests
3
+ class DefineRequest
4
+ include HappyMapper
5
+ include Ufebs::Fields::Header
6
+
7
+ register_namespace 'ed', 'urn:cbr-ru:ed:v2.0'
8
+ tag 'ED243'
9
+ namespace 'ed'
10
+
11
+ attribute :ed_define_request_code, String, tag: 'EDDefineRequestCode'
12
+
13
+ has_one :original_epd, Ufebs::Entities::EdRefId,
14
+ tag: 'OriginalEPD'
15
+
16
+ has_one :ed_define_request_info, Ufebs::Entities::EdDefineRequestInfo,
17
+ tag: 'EDDefineRequestInfo'
18
+
19
+ def initialize(params = {})
20
+ params.each do |key, value|
21
+ case key.to_sym
22
+ when :original_epd then set_original_epd(value)
23
+ when :ed_define_request_info then set_ed_define_request_info(value)
24
+ else instance_variable_set("@#{key}".to_sym, value)
25
+ end
26
+ end
27
+ end
28
+
29
+ def set_ed_define_request_info(value)
30
+ @ed_define_request_info = Ufebs::Entities::EdDefineRequestInfo.new(value)
31
+ end
32
+
33
+ def set_original_epd(value)
34
+ @original_epd = Ufebs::Entities::EdRefId.new(value)
35
+ end
36
+ end
37
+ end
38
+ end
39
+
40
+ # <?xml version="1.0" encoding="utf-8"?>
41
+ # <ED243 EDDefineRequestCode="EDDefineRequestCode1" EDReceiver="EDReceiver1" EDNo="1" EDDate="1900-01-01" EDAuthor="EDAuthor1" xmlns="urn:cbr-ru:ed:v2.0">
42
+
43
+ # <PayerName>PayerName1</PayerName>
44
+ # <PayeeName>PayeeName1</PayeeName>
45
+ # <EDDefineRequestText>EDDefineRequestText1</EDDefineRequestText>
46
+ # <EDFieldList>
47
+ # <FieldNo>FieldNo1</FieldNo>
48
+ # <FieldValue>FieldValue1</FieldValue>
49
+ # </EDFieldList>
50
+ # <EDFieldList>
51
+ # <FieldNo>FieldNo2</FieldNo>
52
+ # <FieldValue>FieldValue2</FieldValue>
53
+ # </EDFieldList>
54
+ # <EDFieldList>
55
+ # <FieldNo>FieldNo3</FieldNo>
56
+ # <FieldValue>FieldValue3</FieldValue>
57
+ # </EDFieldList>
58
+ # <EDReestrInfo TransactionID="1">
59
+ # <EDReestrFieldList>
60
+ # <FieldNo>FieldNo1</FieldNo>
61
+ # <FieldValue>FieldValue1</FieldValue>
62
+ # </EDReestrFieldList>
63
+ # <EDReestrFieldList>
64
+ # <FieldNo>FieldNo2</FieldNo>
65
+ # <FieldValue>FieldValue2</FieldValue>
66
+ # </EDReestrFieldList>
67
+ # <EDReestrFieldList>
68
+ # <FieldNo>FieldNo3</FieldNo>
69
+ # <FieldValue>FieldValue3</FieldValue>
70
+ # </EDReestrFieldList>
71
+ # </EDReestrInfo>
72
+ # <EDReestrInfo TransactionID="-99999">
73
+ # <EDReestrFieldList>
74
+ # <FieldNo>FieldNo4</FieldNo>
75
+ # <FieldValue>FieldValue4</FieldValue>
76
+ # </EDReestrFieldList>
77
+ # <EDReestrFieldList>
78
+ # <FieldNo>FieldNo5</FieldNo>
79
+ # <FieldValue>FieldValue5</FieldValue>
80
+ # </EDReestrFieldList>
81
+ # <EDReestrFieldList>
82
+ # <FieldNo>FieldNo6</FieldNo>
83
+ # <FieldValue>FieldValue6</FieldValue>
84
+ # </EDReestrFieldList>
85
+ # </EDReestrInfo>
86
+ # <EDReestrInfo TransactionID="99999">
87
+ # <EDReestrFieldList>
88
+ # <FieldNo>FieldNo7</FieldNo>
89
+ # <FieldValue>FieldValue7</FieldValue>
90
+ # </EDReestrFieldList>
91
+ # <EDReestrFieldList>
92
+ # <FieldNo>FieldNo8</FieldNo>
93
+ # <FieldValue>FieldValue8</FieldValue>
94
+ # </EDReestrFieldList>
95
+ # <EDReestrFieldList>
96
+ # <FieldNo>FieldNo9</FieldNo>
97
+ # <FieldValue>FieldValue9</FieldValue>
98
+ # </EDReestrFieldList>
99
+ # </EDReestrInfo>
100
+ # </EDDefineRequestInfo>
101
+ # </ED243>
data/lib/ufebs/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RubyUfebs
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
data/lib/ufebs.rb CHANGED
@@ -73,15 +73,24 @@ module Ufebs
73
73
  end
74
74
 
75
75
  def ED243(params)
76
+ if params.is_a?(Hash)
77
+ Ufebs::Requests::DefineRequest.new(params)
78
+ else
79
+ Ufebs::Requests::DefineRequest.parse(params)
80
+ end
76
81
  end
77
82
 
78
83
  def ED218(params)
79
84
  end
80
85
 
81
- def ED244
86
+ def ED244(params)
87
+ if params.is_a?(Hash)
88
+ Ufebs::Requests::DefineAnswer.new(params)
89
+ else
90
+ Ufebs::Requests::DefineAnswer.parse(params)
91
+ end
82
92
  end
83
93
 
84
-
85
94
  # Создание XML по формату ED101(Платежное поручение)
86
95
  # @param params [Hash, String] Hash значений документа или его строковое представление в виде XML
87
96
  # @option params [Integer] :number номер документа аттрибут EDNo
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_ufebs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evgeniy Burdaev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-15 00:00:00.000000000 Z
11
+ date: 2018-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -428,12 +428,18 @@ files:
428
428
  - lib/ufebs/entities/acc_doc.rb
429
429
  - lib/ufebs/entities/bank.rb
430
430
  - lib/ufebs/entities/departmental_info.rb
431
+ - lib/ufebs/entities/ed_define_answer_info.rb
432
+ - lib/ufebs/entities/ed_define_request_info.rb
433
+ - lib/ufebs/entities/ed_field_list.rb
434
+ - lib/ufebs/entities/ed_reestr_info.rb
431
435
  - lib/ufebs/entities/ed_ref_id.rb
432
436
  - lib/ufebs/entities/participant.rb
433
437
  - lib/ufebs/entities/processing_details.rb
434
438
  - lib/ufebs/entities/session.rb
435
439
  - lib/ufebs/entities/trans_info.rb
436
440
  - lib/ufebs/fields/header.rb
441
+ - lib/ufebs/requests/define_answer.rb
442
+ - lib/ufebs/requests/define_request.rb
437
443
  - lib/ufebs/requests/group_request.rb
438
444
  - lib/ufebs/requests/package_request.rb
439
445
  - lib/ufebs/requests/receipt.rb