Building a Custom Ticketing System
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

カスタムデータスキーマの定義

チケット発行アプリケーションでは、カスタム データ フィールドと選択が必要です。 カスタムデータスキーマを定義するには、Liferay オブジェクト選択リスト を使用します。

カスタムピックリストの作成

ピックリストは、ユーザーが選択できるあらかじめ決められた値のリストです。 チケットのステータス、チケットの種類、チケットの優先度などのカスタム フィールドには、選択リストが必要です。

カスタムピックリストを展開する

次のコマンドを使用して、 liferay-ticket-batch-list-type-definition クライアント拡張機能をデプロイします。

./gradlew :client-extensions:liferay-ticket-batch-list-type-definition:deploy

コントロール パネルピックリストに移動します。 5 つの新しい選択リストが作成されたことを確認します。

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で、 コントロールパネルチケットに移動します。 新しいチケットエントリが作成されたことを確認します。

新しいチケットエントリが作成されました。

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

関連概念