Changes
7 changed files (+92/-9)
-
-
@@ -7,6 +7,7 @@ package yamori.work_record.v1;import "yamori/capability/v1/capability_key.proto"; import "yamori/work_record/v1/leave_id.proto"; import "yamori/work_record/v1/leave_revision.proto"; // 休暇や休業。英語としては果てしなく微妙だが、法令の英語表記及び // 一般的な英語の言い回しで「休日」と「休暇 (休業) 」を区別しないため
-
@@ -19,11 +20,22 @@ LeaveID id = 1;// 有給休暇の出勤率計算を行う際に、この休暇・休業を行った日を出勤した // としてみなすかどうか。 bool is_worker_deemed_to_be_worked = 2; // `current_revision.snapshot.is_worker_deemed_to_be_worked` を利用 // すること。このフィールドは削除予定。 bool is_worker_deemed_to_be_worked = 2 [deprecated = true]; string display_name = 3; // この休暇・休業のフィールド・属性を更新するためのキー。 // システムによって作成された休暇・休業の場合もキーが存在しない。 yamori.capability.v1.CapabilityKey update_key = 4; // 現在のバージョンを含む全てのバージョン。 // 適用開始日昇順でソートされており、未来のバージョンも含まれる。 repeated LeaveRevision revisions = 5; // 現在のバージョン。 // この休暇や休業が年月日に紐づいたものである場合はその日時点の // バージョン、マスタデータの場合はサーバ側の現在日もしくは // リクエストで指定された日付時点でのバージョンとなる。 LeaveRevision current_revision = 6; }
-
-
-
@@ -0,0 +1,22 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.work_record.v1; import "yamori/work_record/v1/leave_revision_input.proto"; // 休暇や休業を作成する際のペイロード。 message LeaveCreateInput { // 有給休暇の出勤率計算を行う際に、この休暇・休業を行った日を出勤した // としてみなすかどうか。 // この値は無視されるため `revisions.snapshot` を利用すること。 bool is_worker_deemed_to_be_worked = 1 [deprecated = true]; // [必須] 表示名。 string display_name = 2; // [必須] 作成するバージョン、1つ以上。 repeated LeaveRevisionInput revisions = 3; }
-
-
packages/proto/yamori/work_record/v1/leave_input.proto > packages/proto/yamori/work_record/v1/leave_snapshot.proto
-
@@ -5,12 +5,8 @@ edition = "2023";package yamori.work_record.v1; // 休暇や休業を作成・更新する際のペイロード。 message LeaveInput { message LeaveSnapshot { // 有給休暇の出勤率計算を行う際に、この休暇・休業を行った日を出勤した // としてみなすかどうか。 bool is_worker_deemed_to_be_worked = 1; // 表示名。 string display_name = 2; }
-
-
-
@@ -0,0 +1,24 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.work_record.v1; import "yamori/type/v1/date.proto"; import "yamori/work_record/v1/leave_revision_id.proto"; import "yamori/work_record/v1/leave_snapshot.proto"; // 休暇や休業の定義は常に一定とは限らない。運用中にマスタデータをそのまま変更して // しまうと過去のデータにも影響を与えてしまうため、バージョン管理を行う。 // このメッセージは各バージョンのスナップショット。 // バージョン管理する必要のあるデータだけ含んでいる。 message LeaveRevision { LeaveRevisionID revision_id = 1; // このバージョンを適用する開始日。 yamori.type.v1.Date start_at = 2; // このバージョンでの状態、データ。 LeaveSnapshot snapshot = 3; }
-
-
-
@@ -0,0 +1,12 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.work_record.v1; // 休暇・休業の各バージョンを識別するための ID 。 // `lr-` というプリフィクスを持つ。 message LeaveRevisionID { string value = 1; }
-
-
-
@@ -0,0 +1,17 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.work_record.v1; import "yamori/type/v1/date.proto"; import "yamori/work_record/v1/leave_snapshot.proto"; message LeaveRevisionInput { // このバージョンを適用する開始日。 yamori.type.v1.Date start_at = 1; // このバージョンでの状態、データ。 LeaveSnapshot snapshot = 2; }
-
-
-
@@ -7,7 +7,7 @@ package yamori.workspace.v1;import "yamori/capability/v1/capability_key.proto"; import "yamori/idempotency/v1/key.proto"; import "yamori/work_record/v1/leave_input.proto"; import "yamori/work_record/v1/leave_create_input.proto"; import "yamori/work_record/v1/leave_read_mask.proto"; import "yamori/workspace/v1/workspace_id.proto";
-
@@ -24,5 +24,5 @@ // [必須] 労働者の登録を行うための対象ワークスペースのキー。yamori.capability.v1.CapabilityKey create_leave_definition_key = 4; // [必須] 登録する内容。 yamori.work_record.v1.LeaveInput leave_definition = 5; yamori.work_record.v1.LeaveCreateInput leave_definition = 5; }
-