Skip to content

Basic Functions

The VJSP framework comes with a complete set of enterprise-level basic functional modules, covering core capabilities such as user management, organizational structure, permission control, data dictionary, and system logs. When developers build applications based on this framework, they do not need to redevelop general functions but can focus on the design and implementation of their own business logic and data models, significantly improving development efficiency and system consistency.

All basic functions undergo unified permission control, support multi-language and theme customization, and seamlessly integrate with advanced modules like workflow and form engines, providing solid support for complex enterprise application scenarios.

1. User Management

Functional Description

The User Management module is used to uniformly maintain the personnel information and system accounts of system operators. It adopts a "separate binding" design:

  • Personnel Information: Describes the organizational attributes of employees or operators (such as name, department, etc.), independent of login behavior.
  • System Account: Used for identity authentication and permission control, containing login credentials and role authorization.

Personnel information can be changed independently (e.g., job transfer, name change) without affecting the bound login account; conversely, the account status (enabled/disabled) only affects login capability and does not delete personnel records.

Main Operations

  1. Add Personnel
    • Go to the 【Personnel Management】 page and click "Add New".
    • Fill in basic information such as name, department, and contact details. Save to generate a unique personnel record.
  2. Edit/Delete Personnel Information
    • Supports modifying basic personnel information (e.g., department adjustment, name correction).
    • Confirm that no enabled accounts are bound before deleting personnel. Alternatively, delete the account and personnel together.
  3. Add System Account
    • On the System Account page, create a login account.
    • Set the login username (unique), account name, initial password, and assign at least one role.
  4. Assign Roles
    • In the account creation or editing interface, select one or more roles from the role list.
    • The account will inherit the menu permissions, operation permissions, and data permission scope of the selected roles.
  5. Status Management
    • Account Status: Supports "Enabled" or "Disabled". Once disabled, the account cannot log in, but historical operation records are retained.
    • Personnel Status: Mainly used for organizational structure display and data permission filtering, does not affect account login (unless the account itself is disabled).
  6. Reset Password
    • Administrators can forcibly reset passwords for any account.
  7. Delete Account
    • System accounts that are no longer in use can be deleted.
    • Deleting an account does not automatically delete the associated personnel information, ensuring the integrity of the organizational structure.

2. Department Management

Functional Description

Maintains the enterprise's multi-level organizational structure (e.g., Company → Business Unit → Department), visually displayed in a tree structure, and serves as the basic unit for data permission isolation.

Main Operations

  • Add/Edit Department: Set department code, name, parent department, department level, department order, status.
  • Adjust Organizational Hierarchy: Flexibly adjust department reporting relationships by modifying the parent department.

⚠️ Note: Ensure there are no users or sub-departments under a department before deleting it.

3. Menu Management

Functional Description

Configures the structure of the left navigation menu in the system and defines the operation permission identifier (Permission Code) for each menu item and button, enabling linkage control between front-end routing and back-end permissions.

Main Operations

  • Add Menu Item: Set menu name, parent menu, icon, opening method, sort order, status, URL link.
  • Permission Configuration: Set permissions for add, delete, modify, and query operations on the page.

🔒 Permission Logic: Users can only access menus and buttons authorized by their roles; unauthorized items are automatically hidden or disabled.

4. Role Management

Functional Description

  • Role Management: Groups users through roles, uniformly configuring the menus, operation permissions, and data permission scope they can access.
  • Process Role: Defines roles in workflow approval through process role settings.
  • Process Role Configuration: Defines personnel in workflow approval through process role personnel configuration.

Main Operations

  • Add Role: Enter role code, name, and select status.
  • Modify Role: Modify role code, name, and select status.
  • Delete Role: Delete unnecessary role information.
  • Role Permission Assignment: Select the menu and button permissions that the role is allowed to access.
  • Process Role Configuration: Set personnel for workflow roles.

Scenario Example: Configuring Multi-Department Personnel Countersign Node

In certain approval processes, a specific node requires personnel from multiple departments to participate in the review simultaneously (i.e., "countersign"), and the process can only proceed to the next step after all selected personnel have processed the task.

Configuration Steps

  1. Create Countersign Role
    • Go to the 【Process Role Management】 page, click "Add Role".
    • Suggested role name: "Countersign" or "XX Business Countersign Group".
    • In the "Member Selection Method", select "By Personnel" (instead of automatic matching by role or department).
  2. Specify Countersign Personnel
    • Go to the 【Process Design】 or 【Process Role Configuration】 page, find the countersign node in the corresponding process.
    • In the role field bound to this node, select the newly created "Countersign" role.
    • Click the "Name" input box after the role name, double-click to open the personnel selector.
    • In the pop-up organizational structure tree, select N specific personnel across departments (supports search and multiple selection).
    • After confirmation, the selected personnel will become the fixed countersigners for this node.
  3. Process Runtime Effect
    • When the document reaches this countersign node, all N selected personnel will simultaneously receive the pending task.
    • Depending on the process policy (e.g., "pass only if all agree" or "pass if one agrees"), the system automatically proceeds to the next node after the condition is met.
    • Each countersigner can view and process the document in their own "Pending Tasks".

Advantage Description This method is suitable for temporary, cross-departmental, non-fixed-role collaboration scenarios (e.g., project reviews, compliance joint reviews). It eliminates the need to create new roles for each approval and avoids frequent adjustments to process definitions due to organizational changes.

⚠️ Precautions

  • If personnel change later (e.g., resignation, transfer), the list of countersign personnel in this process role must be updated manually.
  • It is recommended to specify the countersign rules (e.g., whether unanimous consent is required) in the process description for participants' understanding.

5. Data Dictionary

Functional Description

The Data Dictionary is used to centrally manage frequently used, relatively fixed basic data of the enumeration type in business systems (e.g., user status, gender, approval type, document status). By uniformly maintaining dictionary categories and items, it ensures data consistency between front-end and back-end, improves configuration flexibility, and supports multi-language label expansion.

✅ Typical application scenarios: Dropdown options, status label display, report classification dimensions, etc.

Core Concepts

TermDescription
Dictionary TypeThe classification identifier for the dictionary, referenced in code (e.g., user_status, gender). Recommended naming: lowercase English with underscores.
Dictionary NameThe Chinese description of the dictionary category, used only for interface display (e.g., "User Status", "Gender").
Dictionary ItemA specific value item under a dictionary category, containing attributes like key, label, sort order, etc.

Main Operations

1. Add Dictionary Type

  • Enter the 【Data Dictionary】 management page, click "Add New".
  • Fill in the following information:
    • Dictionary Type: A unique identifier within the system (e.g., approval_type). Cannot be duplicated, English is recommended.
    • Dictionary Name: The display name for users (e.g., "Approval Type").
    • Status: Once enabled, this category and its dictionary items can be used in business.
    • Remarks (Optional): Explain the purpose or scope of use.
  • After saving, dictionary items can be added for this category.

🔒 Naming Convention Suggestion: Avoid Chinese, spaces, or special characters; Recommended format: module_purpose (e.g., order_status, doc_category).

2. Maintain Dictionary Items

  • Dictionary items can be configured in the detail table on the dictionary details page.
  • The following operations can be performed:
    • Add Dictionary Item: Fill in:
      • Dictionary Label: The text displayed on the front-end (e.g., "Approved").
      • Dictionary Key Value: The value actually used in the program (e.g., 01).
      • Sort Number: Controls the display order in dropdown options or lists (smaller numbers appear first).
      • Status: Enable/disable this option.
      • Remarks: Supplementary instructions (e.g., applicable scenarios).
    • Edit/Delete Dictionary Item: Supports modifying content or removing options no longer in use (confirm no business data references it before deletion).

3. Enable/Disable Dictionary Items or Categories

  • Disable Dictionary Category: All dictionary items under this category cannot be selected for new business forms, but historical data can still be displayed normally.
  • Disable Dictionary Item: This option will be hidden from dropdown lists and cannot be selected by users, but previously selected historical records are unaffected.

⚠️ Note: It is recommended not to delete dictionary categories to avoid abnormal data display (for dictionary items already referenced by business data).

💡 Best Practice

  • All static dropdown options should be configured via the Data Dictionary first, avoiding hardcoding.
  • After dictionary changes, notify relevant developers or testers to verify business logic accordingly.

6. System Logs

Functional Description

Automatically records users' key operational behaviors and system exception events. Supports querying by time, user, operation type, etc., facilitating audit tracing and problem troubleshooting.

  • Operation Logs: Record user actions like logins and data operations.

Query and Export

  • Supports filtering logs by date range, operator, etc.

🔍 Security Tip: Log content is only accessible to roles with the "View System Logs" permission, ensuring sensitive information is controlled.