Changes
14 changed files (+254/-0)
-
-
@@ -9,6 +9,7 @@ import "yamori/capability/v1/capability_key.proto";import "yamori/idempotency/v1/key.proto"; import "yamori/paid_leave_provision/v1/paid_leave_provision_table_id.proto"; import "yamori/type/v1/date.proto"; import "yamori/worker/v1/custom_field.proto"; import "yamori/worker/v1/worker_read_mask.proto"; import "yamori/workspace/v1/workspace_id.proto";
-
@@ -22,6 +23,9 @@ yamori.workspace.v1.WorkspaceID workspace_id = 2;// [必須] 労働者の表示名。 string display_name = 3; // カスタムフィールドの一覧。 repeated CustomField custom_fields = 8; // 初回の年次有給休暇の付与日。 yamori.type.v1.Date first_paid_leave_provision_at = 6;
-
-
-
@@ -0,0 +1,18 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.worker.v1; import "yamori/workspace/v1/custom_field_definition.proto"; option go_package = "pocka.jp/x/yamori/proto/go/worker/v1"; message CustomField { // [必須] ワークスペースで設定されている、このカスタムフィールドの定義。 yamori.workspace.v1.CustomFieldDefinition definition = 1; // カスタムフィールドの値。 string value = 2; }
-
-
-
@@ -9,6 +9,7 @@ import "yamori/capability/v1/capability_key.proto";import "yamori/paid_leave_provision/v1/paid_leave_provision_table.proto"; import "yamori/type/v1/date.proto"; import "yamori/work_record/v1/work_record.proto"; import "yamori/worker/v1/custom_field.proto"; import "yamori/worker/v1/paid_leave_provision.proto"; import "yamori/worker/v1/worker_id.proto";
-
@@ -38,4 +39,7 @@ yamori.paid_leave_provision.v1.PaidLeaveProvisionTable paid_leave_provision_table = 7;// 初回の年次有給休暇の付与日。 yamori.type.v1.Date first_paid_leave_provision_at = 8; // カスタムフィールドの一覧。 repeated CustomField custom_fields = 9; }
-
-
-
@@ -0,0 +1,22 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/capability/v1/capability_key.proto"; import "yamori/workspace/v1/workspace_id.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message CreateCustomFieldDefinitionRequest { // [必須] 追加する対象のワークスペース。 WorkspaceID workspace_id = 1; // カスタムフィールドの定義の変更を行うためのキー。 yamori.capability.v1.CapabilityKey custom_field_definitions_write_key = 2; // [必須] 表示名。 string display_name = 3; }
-
-
-
@@ -0,0 +1,33 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/error/v1/capability_error.proto"; import "yamori/error/v1/missing_field_error.proto"; import "yamori/error/v1/not_found.proto"; import "yamori/error/v1/system_error.proto"; import "yamori/workspace/v1/custom_field_definition.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message CreateCustomFieldDefinitionResponse { oneof result { // 作成されたカスタムフィールド。 CustomFieldDefinition ok = 1; // システムエラーが発生した。 yamori.error.v1.SystemError system_error = 2; // 必須フィールドに値が入っていないため保存されなかった。 yamori.error.v1.MissingFieldError missing_field = 3; // 対象のワークスペースが存在しない。 yamori.error.v1.NotFound not_found = 4; // 作成する権限がない。 yamori.error.v1.CapabilityError capability_error = 5; } }
-
-
-
@@ -6,6 +6,7 @@package yamori.workspace.v1; import "yamori/idempotency/v1/key.proto"; import "yamori/workspace/v1/custom_field_definition.proto"; import "yamori/workspace/v1/workspace_read_mask.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1";
-
@@ -15,6 +16,9 @@ yamori.idempotency.v1.Key idempotency_key = 1;// [必須] ワークスペースの表示名。 string display_name = 2; // カスタムフィールドの一覧。 repeated CustomFieldDefinition custom_field_definitions = 4; // CreateResponse.ok.workspace に対してかけるフィールドマスク。 WorkspaceReadMask read_mask = 3;
-
-
-
@@ -0,0 +1,17 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/workspace/v1/custom_field_definition_id.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message CustomFieldDefinition { CustomFieldDefinitionID id = 1; // 表示名。実際にユーザが目にするもの。 string display_name = 2; }
-
-
-
@@ -0,0 +1,14 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; // システムによって割り振られたシステム内で一意の識別子。 // カスタムフィールド定義の ID は `cf-` というプリフィクスを持つ。 message CustomFieldDefinitionID { string value = 1; }
-
-
-
@@ -0,0 +1,23 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/capability/v1/capability_key.proto"; import "yamori/workspace/v1/custom_field_definition_id.proto"; import "yamori/workspace/v1/workspace_id.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message DeleteCustomFieldDefinitionRequest { // [必須] 対象のカスタムフィールド定義が存在するワークスペース。 WorkspaceID workspace_id = 1; // カスタムフィールドの定義の変更を行うためのキー。 yamori.capability.v1.CapabilityKey custom_field_definitions_write_key = 2; // 削除する対象の ID 。 CustomFieldDefinitionID custom_field_definition_id = 3; }
-
-
-
@@ -0,0 +1,33 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/error/v1/capability_error.proto"; import "yamori/error/v1/missing_field_error.proto"; import "yamori/error/v1/not_found.proto"; import "yamori/error/v1/system_error.proto"; import "yamori/workspace/v1/custom_field_definition.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message DeleteCustomFieldDefinitionResponse { oneof result { // 削除されたカスタムフィールド定義。 CustomFieldDefinition ok = 1; // システムエラーが発生した。 yamori.error.v1.SystemError system_error = 2; // 必須フィールドに値が入っていないため更新されなかった。 yamori.error.v1.MissingFieldError missing_field = 3; // 対象のワークスペース、もしくはカスタムフィールド定義が存在しない。 yamori.error.v1.NotFound not_found = 4; // 削除する権限がない。 yamori.error.v1.CapabilityError capability_error = 5; } }
-
-
-
@@ -0,0 +1,26 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/capability/v1/capability_key.proto"; import "yamori/workspace/v1/custom_field_definition_id.proto"; import "yamori/workspace/v1/workspace_id.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message UpdateCustomFieldDefinitionRequest { // [必須] 対象のカスタムフィールド定義が存在するワークスペース。 WorkspaceID workspace_id = 1; // カスタムフィールドの定義の変更を行うためのキー。 yamori.capability.v1.CapabilityKey custom_field_definitions_write_key = 2; // 更新する対象の ID 。 CustomFieldDefinitionID custom_field_definition_id = 3; // 表示名。 string display_name = 4; }
-
-
-
@@ -0,0 +1,33 @@// SPDX-FileCopyrightText: 2025 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only edition = "2023"; package yamori.workspace.v1; import "yamori/error/v1/capability_error.proto"; import "yamori/error/v1/missing_field_error.proto"; import "yamori/error/v1/not_found.proto"; import "yamori/error/v1/system_error.proto"; import "yamori/workspace/v1/custom_field_definition.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1"; message UpdateCustomFieldDefinitionResponse { oneof result { // 更新後のカスタムフィールド。 CustomFieldDefinition ok = 1; // システムエラーが発生した。 yamori.error.v1.SystemError system_error = 2; // 必須フィールドに値が入っていないため更新されなかった。 yamori.error.v1.MissingFieldError missing_field = 3; // 対象のワークスペース、もしくはカスタムフィールド定義が存在しない。 yamori.error.v1.NotFound not_found = 4; // 更新する権限がない。 yamori.error.v1.CapabilityError capability_error = 5; } }
-
-
-
@@ -9,6 +9,7 @@ import "yamori/capability/v1/capability_key.proto";import "yamori/paid_leave_provision/v1/paid_leave_provision_table.proto"; import "yamori/work_record/v1/leave.proto"; import "yamori/workspace/v1/abbreviations.proto"; import "yamori/workspace/v1/custom_field_definition.proto"; import "yamori/workspace/v1/workspace_id.proto"; option go_package = "pocka.jp/x/yamori/proto/go/workspace/v1";
-
@@ -42,4 +43,10 @@ yamori.capability.v1.CapabilityKey create_leave_definition_key = 7;// 有給休暇の付与日数テーブルの一覧。 repeated yamori.paid_leave_provision.v1.PaidLeaveProvisionTable paid_leave_provision_tables = 8; // ワークスペース内の労働者に設定できるカスタムフィールドの一覧。 repeated CustomFieldDefinition custom_field_definitions = 10; // カスタムフィールドの定義の変更を行うためのキー。 yamori.capability.v1.CapabilityKey custom_field_definitions_write_key = 11; }
-
-
-
@@ -5,10 +5,14 @@ edition = "2023";package yamori.workspace.v1; import "yamori/workspace/v1/create_custom_field_definition_request.proto"; import "yamori/workspace/v1/create_custom_field_definition_response.proto"; import "yamori/workspace/v1/create_leave_definition_request.proto"; import "yamori/workspace/v1/create_leave_definition_response.proto"; import "yamori/workspace/v1/create_request.proto"; import "yamori/workspace/v1/create_response.proto"; import "yamori/workspace/v1/delete_custom_field_definition_request.proto"; import "yamori/workspace/v1/delete_custom_field_definition_response.proto"; import "yamori/workspace/v1/delete_leave_definition_request.proto"; import "yamori/workspace/v1/delete_leave_definition_response.proto"; import "yamori/workspace/v1/delete_request.proto";
-
@@ -17,6 +21,8 @@ import "yamori/workspace/v1/get_request.proto";import "yamori/workspace/v1/get_response.proto"; import "yamori/workspace/v1/list_request.proto"; import "yamori/workspace/v1/list_response.proto"; import "yamori/workspace/v1/update_custom_field_definition_request.proto"; import "yamori/workspace/v1/update_custom_field_definition_response.proto"; import "yamori/workspace/v1/update_request.proto"; import "yamori/workspace/v1/update_response.proto";
-
@@ -43,4 +49,14 @@ rpc CreateLeaveDefinition(CreateLeaveDefinitionRequest) returns (CreateLeaveDefinitionResponse);// ワークスペースに存在する休暇休業の定義を削除する。 rpc DeleteLeaveDefinition(DeleteLeaveDefinitionRequest) returns (DeleteLeaveDefinitionResponse); // ワークスペースにカスタムフィールド定義を追加する。 rpc CreateCustomFieldDefinition(CreateCustomFieldDefinitionRequest) returns (CreateCustomFieldDefinitionResponse); // ワークスペースに登録されているカスタムフィールド定義の一つを更新する。 rpc UpdateCustomFieldDefinition(UpdateCustomFieldDefinitionRequest) returns (UpdateCustomFieldDefinitionResponse); // ワークスペースに登録されているカスタムフィールド定義の一つを削除する。 // 労働者に設定された該当のカスタムフィールドも全て削除される。 rpc DeleteCustomFieldDefinition(DeleteCustomFieldDefinitionRequest) returns (DeleteCustomFieldDefinitionResponse); }
-