minimum_wage_jp
日本の地域別最低賃金(都道府県別)をシンプルに扱うための Rust クレートです。
特徴
- 指定日の最低賃金(円)を取得
- 指定時給が最低賃金を満たすか判定(不足額も算出)
- 年度(改定年)を指定して率を取得
- データは埋め込み済み、適用開始日前は前年データに自動フォールバック
インストール
[]
= "1"
クイックスタート
use NaiveDate;
use ;
// 都道府県コード: 1 = 北海道, 13 = 東京都, 47 = 沖縄県
let hokkaido: u8 = 1;
// 今日の最低賃金(円)を取得
let rate_today = rate.unwrap;
println!;
// 指定日の最低賃金(円)を取得
let date = from_ymd_opt.unwrap;
let rate = rate_on_date.unwrap;
assert_eq!;
// 時給が最低賃金を満たすか判定
let result = is_compliant_on_date.unwrap;
match result
API
最低賃金の取得
| メソッド | 説明 |
|---|---|
rate(pref: u8) |
今日の最低賃金(円)を取得 |
rate_on_date(date: NaiveDate, pref: u8) |
指定日の最低賃金(円)を取得 |
rate_for_revision(year: u16, pref: u8) |
指定年版(改定年)の最低賃金を取得 |
コンプライアンス判定
| メソッド | 説明 |
|---|---|
is_compliant(pref: u8, hourly_yen: u32) |
今日の時給が最低賃金を満たすか判定 |
is_compliant_on_date(date: NaiveDate, pref: u8, hourly_yen: u32) |
指定日の時給が最低賃金を満たすか判定 |
戻り値の型
エラー型
| エラー | 説明 |
|---|---|
InvalidPrefCode(u8) |
都道府県コードが 1〜47 の範囲外 |
DatasetNotFoundForDate { date, prev, next } |
指定日のデータが存在しない |
DatasetNotFoundForYear { year } |
指定年版のデータが存在しない |
都道府県コード
JIS X 0401 に準拠した 1〜47 の数値コードを使用します。
| コード | 都道府県 | コード | 都道府県 | コード | 都道府県 |
|---|---|---|---|---|---|
| 1 | 北海道 | 17 | 石川県 | 33 | 岡山県 |
| 2 | 青森県 | 18 | 福井県 | 34 | 広島県 |
| 3 | 岩手県 | 19 | 山梨県 | 35 | 山口県 |
| 4 | 宮城県 | 20 | 長野県 | 36 | 徳島県 |
| 5 | 秋田県 | 21 | 岐阜県 | 37 | 香川県 |
| 6 | 山形県 | 22 | 静岡県 | 38 | 愛媛県 |
| 7 | 福島県 | 23 | 愛知県 | 39 | 高知県 |
| 8 | 茨城県 | 24 | 三重県 | 40 | 福岡県 |
| 9 | 栃木県 | 25 | 滋賀県 | 41 | 佐賀県 |
| 10 | 群馬県 | 26 | 京都府 | 42 | 長崎県 |
| 11 | 埼玉県 | 27 | 大阪府 | 43 | 熊本県 |
| 12 | 千葉県 | 28 | 兵庫県 | 44 | 大分県 |
| 13 | 東京都 | 29 | 奈良県 | 45 | 宮崎県 |
| 14 | 神奈川県 | 30 | 和歌山県 | 46 | 鹿児島県 |
| 15 | 新潟県 | 31 | 鳥取県 | 47 | 沖縄県 |
| 16 | 富山県 | 32 | 島根県 |
データセット
同梱データ
| 年版 | 適用開始日 |
|---|---|
| 2024 | 2024-10-01 |
| 2025 | 2025-10-01 |
仕様
- 指定日に適用される最新の年版を自動選択
- 都道府県ごとの適用開始日が異なる場合、適用日前は前年版にフォールバック
- 例: 北海道の 2025 年版適用開始日は 2025-10-04
- 最初の年版より前の日付を指定した場合はエラーを返却
タイムゾーンについて
rate() および is_compliant() は chrono::Local を使用してローカル日付を取得します。
サーバ・クライアント間でタイムゾーンが異なる環境では、rate_on_date() / is_compliant_on_date() の使用を推奨します。
テスト
貢献
新しい年版の追加や適用開始日の修正は src/dataset.rs を編集してください。
変更時はテストも併せて更新し、フォールバック仕様が正しく動作することを確認してください。
ライセンス
MIT License