📐 カテゴリスキーマ
カテゴリスキーマは再利用可能なカテゴリデータを検証し、各カテゴリルートのパス、ボディ、またはクエリ入力を検証します。
インベントリ
| エクスポート | リクエスト場所 | 契約 |
|---|---|---|
categorySchema | N/A | オプションの description、name、parent、status 文字列;追加プロパティを拒否。 |
createCategorySchema | ボディ | 必須 name、description、status を持つベースオブジェクト。 |
updateCategorySchema | パス、ボディ | categoryId に加えてオプションの description、name、parent。 |
getCategorySchema | パス | 必須文字列 categoryId。 |
deleteCategorySchema | パス | 必須文字列 categoryId。 |
enableCategorySchema | パス | 必須文字列 categoryId。 |
disableCategorySchema | パス | 必須文字列 categoryId。 |
findCategoriesSchema | クエリ | オプションのカテゴリフィルターと page、limit。 |
共有ソースコンテキストを表示
const categoryIdPathParameter: OpenAPIParameter = {
in: 'path',
name: 'categoryId',
required: true,
schema: {
type: 'string',
},
};
詳細
categorySchema
定義
再利用可能な保存/リクエスト形状。追加プロパティを受け付けません;作成はこの形状を展開し、更新は narrower なインラインボディ形状を持ちます。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| N/A | description | string | いいえ | — |
| N/A | name | string | いいえ | — |
| N/A | parent | string | いいえ | — |
| N/A | status | string | いいえ | — |
ルートで使用: 間接的 createCategoryRoute。フィーチャーで使用: 間接的 createCategoryFeature。完全なソースを表示
createCategorySchema
定義
application/json ボディを要求します。categorySchema を展開するため、追加プロパティは拒否されます;parent はオプションです。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| ボディ | description | string | はい | application/json |
| ボディ | name | string | はい | application/json |
| ボディ | parent | string | いいえ | application/json |
| ボディ | status | string | はい | application/json |
ルートで使用: createCategoryRoute。フィーチャーで使用: createCategoryFeature。完全なソースを表示
updateCategorySchema
定義
文字列 categoryId と application/json ボディを要求します。ボディ自体は必須ですが、許可されたすべてのフィールドはオプションです;status は受け付けられず、ステータスルートを通じて変更されます。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| パス | categoryId | string | はい | — |
| ボディ | description | string | いいえ | application/json;追加プロパティなし |
| ボディ | name | string | いいえ | application/json;追加プロパティなし |
| ボディ | parent | string | いいえ | application/json;追加プロパティなし |
ルートで使用: updateCategoryRoute。フィーチャーで使用: editCategoryFeatures。完全なソースを表示
getCategorySchema
定義
共有文字列 categoryId パスパラメータを要求します。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| パス | categoryId | string | はい | — |
ルートで使用: getCategoryRoute。フィーチャーで使用: getCategoryFeatures。完全なソースを表示
deleteCategorySchema
定義
共有文字列 categoryId パスパラメータを要求します;リクエストボディはありません。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| パス | categoryId | string | はい | — |
ルートで使用: deleteCategoryRoute。フィーチャーで使用: deleteCategoryFeatures。完全なソースを表示
enableCategorySchema
定義
共有文字列 categoryId パスパラメータを要求します;リクエストボディはありません。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| パス | categoryId | string | はい | — |
ルートで使用: enableCategoryRoute。フィーチャーで使用: enableCategoryStatusFeatures。完全なソースを表示
disableCategorySchema
定義
共有文字列 categoryId パスパラメータを要求します;リクエストボディはありません。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| パス | categoryId | string | はい | — |
ルートで使用: disableCategoryRoute。フィーチャーで使用: disableCategoryStatusFeatures。完全なソースを表示
findCategoriesSchema
定義
すべてのフィルターはオプションの文字列クエリパラメータです。共有ページネーションパラメータを展開します:page と limit はそれぞれ 1 から 1000、1 から 50 のオプション整数です。実行時、withPagination はこれらをページ 1 とリミット 10 にデフォルトし、MongoDB フィルターから両方のフィールドを削除し、ノーマライザーは結果のメタデータを保持します。
| 場所 | フィールド | 型 | 必須 | 制約 |
|---|---|---|---|---|
| クエリ | description | string | いいえ | — |
| クエリ | name | string | いいえ | — |
| クエリ | parent | string | いいえ | — |
| クエリ | status | string | いいえ | — |
| クエリ | page | integer | いいえ | 最小値 1、最大値 1000;実行時デフォルト 1 |
| クエリ | limit | integer | いいえ | 最小値 1、最大値 50;実行時デフォルト 10 |
ルートで使用: findCategoriesRoute。フィーチャーで使用: findCategoriesFeatures。完全なソースを表示