moysklad 0.3.0 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/rspec.yml +29 -0
  3. data/lib/moysklad/client.rb +9 -4
  4. data/lib/moysklad/entities/assortment.rb +0 -2
  5. data/lib/moysklad/entities/attribute.rb +0 -3
  6. data/lib/moysklad/entities/attribute_metadata.rb +0 -2
  7. data/lib/moysklad/entities/attribute_value.rb +3 -4
  8. data/lib/moysklad/entities/characteristic.rb +0 -2
  9. data/lib/moysklad/entities/characteristic_metadata.rb +0 -2
  10. data/lib/moysklad/entities/collection.rb +0 -3
  11. data/lib/moysklad/entities/company_settings_metadata.rb +0 -2
  12. data/lib/moysklad/entities/consignment.rb +0 -3
  13. data/lib/moysklad/entities/context.rb +0 -2
  14. data/lib/moysklad/entities/counterparty.rb +4 -2
  15. data/lib/moysklad/entities/country.rb +2 -8
  16. data/lib/moysklad/entities/currency.rb +0 -2
  17. data/lib/moysklad/entities/custom_entity.rb +0 -3
  18. data/lib/moysklad/entities/customer_order.rb +0 -7
  19. data/lib/moysklad/entities/customer_order_position.rb +0 -4
  20. data/lib/moysklad/entities/employee.rb +0 -2
  21. data/lib/moysklad/entities/entity.rb +0 -3
  22. data/lib/moysklad/entities/group.rb +5 -2
  23. data/lib/moysklad/entities/image.rb +0 -1
  24. data/lib/moysklad/entities/meta.rb +0 -2
  25. data/lib/moysklad/entities/organization.rb +0 -2
  26. data/lib/moysklad/entities/price.rb +0 -1
  27. data/lib/moysklad/entities/price_type.rb +0 -2
  28. data/lib/moysklad/entities/product.rb +0 -7
  29. data/lib/moysklad/entities/productfolder.rb +0 -2
  30. data/lib/moysklad/entities/rate.rb +0 -3
  31. data/lib/moysklad/entities/resource_metadata.rb +0 -5
  32. data/lib/moysklad/entities/service.rb +5 -10
  33. data/lib/moysklad/entities/shortcut.rb +0 -2
  34. data/lib/moysklad/entities/store.rb +0 -1
  35. data/lib/moysklad/entities/uom.rb +0 -2
  36. data/lib/moysklad/entities/variant.rb +0 -4
  37. data/lib/moysklad/entities.rb +42 -35
  38. data/lib/moysklad/resources/assortments.rb +0 -1
  39. data/lib/moysklad/resources/base.rb +4 -3
  40. data/lib/moysklad/resources/custom_entities.rb +3 -1
  41. data/lib/moysklad/resources/custom_entity_metadata.rb +1 -1
  42. data/lib/moysklad/resources/embedded_entity_metadata.rb +2 -2
  43. data/lib/moysklad/resources/indexed.rb +1 -5
  44. data/lib/moysklad/resources/positions.rb +15 -0
  45. data/lib/moysklad/resources/stock.rb +1 -1
  46. data/lib/moysklad/resources/subresource.rb +0 -1
  47. data/lib/moysklad/resources.rb +22 -9
  48. data/lib/moysklad/universe.rb +1 -1
  49. data/lib/moysklad/version.rb +1 -1
  50. data/lib/moysklad.rb +11 -7
  51. data/moysklad.gemspec +2 -2
  52. data/spec/lib/moysklad/entities/customer_order_position_spec.rb +4 -17
  53. data/spec/lib/moysklad/entities/customer_order_spec.rb +7 -37
  54. data/spec/lib/moysklad/resources/base_spec.rb +0 -54
  55. data/spec/lib/moysklad/resources_spec.rb +0 -2
  56. data/spec/lib/moysklad/universe_spec.rb +0 -23
  57. data/spec/lib/moysklad_spec.rb +0 -1
  58. data/spec/support/resource.rb +1 -66
  59. metadata +10 -146
  60. data/.travis.yml +0 -5
  61. data/lib/moysklad/entities/attachment_document.rb +0 -16
  62. data/lib/moysklad/entities/barcode.rb +0 -19
  63. data/lib/moysklad/entities/common_object.rb +0 -27
  64. data/lib/moysklad/entities/company.rb +0 -20
  65. data/lib/moysklad/entities/company_concern.rb +0 -20
  66. data/lib/moysklad/entities/contact.rb +0 -15
  67. data/lib/moysklad/entities/custom_entity_metadata.rb +0 -11
  68. data/lib/moysklad/entities/embedded_entity_metadata.rb +0 -18
  69. data/lib/moysklad/entities/error.rb +0 -13
  70. data/lib/moysklad/entities/good_folder.rb +0 -10
  71. data/lib/moysklad/entities/good_ref.rb +0 -12
  72. data/lib/moysklad/entities/images.rb +0 -10
  73. data/lib/moysklad/entities/my_company.rb +0 -12
  74. data/lib/moysklad/entities/sale_price.rb +0 -18
  75. data/lib/moysklad/entities/sale_prices.rb +0 -10
  76. data/lib/moysklad/entities/slot.rb +0 -10
  77. data/lib/moysklad/entities/workflow.rb +0 -11
  78. data/lib/moysklad/entities/workflow_state.rb +0 -8
  79. data/spec/fixtures/302.raw +0 -15
  80. data/spec/fixtures/400.raw +0 -8
  81. data/spec/fixtures/401.html +0 -1
  82. data/spec/fixtures/401_2.html +0 -1
  83. data/spec/fixtures/405.raw +0 -9
  84. data/spec/fixtures/500.raw +0 -8
  85. data/spec/fixtures/502.raw +0 -8
  86. data/spec/fixtures/Consignment_list_0.raw +0 -14
  87. data/spec/fixtures/Consignment_list_1000.raw +0 -14
  88. data/spec/fixtures/Country_list.raw +0 -14
  89. data/spec/fixtures/CustomEntityMetadata_list.raw +0 -14
  90. data/spec/fixtures/CustomEntity_list.raw +0 -14
  91. data/spec/fixtures/CustomEntity_list_bad_chars.raw +0 -17
  92. data/spec/fixtures/EmbeddedEntityMetadata_list.raw +0 -15
  93. data/spec/fixtures/Feature_list.raw +0 -14
  94. data/spec/fixtures/Feature_list_1000.raw +0 -14
  95. data/spec/fixtures/Good_WithManyAttributes.raw +0 -13
  96. data/spec/fixtures/Good_e932ebe1-2e22-11e4-9406-002590a28eca.raw +0 -12
  97. data/spec/fixtures/Good_eb77ad57-2e22-11e4-4030-002590a28eca.raw +0 -12
  98. data/spec/fixtures/Goods_list.raw +0 -14
  99. data/spec/fixtures/Metadata_list.raw +0 -14
  100. data/spec/fixtures/PriceType_list.raw +0 -14
  101. data/spec/fixtures/Stock.raw +0 -11
  102. data/spec/fixtures/Stock_showConsignments.raw +0 -11
  103. data/spec/fixtures/Uom_list.raw +0 -14
  104. data/spec/fixtures/Warehouse_list.raw +0 -14
  105. data/spec/fixtures/Workflow_list.raw +0 -15
  106. data/spec/fixtures/attribute_boolean.xml +0 -6
  107. data/spec/fixtures/attribute_dictionary.xml +0 -5
  108. data/spec/fixtures/attribute_double.xml +0 -6
  109. data/spec/fixtures/attribute_file.xml +0 -12
  110. data/spec/fixtures/attribute_long.xml +0 -6
  111. data/spec/fixtures/attribute_text.xml +0 -5
  112. data/spec/fixtures/attribute_time.xml +0 -6
  113. data/spec/fixtures/attribute_url.xml +0 -6
  114. data/spec/fixtures/bad_chars.xml +0 -6
  115. data/spec/fixtures/customer_order.xml +0 -28
  116. data/spec/fixtures/good_with_attributes.raw +0 -12
  117. data/spec/fixtures/good_with_image.xml +0 -39
  118. data/spec/fixtures/resource_forbidden.raw +0 -9
  119. data/spec/fixtures/wrong_password.raw +0 -9
  120. data/spec/fixtures/wrong_type.raw +0 -70
  121. data/spec/fixtures/wrong_user.raw +0 -9
  122. data/spec/lib/moysklad/client/errors_spec.rb +0 -102
  123. data/spec/lib/moysklad/entities/attribute_metadata_spec.rb +0 -30
  124. data/spec/lib/moysklad/entities/attribute_spec.rb +0 -36
  125. data/spec/lib/moysklad/entities/country_spec.rb +0 -25
  126. data/spec/lib/moysklad/entities/custom_entity_metadata_spec.rb +0 -34
  127. data/spec/lib/moysklad/entities/custom_entity_spec.rb +0 -34
  128. data/spec/lib/moysklad/entities/good_spec.rb +0 -55
  129. data/spec/lib/moysklad/resources/countries_spec.rb +0 -22
  130. data/spec/lib/moysklad/resources/custom_entity_metadata_spec.rb +0 -13
  131. data/spec/lib/moysklad/resources/embedded_entity_metadata_indexed_spec.rb +0 -20
  132. data/spec/lib/moysklad/resources/embedded_entity_metadata_spec.rb +0 -11
  133. data/spec/lib/moysklad/resources/good_folders_spec.rb +0 -17
  134. data/spec/lib/moysklad/resources/indexed_spec.rb +0 -61
  135. data/spec/lib/moysklad/resources/stock_spec.rb +0 -63
  136. data/spec/lib/moysklad/resources/warehouses_spec.rb +0 -20
  137. data/spec/lib/moysklad/resources/workflows_spec.rb +0 -21
@@ -1,20 +0,0 @@
1
- module Moysklad::Entities
2
- class Company < Base
3
- include CompanyConcern
4
-
5
- tag 'company'
6
-
7
- attribute :payerVat, Boolean
8
-
9
- attribute :priceTypeUuid, String
10
-
11
- attribute :discount, Float
12
- attribute :autoDiscount, Float
13
- attribute :discountCardNumber, String
14
- attribute :discountCorrection, Float
15
-
16
- element :code, String
17
- end
18
- end
19
-
20
-
@@ -1,20 +0,0 @@
1
- module Moysklad::Entities::CompanyConcern
2
- extend ActiveSupport::Concern
3
- included do
4
- include HappyMapper
5
- include Moysklad::Entities::CommonObject
6
-
7
- attribute :created, Time
8
- attribute :archived, HappyMapper::Boolean
9
-
10
- attribute :companyType, String
11
-
12
- attribute :discount, Float
13
- attribute :autoDiscount, Float
14
- attribute :discountCardNumber, String
15
- attribute :discountCorrection, Float
16
-
17
- element :code, String
18
-
19
- end
20
- end
@@ -1,15 +0,0 @@
1
- module Moysklad::Entities
2
- # https://online.moysklad.ru/exchange/rest/ms/xml/Warehouse/list
3
- class Contact < Base
4
- include HappyMapper
5
- include Moysklad::Entities::XmlFix
6
-
7
- tag 'warehouse'
8
-
9
- attribute :address, String
10
- attribute :faxes, String
11
- attribute :mobiles, String
12
- attribute :email, String
13
-
14
- end
15
- end
@@ -1,11 +0,0 @@
1
- require_relative 'meta'
2
- raise 'не используется'
3
- module Moysklad::Entities
4
- class CustomEntityMetadata < Base
5
- attribute :meta, Meta
6
- attribute :id, String
7
- attribute :name, String
8
- attribute :type, String # string, customentity
9
- attribute :required, Boolean
10
- end
11
- end
@@ -1,18 +0,0 @@
1
- module Moysklad::Entities
2
- # https://online.moysklad.ru/exchange/rest/ms/xml/Metadata/list
3
- class EmbeddedEntityMetadata < Base
4
- include CommonObject
5
-
6
- tag 'embeddedEntityMetadata'
7
-
8
- attribute :uniqueCode, Boolean
9
- attribute :codeValueType, Integer
10
- attribute :independentNameGenerator, Boolean
11
- attribute :partialReserve, Boolean
12
-
13
- has_many :attributeMetadata, AttributeMetadata
14
-
15
- element :code, String
16
- end
17
- end
18
-
@@ -1,13 +0,0 @@
1
- module Moysklad::Entities
2
- class Error < Base
3
- include HappyMapper
4
-
5
- tag 'error'
6
-
7
- element :uid, String
8
- element :moment, Time
9
- element :message, String
10
-
11
- element :stack, String
12
- end
13
- end
@@ -1,10 +0,0 @@
1
- module Moysklad::Entities
2
- class GoodFolder < Base
3
- include CommonObject
4
-
5
- tag 'goodFolder'
6
-
7
- attribute :productCode, String
8
- attribute :parentUuid, String
9
- end
10
- end
@@ -1,12 +0,0 @@
1
- module Moysklad::Entities
2
- class GoodRef < Base
3
- include HappyMapper
4
-
5
- tag 'goodRef'
6
-
7
- attribute :uuid, String
8
- attribute :name, String
9
- attribute :code, String
10
- attribute :objectType, String
11
- end
12
- end
@@ -1,10 +0,0 @@
1
- module Moysklad::Entities
2
- class Images < Base
3
- include HappyMapper
4
- include Moysklad::Entities::XmlFix
5
-
6
- tag 'images'
7
-
8
- has_many :image, Moysklad::Entities::Image
9
- end
10
- end
@@ -1,12 +0,0 @@
1
- module Moysklad::Entities
2
- # https://online.moysklad.ru/exchange/rest/ms/xml/MyCompany/list
3
- class MyCompany < Base
4
- include Moysklad::Entities::CompanyConcern
5
-
6
- tag 'myCompany'
7
-
8
- attribute :director, String
9
- attribute :chiefAccountant, String
10
-
11
- end
12
- end
@@ -1,18 +0,0 @@
1
- module Moysklad::Entities
2
- class SalePrice < Base
3
- include HappyMapper
4
- include Moysklad::Entities::XmlFix
5
-
6
- tag 'price'
7
-
8
- attribute :currencyUuid, String
9
- attribute :priceTypeUuid, String
10
- attribute :value, Float
11
-
12
- def priceType universe
13
- cache :priceType, universe do
14
- universe.price_types.find priceTypeUuid
15
- end
16
- end
17
- end
18
- end
@@ -1,10 +0,0 @@
1
- module Moysklad::Entities
2
- class SalePrices < Base
3
- include HappyMapper
4
- include Moysklad::Entities::XmlFix
5
-
6
- tag 'salePrices'
7
-
8
- has_many :price, Moysklad::Entities::SalePrice
9
- end
10
- end
@@ -1,10 +0,0 @@
1
- module Moysklad::Entities
2
- # https://online.moysklad.ru/exchange/rest/ms/xml/Warehouse/list
3
- class Slot < Base
4
- include HappyMapper
5
- include Moysklad::Entities::XmlFix
6
-
7
- tag 'slot'
8
-
9
- end
10
- end
@@ -1,11 +0,0 @@
1
- module Moysklad::Entities
2
- class Workflow < Base
3
- include CommonObject
4
- include Moysklad::Entities::XmlFix
5
-
6
- element :code, String
7
- element :uuid, String
8
-
9
- has_many :states, Moysklad::Entities::WorkflowState, tag: :state
10
- end
11
- end
@@ -1,8 +0,0 @@
1
- module Moysklad::Entities
2
- class WorkflowState < Base
3
- include CommonObject
4
- include Moysklad::Entities::XmlFix
5
-
6
- element :uuid, String
7
- end
8
- end
@@ -1,15 +0,0 @@
1
- HTTP/1.1 302 Moved Temporarily
2
- Server: nginx
3
- Date: Thu, 13 Nov 2014 16:43:43 GMT
4
- Content-Type: text/html
5
- Content-Length: 154
6
- Connection: keep-alive
7
- Location: http://brandymint.ru/
8
-
9
- <html>
10
- <head><title>302 Found</title></head>
11
- <body bgcolor="white">
12
- <center><h1>302 Found</h1></center>
13
- <hr><center>nginx</center>
14
- </body>
15
- </html>
@@ -1,8 +0,0 @@
1
- HTTP/1.1 400 Bad Request
2
- Server: nginx/1.6.1
3
- Date: Thu, 13 Nov 2014 14:40:41 GMT
4
- Content-Type: text/html;charset=utf-8
5
- Content-Length: 1801
6
- Connection: close
7
-
8
- <html><head><title>JBoss Web/7.2.0.Final - JBWEB000064: Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>JBWEB000065: HTTP Status 400 - Unable to extract parameter from http request: javax.ws.rs.QueryParam(&quot;start&quot;) value is '' for public abstract javax.ws.rs.core.StreamingOutput com.lognex.sklad.back.ejb.exchange.rest.IRestExchangeManagerUser.entityList(java.lang.String,java.lang.String,java.lang.Integer,java.lang.Integer,java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean)</h1><HR size="1" noshade="noshade"><p><b>JBWEB000309: type</b> JBWEB000067: Status report</p><p><b>JBWEB000068: message</b> <u>Unable to extract parameter from http request: javax.ws.rs.QueryParam(&quot;start&quot;) value is '' for public abstract javax.ws.rs.core.StreamingOutput com.lognex.sklad.back.ejb.exchange.rest.IRestExchangeManagerUser.entityList(java.lang.String,java.lang.String,java.lang.Integer,java.lang.Integer,java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean)</u></p><p><b>JBWEB000069: description</b> <u>JBWEB000120: The request sent by the client was syntactically incorrect.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/7.2.0.Final</h3></body></html>
@@ -1 +0,0 @@
1
- <html><head><title>JBoss Web/7.2.0.Final - JBWEB000064: Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif; color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name{color : black;}HR {color : #525D76;}--></style> </head><body><h1>JBWEB000065: HTTP Status 401 - Request attempts limit exceeded, try later</h1><HR size="1" noshade="noshade"><p><b>JBWEB000309: type</b> JBWEB000067: Status report</p><p><b>JBWEB000068: message</b> <u>Request attempts limit exceeded, try later</u></p><p><b>JBWEB000069: description</b> <u>JBWEB000121: This requestrequires HTTP authentication.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/7.2.0.Final</h3></body></html>
@@ -1 +0,0 @@
1
- <html><head><title>JBoss Web/7.2.0.Final - JBWEB000064: Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>JBWEB000065: HTTP Status 401 - </h1><HR size="1" noshade="noshade"><p><b>JBWEB000309: type</b> JBWEB000067: Status report</p><p><b>JBWEB000068: message</b> <u></u></p><p><b>JBWEB000069: description</b> <u>JBWEB000121: This request requires HTTP authentication.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/7.2.0.Final</h3></body></html>
@@ -1,9 +0,0 @@
1
- HTTP/1.1 405 Method Not Allowed
2
- Server: nginx/1.6.1
3
- Date: Thu, 13 Nov 2014 06:52:04 GMT
4
- Content-Type: text/html;charset=utf-8
5
- Content-Length: 1070
6
- Connection: close
7
- Allow: OPTIONS, PUT
8
-
9
- <html><head><title>JBoss Web/7.2.0.Final - JBWEB000064: Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>JBWEB000065: HTTP Status 405 - </h1><HR size="1" noshade="noshade"><p><b>JBWEB000309: type</b> JBWEB000067: Status report</p><p><b>JBWEB000068: message</b> <u></u></p><p><b>JBWEB000069: description</b> <u>JBWEB000125: The specified HTTP method is not allowed for the requested resource.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/7.2.0.Final</h3></body></html>
@@ -1,8 +0,0 @@
1
- HTTP/1.5 500 Internal Server Error
2
- Server: nginx/1.6.1
3
- Date: Thu, 13 Nov 2014 14:40:41 GMT
4
- Content-Type: text/html;charset=utf-8
5
- Content-Length: 370
6
- Connection: close
7
-
8
- <html> <head><title>500 Internal Server Error</title></head> <body bgcolor="white"> <center><h1>500 Internal Server Error</h1></center> <hr><center>nginx/1.6.2</center> </body> </html> : <html> <head><title>500 Internal Server Error</title></head> <body bgcolor="white"> <center><h1>500 Internal Server Error</h1></center> <hr><center>nginx/1.6.2</center> </body> </html>
@@ -1,8 +0,0 @@
1
- HTTP/1.5 502 Bad Gateway
2
- Server: nginx/1.6.1
3
- Date: Thu, 13 Nov 2014 14:40:41 GMT
4
- Content-Type: text/html;charset=utf-8
5
- Content-Length: 164
6
- Connection: close
7
-
8
- <html> <head><title>502 Bad Gateway</title></head> <body bgcolor="white"> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.6.1</center> </body> </html>