usps-imis-api 0.3.0 → 0.3.1.pre.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2fd4e1ff81a49f7bf1c0e18fd6f95563d0e59514a68c17ae69f6e18e3e40106d
4
- data.tar.gz: 037cfc9634a8db74cd0fb8fbeca66d1d9c98e9eb8e73b677a6933b6caf8ed0dc
3
+ metadata.gz: 834ce86628190bd9ace2c160a3107d933388927e5a02fe25c7cd63c21755530b
4
+ data.tar.gz: 02312a4890e1aa01d40c6ccdf0c1fbf460a24ae1879d42993e53aa0f12b01dc0
5
5
  SHA512:
6
- metadata.gz: 1cfa43aa4502d9020faebaa25c06d92214ed5484f1ed0f871026be970a3ed37920b50cb00798120e7345f574c628b9426d47e8de39a64a16d33282e5919e3e49
7
- data.tar.gz: 741f1a0444f81f4fb8d8803858d427a9c21508e779431ed48e849412b5ae8c43d871becb8ce83923c5a3545421124258bc5630aa613d603f2ca0cef9ff87c147
6
+ metadata.gz: a85c00d57e593958a3f9c81979e67c78545a89e35c73f31fd988269ca7bcc6f6057d0ffecf400f485818d862a5fced07514aaf04d5f785b84191d834c38ac376
7
+ data.tar.gz: e3ea7891540b35df0ea53aae7b7f618b495267218f9f350374e125b9f30dac03ac079ab39090490f5155c3599e6c24a2a260daaf9ab6ea11c1a6bfd6de791f0f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- usps-imis-api (0.3.0)
4
+ usps-imis-api (0.3.1.pre.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/Readme.md CHANGED
@@ -63,9 +63,13 @@ api.get_imis_id(certificate)
63
63
  This will both return the ID, and store it for use with other requests. If you need to change which
64
64
  member you are working with, just run this method again with the new certificate number.
65
65
 
66
- ### General API Requests
66
+ You can also manually set the current ID, if you already have it for a given member
67
67
 
68
- #### GET
68
+ ```ruby
69
+ api.imis_id = imis_id
70
+ ```
71
+
72
+ ### GET
69
73
 
70
74
  To fetch member data, run e.g.:
71
75
 
@@ -75,7 +79,7 @@ api.imis_id = 31092
75
79
  data = api.get('ABC_ASC_Individual_Demog')
76
80
  ```
77
81
 
78
- #### PUT
82
+ ### PUT Fields
79
83
 
80
84
  To update member data, run e.g.:
81
85
 
@@ -83,40 +87,48 @@ To update member data, run e.g.:
83
87
  api.imis_id = 31092
84
88
 
85
89
  data = { 'MMS_Updated' => Time.now.strftime('%Y-%m-%dT%H:%M:%S'), 'TotMMS' => new_total }
86
- update = api.put_object_fields('ABC_ASC_Individual_Demog', data)
90
+ update = api.put_fields('ABC_ASC_Individual_Demog', data)
87
91
  ```
88
92
 
89
93
  This method fetches the current data structure, and filters it down to just what you want to
90
94
  update, to reduce the likelihood of update collisions or type validation failures.
91
95
 
92
- ### Public Methods
96
+ ### PUT
93
97
 
94
- Convert a member's certificate number into an iMIS ID number
98
+ To update member data, run e.g.:
95
99
 
96
100
  ```ruby
97
- api.get_imis_id(certificate)
101
+ api.imis_id = 31092
102
+
103
+ update = api.put('ABC_ASC_Individual_Demog', complete_imis_object)
98
104
  ```
99
105
 
100
- Manually set the current ID, if you already have it for a given member
106
+ This method requires a complete iMIS data structure.
101
107
 
102
- ```ruby
103
- api.imis_id = imis_id
104
- ```
108
+ ### POST
105
109
 
106
- GET a business object for the current member
110
+ To create new member data, run e.g.:
107
111
 
108
112
  ```ruby
109
- api.get(business_object_name)
113
+ created = api.post('ABC_ASC_Individual_Demog', complete_imis_object)
110
114
  ```
111
115
 
112
- Update only specific fields on a business object for the current member
116
+ This method requires a complete iMIS data structure.
117
+
118
+ ### DELETE
113
119
 
114
- `fields` is a hash of shape: `{ field_name => new_value }`
120
+ To remove member data, run e.g.:
115
121
 
116
122
  ```ruby
117
- api.put_fields(business_object_name, fields)
123
+ api.imis_id = 31092
124
+
125
+ api.delete('ABC_ASC_Individual_Demog')
118
126
  ```
119
127
 
128
+ This returns a blank string on success.
129
+
130
+ ### QUERY
131
+
120
132
  Run an IQA Query
121
133
 
122
134
  `query_params` is a hash of shape: `{ param_name => param_value }`
@@ -185,7 +197,11 @@ api.with(31092) do
185
197
  mapper.update(mm: 15)
186
198
 
187
199
  update(mm: 15)
200
+ end
201
+ ```
188
202
 
203
+ ```ruby
204
+ api.with(6374) do
189
205
  panels.vsc.get(1417)
190
206
  end
191
207
  ```
data/lib/usps/imis/api.rb CHANGED
@@ -17,7 +17,7 @@ module Usps
17
17
  # Manually set the current ID, if you already have it for a given member
18
18
  #
19
19
  def imis_id=(id)
20
- @imis_id = id.to_s
20
+ @imis_id = id.to_i
21
21
  end
22
22
 
23
23
  # Convert a member's certificate number into an iMIS ID number
@@ -4,6 +4,9 @@ module Usps
4
4
  module Imis
5
5
  class Mapper
6
6
  FIELD_MAPPING = {
7
+ grade: %w[ABC_ASC_Individual_Demog Grade],
8
+ edpro: %w[ABC_ASC_Individual_Demog Educ_Proficiency],
9
+ edach: %w[ABC_ASC_Individual_Demog Educ_Achievement],
7
10
  vessel_examiner: %w[ABC_ASC_Individual_Demog Vol_Vessel_Examiner],
8
11
  mm: %w[ABC_ASC_Individual_Demog TotMMS],
9
12
  mm_updated: %w[ABC_ASC_Individual_Demog MMS_Updated]
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Usps
4
4
  module Imis
5
- VERSION = '0.3.0'
5
+ VERSION = '0.3.1-2'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: usps-imis-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1.pre.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julian Fiander
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-10-30 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies: []
13
12
  description: A wrapper for the iMIS API.
14
13
  email: jsfiander@gmail.com
@@ -45,7 +44,6 @@ homepage: http://rubygems.org/gems/usps-imis-api
45
44
  licenses: []
46
45
  metadata:
47
46
  rubygems_mfa_required: 'true'
48
- post_install_message:
49
47
  rdoc_options: []
50
48
  require_paths:
51
49
  - lib
@@ -60,8 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
60
58
  - !ruby/object:Gem::Version
61
59
  version: '0'
62
60
  requirements: []
63
- rubygems_version: 3.5.6
64
- signing_key:
61
+ rubygems_version: 3.6.9
65
62
  specification_version: 4
66
63
  summary: iMIS API Wrapper
67
64
  test_files: []