基本機能
VJSPフレームワークには、ユーザー管理、組織構造、権限制御、データ辞書、システムログなどのコア機能を網羅した、完全なエンタープライズレベルの基本機能モジュールが組み込まれています。このフレームワークに基づいてアプリケーションを構築する開発者は、一般的な機能を繰り返し開発する必要がなく、自身の業務ロジックとデータモデルの設計と実装に集中するだけで済み、開発効率とシステムの一貫性が大幅に向上します。
すべての基本機能は統一された権限管理を経て、多言語とテーマカスタマイズをサポートし、ワークフローやフォームエンジンなどの高度なモジュールとシームレスに統合され、複雑な企業アプリケーションシナリオに強力なサポートを提供します。
1. ユーザー管理
機能説明
ユーザー管理モジュールは、システムオペレーターの個人情報とシステムアカウントを統一して管理するために使用されます。これらは「分離バインド」設計を採用しています:
- 個人情報: 従業員またはオペレーターの組織属性(名前、所属部門など)を記述し、ログイン行為から独立しています。
- システムアカウント: 認証と権限制御に使用され、ログイン資格情報とロール権限を含みます。
個人情報は(異動や名前変更などで)独立して変更でき、それにバインドされたログインアカウントには影響しません。逆に、アカウントの状態(有効/無効)はログイン能力にのみ影響し、個人ファイルは削除されません。
主な操作
- 担当者の追加
- 【担当者管理】ページに進み、「追加」をクリックします。
- 名前、所属部門、連絡先などの基本情報を入力し、保存すると一意の担当者レコードが生成されます。
- 担当者情報の編集/削除
- 担当者の基本情報(部門調整、名前修正など)の変更をサポートします。
- 担当者を削除する前に、有効状態のアカウントが一切バインドされていないことを確認する必要があります。または、アカウントと担当者を一緒に削除します。
- システムアカウントの追加
- システムアカウントページで、ログインアカウントを作成します。
- ログインアカウント(一意)、アカウント名、初期パスワードを設定し、少なくとも1つのロールを割り当てます。
- ロールの割り当て
- アカウントの新規作成または編集画面で、ロールリストから1つまたは複数のロールを選択します。
- アカウントは、選択したロールのメニュー権限、操作権限、およびデータ権限範囲を継承します。
- 状態管理
- アカウント状態: 「有効」または「無効」をサポートします。無効にすると、そのアカウントはシステムにログインできなくなりますが、過去の操作記録は保持されます。
- 担当者状態: 主に組織構造の表示とデータ権限のフィルタリングに使用され、アカウントのログインには影響しません(アカウント自体が無効にされている場合を除く)。
- パスワードのリセット
- 管理者は任意のアカウントのパスワードを強制的にリセットできます。
- アカウントの削除
- 使用されていないシステムアカウントを削除できます。
- アカウントを削除しても、関連する担当者情報は自動的には削除されず、組織構造の完全性が保証されます。
2. 部門管理
機能説明
企業の多階層の組織構造(例:会社 → 事業部 → 部門)を維持し、ツリー構造で視覚的に表示します。データ権限分離の基本単位としても機能します。
主な操作
- 部門の追加/編集: 部門番号、名前、上位部門、部門レベル、部門順序、状態を設定します。
- 組織階層の調整: 上位部門を変更することで、部門の所属関係を柔軟に調整します。
⚠️ 注意:部門を削除する前に、その部門にユーザーや子部門が存在しないことを確認してください。
3. メニュー管理
機能説明
システムの左側ナビゲーションメニュー構造を設定し、各メニュー項目およびボタンの操作権限識別子(Permission Code)を定義し、フロントエンドのルーティングとバックエンドの権限の連動制御を実現します。
主な操作
- メニュー項目の追加: メニュー名、上位メニュー、アイコン、開き方、順序、状態、URLリンクを設定します。
- 権限設定: ページに対して追加、削除、変更、検索の権限を設定します。
🔒 権限発効ロジック:ユーザーは自身のロールに許可されたメニュー及びボタンのみにアクセス可能で、未許可の項目は自動的に非表示または無効化されます。
4. ロール管理
機能説明
- ロール管理: ロールを通じてユーザーをグループ管理し、アクセス可能なメニュー、操作権限、データ権限範囲を統一して設定します。
- ワークフローロール: ワークフロー承認におけるロール部門を定義するために、ワークフローロールを設定します。
- ワークフローロール設定: ワークフロー承認における担当者を定義するために、ワークフローロール担当者を設定します。
主な操作
- ロールの追加: ロール番号、名前を入力し、状態を選択します。
- ロールの変更: ロール番号、名前を変更し、状態を選択します。
- ロールの削除: 不要なロール情報を削除します。
- ロール権限の割り当て: ロールがアクセスを許可するメニュー及びボタン権限を選択します。
- ワークフローロール設定: ワークフローロールの担当者を設定します。
シナリオ例:他部門担当者による合議ノードの設定
一部の承認フローにおいて、特定の环节では複数の部門の異なる担当者が同時に審査に参加(すなわち「合議」)する必要があり、かつ選択された全担当者がそのタスクを処理した後にのみ、フローを続行できる場合があります。
設定手順
- 合議ロールの作成
- 【ワークフローロール管理】ページに進み、「ロール追加」をクリックします。
- ロール名は「合議」または「XX業務合議グループ」などと命名することを推奨します。
- 「メンバー選択方式」で、「担当者別」(ロールや部門による自動マッチングではなく)を選択します。
- 合議担当者の指定
- 【フロー設計】または【ワークフローロール設定】ページに進み、該当するフローの合議ノードを見つけます。
- そのノードにバインドされているロールフィールドで、先ほど作成した「合議」ロールを選択します。
- ロール名の後の「名前」入力欄をダブルクリックして、担当者選択器を開きます。
- 表示される組織構造ツリーで、部門を跨いでN人の具体的な担当者を選択します(検索、複数選択をサポート)。
- 確認後、選択された担当者がそのノードの固定された合議者となります。
- フロー実行時の効果
- 伝票がその合議ノードに流转した時、選択されたN人の全担当者が同時に保留タスクを受信します。
- フローポリシー(「全員同意で承認」または「1人同意で承認」など)に基づき、システムは条件が満たされるのを待って自動的に次のノードに進みます。
- 各合議担当者は自身の「保留タスク」でその伝票を確認し処理できます。
✅ 利点説明 この方法は、一時的、部門横断的、固定ロールではない協業シナリオ(例:プロジェクト審査、コンプライアンス合同審査など)に適しており、承認の度に新しいロールを作成する必要がなく、組織変動による頻繁なフロー定義の調整も回避できます。
⚠️ 注意事項
- 後日担当者に異動(退職、転職など)が発生した場合、このワークフローロールの合議担当者リストを手動で更新する必要があります。
- 参加者が処理要求を理解しやすいように、フロー説明に合議ルール(例:全員の同意が必要かどうか)を明記することを推奨します。
5. データ辞書
機能説明
データ辞書は、業務システムで高頻度で使用され、比較的固定された列挙型の基本データ(ユーザー状態、性別、承認タイプ、伝票状態など)を集中管理するために使用されます。辞書カテゴリと辞書項目を統一して維持管理することで、フロントエンドとバックエンドのデータ一貫性を確保し、設定の柔軟性を高め、多言語ラベルの拡張をサポートします。
✅ 典型的な応用シナリオ:ドロップダウンオプション、状態ラベルの表示、レポート分類の维度など。
核心概念
| 用語 | 説明 |
|---|---|
| 辞書タイプ | 辞書の分類識別子。コード内で参照される(例: user_status, gender)。英小文字とアンダースコアを使用する命名が推奨されます。 |
| 辞書名 | 辞書タイプの中文説明。インターフェース表示にのみ使用されます(例:「ユーザー状態」、「性別」)。 |
| 辞書項目 | 特定の辞書タイプに属する具体的な値の項目。キー(key)、値(label)、順序などの属性を含みます。 |
主な操作
1. 辞書タイプの追加
- 【データ辞書】管理ページに進み、「追加」をクリックします。
- 以下の情報を入力します:
- 辞書タイプ: システム内部の一意の識別子(例:
approval_type)。重複不可、英語を使用することが推奨されます。 - 辞書名: ユーザーに向けた表示名(例:「承認タイプ」)。
- 状態: 有効にすると、そのタイプとその辞書項目が業務で使用可能になります。
- 備考(オプション): 用途や使用範囲を説明します。
- 保存後、そのタイプに辞書項目を追加できるようになります。
- 辞書タイプ: システム内部の一意の識別子(例:
🔒 命名規範の推奨:中文、スペース、特殊文字の使用を避ける。推奨フォーマット:
モジュール_用途(例:order_status,doc_category)。
2. 辞書項目の維持管理
- 辞書の詳細ページの下部にある明細テーブルで辞書項目を設定できます。
- 以下の操作を実行できます:
- 辞書項目の追加: 以下を入力します:
- 辞書タイプ: フロントエンドに表示されるテキスト(例:「承認済み」)。
- 辞書キー値: プログラムで実際に使用される値(例:
01)。 - 順序番号: ドロップダウンオプションまたはリストの表示順序を制御します(数値が小さいほど前に表示されます)。
- 状態: そのオプションを有効/無効にします。
- 備考: 補足説明(該当するシナリオなど)。
- 辞書項目の編集/削除: 内容の変更または使用されなくなったオプションの削除をサポートします(削除前に業務データから参照されていないことを確認してください)。
- 辞書項目の追加: 以下を入力します:
3. 辞書項目またはタイプの有効/無効
- 辞書タイプの無効化: そのタイプの全ての辞書項目は、新しい業務フォームで選択できなくなりますが、過去のデータは正常に表示されます。
- 辞書項目の無効化: そのオプションはドロップダウンリストから非表示になり、ユーザーは選択できませんが、既に選択されている過去の記録には影響しません。
⚠️ 注意: (業務データから参照されている辞書項目の)データ表示異常を引き起こす可能性があるため、辞書タイプの削除は推奨されません。
💡 ベストプラクティス
- すべての静的ドロップダウンオプションは、ハードコーディングを避けるため、データ辞書を通じて設定することを優先すべきです。
- 辞書を変更した後は、関連する開発者またはテスト担当者に業務ロジックの同期検証を通知することを推奨します。
6. システムログ
機能説明
ユーザーの重要な操作行動とシステムの例外イベントを自動的に記録し、時間、ユーザー、操作タイプなどの条件による検索をサポートし、監査追跡と問題の切り分けを容易にします。
- 操作ログ: ユーザーログイン、データ操作などの行動を記録します。
検索とエクスポート
- 日付範囲、操作者によるログのフィルタリングをサポートします。
🔍 セキュリティヒント:ログ内容は「システムログ表示」権限を持つロールにのみ公開され、機密情報が管理下にあることを保証します。
