kirico 0.1.3 → 0.1.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: 509096a9019dc94c96f63802979b7f7fc85261d2
4
- data.tar.gz: edd24c57291b695f87321a9406ad721420801720
3
+ metadata.gz: 6c4627b33a39bccf807dad907f29ac1a27759a1e
4
+ data.tar.gz: 01f7bcbd94b549c5355a399da93563694952c911
5
5
  SHA512:
6
- metadata.gz: cc6f911e48dfffcec6398f095b7329679511140e029baf7b04530a887af919d0f0ef7c777f64e6b75bdf7660075c8b11424302b375cefc845cc98263f81cb46c
7
- data.tar.gz: 2a021ec0c08e49f41c10356b7e7c6b63925c8703e8849b1832601b6b026a13d91b5e47bfd9ce8c83c3511e766c07b88acc396f17108a61b3e4f0d668ccddf199
6
+ metadata.gz: a1b217e440827287d6938b778aad6d15d042789323d2a3e33f721dec38ba3316c8bd24a9564c8e5c289afaa0be022dfe7e14e52618ddb6b2ec02b5f457c26c40
7
+ data.tar.gz: eb0ef8835a41d38e02abadd3a56ed7e6a2f02e34282864f7ec4b9be5a0e6d5733b1f43cd208079d04d5c2730bb703ed08ad8b04e220effc3a3e7daf12b595edb
data/LICENSE.md ADDED
@@ -0,0 +1,7 @@
1
+ Copyright (c) 2017 Kensuke NAITO and KUFU, Inc.
2
+
3
+ 以下に定める条件に従い、本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)の複製を取得するすべての人に対し、ソフトウェアを無制限に扱うことを無償で許可します。これには、ソフトウェアの複製を使用、複写、変更、結合、掲載、頒布、サブライセンス、および/または販売する権利、およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます。
4
+
5
+ 上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製または重要な部分に記載するものとします。
6
+
7
+ ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。ここでいう保証とは、商品性、特定の目的への適合性、および権利非侵害についての保証も含みますが、それに限定されるものではありません。 作者または著作権者は、契約行為、不法行為、またはそれ以外であろうと、ソフトウェアに起因または関連し、あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求、損害、その他の義務について何らの責任も負わないものとします。
data/README.md CHANGED
@@ -1,45 +1,230 @@
1
- <img width="446" alt="kirico-logo" src="https://cloud.githubusercontent.com/assets/2214179/22500174/267fa8a8-e8a6-11e6-905f-fc79a049afab.png">
1
+ <img width="300" alt="kirico-logo" src="https://cloud.githubusercontent.com/assets/2214179/22500174/267fa8a8-e8a6-11e6-905f-fc79a049afab.png">
2
2
 
3
- # Kirico
3
+ # kirico
4
4
 
5
5
  [![CircleCI](https://circleci.com/gh/kufu/kirico.svg?style=svg)](https://circleci.com/gh/kufu/kirico)
6
6
 
7
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/kirico`. To experiment with that code, run `bin/console` for an interactive prompt.
7
+ A Ruby implementation of 届書作成プログラム
8
8
 
9
- TODO: Delete this and the text above, and describe your gem
9
+ ## 理念
10
10
 
11
- ## Installation
11
+ 2008 年より[電子政府(e-Gov)のウェブサイト](http://www.e-gov.go.jp/shinsei/index.html)上で社会保険・労働保険関連手続きの電子申請の受付が開始されました。
12
+ 2010 年には e-Gov の使い勝手の向上を図り、一括申請機能の提供が開始されました。
13
+ そして 2014 年 10 月、さらなる利便性の向上を目的に、外部連携 API 仕様が公開されました。
12
14
 
13
- Add this line to your application's Gemfile:
15
+ これまで様々な取組が行われてきた一方で、確定申告などで利用される国税の電子申告(e-Tax)と比べるとまだまだ普及度が低いのが実情です。
16
+ また、一部の電子申請では年金機構の公開する「届書作成プログラム」を利用して CSV ファイルを生成する必要があり、一般利用者、ソフトウェア開発者共に負担となるものでした。
17
+
18
+ わたしたちは kirico の開発・公開によって CSV 形式の電子申請への対応を容易にすることで e-Gov 外部連携 API に対応したソフトウェアが増えることを期待します。
19
+ そして、電子政府の認知度の向上、利用率の向上、及び利用の拡大に貢献し、もってユーザの利便性の向上を目指します。
20
+
21
+
22
+ ## インストール
23
+
24
+ Gemfile に追記して:
14
25
 
15
26
  ```ruby
16
27
  gem 'kirico'
17
28
  ```
18
29
 
19
- And then execute:
30
+ bundle コマンドを実行します:
31
+
32
+ ```bash
33
+ $ bundle
34
+ ```
35
+
36
+ もしくは、直接インストール:
37
+
38
+ ```bash
39
+ $ gem install kirico
40
+ ```
41
+
42
+ ## 使い方
43
+
44
+
45
+ <img width="500" alt="data structure" src="https://cloud.githubusercontent.com/assets/2214179/23646339/c7f056b6-0353-11e7-9632-b1aeb0ed3458.png">
46
+
47
+ _データ構造: 仕様書 p.6-2 より_
48
+
49
+
50
+ **FD 管理レコード**
51
+
52
+ ```ruby
53
+ require 'kirico'
54
+ require 'i18n'
55
+ I18n.locale = :ja
56
+
57
+ # FD 管理レコード
58
+ fd = Kirico::FDManagementRecord.new do |rec|
59
+ rec.area_code = '03'
60
+ rec.office_code = 'キリコ'
61
+ rec.fd_seq_number = '001'
62
+ rec.created_at = Date.new(2017, 1, 1)
63
+ end
64
+
65
+ fd.valid? #=> true
66
+
67
+ fd.office_code = 'ほげ'
68
+ fd.valid? #=> false
69
+ fd.errors #=> 略
70
+ ```
71
+
72
+ **事業所情報**
73
+
74
+ ```ruby
75
+ require 'kirico'
76
+ require 'i18n'
77
+ I18n.locale = :ja
78
+
79
+ # 事業所情報
80
+ company = Kirico::Company.new do |rec|
81
+ rec.area_code = '03'
82
+ rec.office_code = 'キリコ'
83
+ rec.office_number = '1234'
84
+ rec.zip_code1 = '123'
85
+ rec.zip_code2 = '4567'
86
+ rec.address = '東京都世田谷区上馬0-0-0'
87
+ rec.name = '株式会社印度カレー'
88
+ rec.owner_name = '内藤 キリコ'
89
+ rec.tel_number = '03-0000-0000'
90
+ end
91
+
92
+ company.valid? #=> true
93
+
94
+ company.name = '株式会社印度咖喱'
95
+ company.valid? #=> false
96
+ company.errors #=> 略
97
+ ```
98
+
99
+ **データレコード(住所変更届)**
100
+
101
+ ```ruby
102
+ # 住所変更届データレコード
103
+ address_record = Kirico::ChangingAddressRecord.new do |rec|
104
+ rec.area_code = '03'
105
+ rec.office_code = 'キリコ'
106
+ rec.ip_code = '100'
107
+ rec.basic_pension_number1 = '1234'
108
+ rec.basic_pension_number2 = '567890'
109
+ rec.birth_at = Date.new(1984, 7, 23)
110
+ rec.zip_code1 = '123'
111
+ rec.zip_code2 = '4567'
112
+ rec.new_address_yomi = 'トウキョウトシブヤクサクラガオカ'
113
+ rec.new_address = '東京都渋谷区桜丘'
114
+ rec.updated_at = Date.new(2017, 3, 7)
115
+ rec.ip_name_yomi = 'タナカ タロウ'
116
+ rec.ip_name = '田中 太郎'
117
+ rec.old_address_yomi = 'トウキョウトオオタクウノキ'
118
+ rec.old_address = '東京都大田区鵜の木'
119
+ rec.memo = 'メモメモ'
120
+ end
121
+
122
+ address_record.valid? #=> true
123
+
124
+ address_record.ip_name_yomi = 'タナカタロウ'
125
+ address_record.valid? #=> false
126
+ address_record.errors #=> 略
127
+ ```
128
+
129
+ **CSV 生成用フォーム**
130
+
131
+ ```ruby
132
+
133
+ # FD 管理用レコード
134
+ fd = Kirico::FDManagementRecord.new do |rec|
135
+ rec.area_code = '03'
136
+ # ...
137
+ end
138
+
139
+ company = Kirico::Company.new do |rec|
140
+ rec.area_code = '03'
141
+ # ...
142
+ end
143
+
144
+ address_record = Kirico::ChangingAddressRecord.new do |rec|
145
+ rec.area_code = '03'
146
+ # ...
147
+ end
148
+
149
+ form = Kirico::Form.new(fd: fd, company: company, records: [address_record])
150
+ form.valid? #=> true
151
+
152
+ # CSV ファイルの生成
153
+ File.open(Kirico::Form::FILE_NAME, 'w') do |f|
154
+ f.puts(form.to_csv)
155
+ end
156
+ ```
157
+
158
+
159
+ ## 生成した CSV の検証
20
160
 
21
- $ bundle
161
+ 日本年金機構の公開している検証プログラムで生成した CSV ファイルを検証することもできます。
162
+ ※動作には Windows 環境が必要となります
22
163
 
23
- Or install it yourself as:
164
+ <img width="400" alt="kirico-logo" src="https://cloud.githubusercontent.com/assets/2214179/23650706/609ed1e6-0366-11e7-92d9-625354982b9f.png">
24
165
 
25
- $ gem install kirico
166
+ 検証プログラムのダウンロードはこちらから。
167
+ [届出システムを自社開発または市販ソフトを使用する場合|日本年金機構](https://www.nenkin.go.jp/denshibenri/setsumei/20150415.html)
26
168
 
27
- ## Usage
28
169
 
29
- TODO: Write usage instructions here
170
+ ## 対応手続き
30
171
 
31
- ## Development
172
+ | データレコード | クラス名 | 実装状況 |
173
+ | ------ | ------ | ------ |
174
+ | 資格取得届データレコード | TBD | △ |
175
+ | 資格喪失届データレコード | TBD | △ |
176
+ | 住所変更届データレコード | Kirico::ChangingAddressRecord | ◯ |
177
+ | 算定基礎届データレコード | TBD | △ |
178
+ | 月額変更届データレコード | TBD | △ |
179
+ | 賞与支払届データレコード | TBD | △ |
180
+ | 被扶養者(異動)届データレコード | TBD | △ |
181
+ | 3号関係届(資格取得)データレコード | TBD | △ |
182
+ | 3号関係届(資格喪失)データレコード | TBD | △ |
183
+ | 3号関係届(志望)データレコード | TBD | △ |
184
+ | 国民年金第3号被保険者<br><br/>被扶養配偶者非該当届データレコード | TBD | △ |
32
185
 
33
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
34
186
 
35
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
187
+ ※実装状況について
188
+
189
+ - ◯: 実装、テスト済み
190
+ - △: 実装予定
191
+
192
+ ## 参考リンク
193
+
194
+ - [届出システムを自社開発または市販ソフトを使用する場合|日本年金機構](https://www.nenkin.go.jp/denshibenri/setsumei/20150415.html)
195
+ 届書作成プログラム仕様について
36
196
 
37
197
  ## Contributing
38
198
 
39
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/kirico.
199
+ 1. Fork it ( https://github.com/kufu/kirico/fork )
200
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
201
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
202
+ 4. Push to the branch (`git push origin my-new-feature`)
203
+ 5. Create a new Pull Request
204
+
205
+
206
+ ## Copyright
207
+
208
+ Copyright (c) 2017 Kensuke NAITO and KUFU, Inc.
209
+ ライセンスはこちら: [kirico/LICENSE.md](https://github.com/kufu/kirico/blob/master/LICENSE.md)
210
+
211
+
212
+ # KUFU について
213
+
214
+ ![KUFU logo](https://raw.githubusercontent.com/wiki/kufu/kiji/images/logo_kufu.png)
215
+
216
+ kirico は株式会社 KUFU によってメンテナンス、開発が行われています。
217
+ わたしたちは OSS の力を信じています。
218
+
219
+ KUFU では OSS 活動に積極的なエンジニアを募集しています!
40
220
 
221
+ [「雇用」×「国のAPI」をハックする Ruby エンジニア募集!](https://www.wantedly.com/projects/3788)
41
222
 
42
- ## License
43
223
 
44
- The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
224
+ # kirico について
45
225
 
226
+ 切子(kirico)とは江戸時代末期より生産されている伝統的なガラス細工です。
227
+ 中でも薩摩切子は薩摩藩御用達の工芸品であり、多くの大名に珍重されてきました。
228
+ 色付きの厚いガラスを被せ文様を彫るため、薄く繊細な江戸切子と比較すると、重厚な印象が特徴的です。
229
+ 幕末の動乱の中で生産設備に壊滅的な被害を受け、その技術は一時途絶えていましたが、
230
+ 近年、各地の職人の努力により復刻に成功しました。
@@ -68,6 +68,8 @@ module Kirico
68
68
  # value.blank? はタブ文字等の場合でも true となるため注意
69
69
  return error_chars if value.nil? || value.empty?
70
70
 
71
+ # e-Gov では U+FF0D (FULLWIDTH HYPHEN-MINUS) を許容しているようだ
72
+ # -> Shift_JIS ではなく CP932 が適当
71
73
  match = regex(options[:accept]).match(value.encode('CP932'))
72
74
  return error_chars if match.nil?
73
75
 
@@ -48,7 +48,7 @@ module Kirico
48
48
  end
49
49
 
50
50
  def validate_each(record, attribute, value = '')
51
- value_length = value.to_s.encode('Shift_JIS', undef: :replace).bytesize
51
+ value_length = value.to_s.encode('CP932', undef: :replace).bytesize
52
52
 
53
53
  errors_options = options.except(*RESERVED_OPTIONS)
54
54
 
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Kirico
3
- VERSION = '0.1.3'
3
+ VERSION = '0.1.4'
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kirico
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - kakipo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-06 00:00:00.000000000 Z
11
+ date: 2017-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -248,7 +248,7 @@ files:
248
248
  - ".ruby-version"
249
249
  - Gemfile
250
250
  - Guardfile
251
- - LICENSE.txt
251
+ - LICENSE.md
252
252
  - README.md
253
253
  - Rakefile
254
254
  - bin/console
data/LICENSE.txt DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2016 kakipo
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.