カスタムデータスキーマの定義
チケット発行アプリケーションでは、カスタム データ フィールドと選択が必要です。 カスタムデータスキーマを定義するには、Liferay オブジェクト と 選択リスト を使用します。
カスタムピックリストの作成
ピックリストは、ユーザーが選択できるあらかじめ決められた値のリストです。 チケットのステータス、チケットの種類、チケットの優先度などのカスタム フィールドには、選択リストが必要です。
カスタムピックリストを展開する
次のコマンドを使用して、 liferay-ticket-batch-list-type-definition クライアント拡張機能をデプロイします。
./gradlew :client-extensions:liferay-ticket-batch-list-type-definition:deploy
コントロール パネル → ピックリストに移動します。 5 つの新しい選択リストが作成されたことを確認します。

カスタム選択リストコードの検証
各クライアント拡張プロジェクトは、 client-extension.yaml ファイルによって定義されます。 最初のセクションでは、デプロイ可能な .zip ファイルに含まれるファイルを指定する assemble ブロックを定義します。 このクライアント拡張機能の アセンブル ブロックは次のようになります。
assemble:
- from: batch
into: batch
詳細については、 クライアント拡張機能の組み立て を参照してください。
この リスト型バッチ クライアント拡張は、 バッチ型 クライアント拡張です。 次のように定義されます。
liferay-ticket-batch-list-type-definition:
name: Liferay Ticket Batch List Type Definition
oAuthApplicationHeadlessServer: liferay-ticket-batch-list-type-definition-oauth-application-headless-server
type: batch
各プロパティの説明については、 バッチ YAML 構成リファレンス を参照してください。
クライアント拡張機能は、 バッチ エンジン ヘッドレス API と ピックリスト ヘッドレス APIを利用します。 安全な API リクエストを行うために、クライアント拡張機能は OAuth2 認証を使用するように構成されています。 次のように定義されます。
liferay-ticket-batch-list-type-definition-oauth-application-headless-server:
.serviceAddress: localhost:8080
.serviceScheme: http
name: Liferay Ticket Batch List Type Definition OAuth Application Headless Server
scopes:
- Liferay.Headless.Admin.List.Type.everything
- Liferay.Headless.Batch.Engine.everything
type: oAuthApplicationHeadlessServer
Liferay.Headless.Admin.List.Type リソースと Liferay.Headless.Batch.Engine リソースには完全な CRUD アクセスが付与されていることに注意してください。
完全な定義については、 client-extension.yaml を参照してください。
5 つのピックリストとその選択項目は、クライアント拡張機能の /batch/ フォルダーにある JSON ファイルで定義されています。 完全な定義については、 list-type-definition.batch-engine-data.json ファイルを参照してください。
カスタムオブジェクトの作成
ピックリストが定義されると、アプリケーションのカスタム オブジェクトを作成できます。
カスタムオブジェクトをデプロイする
次のコマンドを使用して、 liferay-ticket-batch-object-definition クライアント拡張機能をデプロイします。
./gradlew :client-extensions:liferay-ticket-batch-object-definition:deploy
Liferayで、 コントロールパネル → オブジェクトに移動します。 新しいチケット オブジェクトが作成されたことを確認します。

カスタムオブジェクトコードの検査
この liferay-ticket-batch-object-definition クライアント拡張は、 バッチ タイプ クライアント拡張でもあります。 クライアント拡張の YAML ファイルは、
liferay-ticket-batch-list-type-definition クライアント拡張と同じ方法で定義されます。 各プロパティの説明については、 バッチ YAML 構成リファレンス を参照してください。
完全な定義については、 client-extension.yaml を参照してください。
カスタム チケット オブジェクトは、クライアント拡張機能の /batch/ フォルダーにある JSON ファイルで定義されます。 完全な定義については、 object-definition.batch-engine-data.json ファイルを参照してください。
API を介したチケットデータの生成
カスタム チケット オブジェクトが完成したら、Liferay 内で新しいチケット エントリを作成できます。 オブジェクトの REST API を使用してインポートすることもできます。
チケットエントリを生成するには、以下のコマンドを実行します。
./gradlew :client-extensions:liferay-ticket-batch-object-entry:deploy
Liferayで、 コントロールパネル → チケットに移動します。 新しいチケットエントリが作成されたことを確認します。

次へ: チケットシステムにカスタムテーマ を適用します。