Building an Enterprise Asset Management System with Low-Code Platform
This article demonstrates building a full-lifecycle enterprise asset management system using a low-code platform, covering MySQL database schema for asset, repair, and inventory tables, page configuration with nested sub-tables, LogicFlow workflow engines for repair and inventory processes, Quartz scheduled tasks for monthly and quarterly reporting, and role-based permission design.
System Goals and Data Structure Design
Functional Goals
Establish asset master table to record basic asset information.
Maintain repair history for each asset.
Support inventory operations and record inventory status.
Enable page linkage, workflow triggering and approval, and periodic data analysis export.
Database Schema (MySQL 8 with Comments)
1. Asset Master Table: asset_info
CREATE TABLE `asset_info` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary Key ID',
`asset_code` varchar(50) NOT NULL COMMENT 'Asset Code',
`asset_name` varchar(100) NOT NULL COMMENT 'Asset Name',
`asset_type` varchar(50) NOT NULL COMMENT 'Asset Type',
`purchase_date` datetime DEFAULT NULL COMMENT 'Purchase Date',
`value` double DEFAULT NULL COMMENT 'Purchase Value',
`location` varchar(100) DEFAULT NULL COMMENT 'Storage Location',
`owner` varchar(50) DEFAULT NULL COMMENT 'Responsible Person',
`status` varchar(20) DEFAULT 'In Stock' COMMENT 'Asset Status (In Stock/In Use/Under Repair/Scrapped)',
`remark` varchar(200) DEFAULT NULL COMMENT 'Remarks',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Creation Time',
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Update Time',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_asset_code` (`asset_code`)
) COMMENT='Enterprise Asset Ledger Table';2. Repair Log Sub-table: asset_repair_log
CREATE TABLE `asset_repair_log` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary Key ID',
`asset_id` bigint NOT NULL COMMENT 'Associated Asset ID',
`repair_time` datetime NOT NULL COMMENT 'Repair Time',
`repair_person` varchar(50) NOT NULL COMMENT 'Repair Person',
`issue_description` varchar(500) DEFAULT NULL COMMENT 'Issue Description',
`repair_result` varchar(500) DEFAULT NULL COMMENT 'Repair Result',
`cost` double DEFAULT 0 COMMENT 'Repair Cost',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Creation Time',
PRIMARY KEY (`id`),
KEY `idx_asset_id` (`asset_id`)
) COMMENT='Asset Repair Log Table';3. Inventory Log Sub-table: asset_inventory_log
CREATE TABLE `asset_inventory_log` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary Key ID',
`asset_id` bigint NOT NULL COMMENT 'Associated Asset ID',
`inventory_time` datetime NOT NULL COMMENT 'Inventory Time',
`inventory_person` varchar(50) NOT NULL COMMENT 'Inventory Person',
`inventory_status` varchar(20) NOT NULL COMMENT 'Inventory Status (In Place/Missing/Abnormal/Scrapped)',
`remark` varchar(500) DEFAULT NULL COMMENT 'Remarks',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Creation Time',
PRIMARY KEY (`id`),
KEY `idx_asset_id` (`asset_id`)
) COMMENT='Asset Inventory Log Table';Page Structure Design and Linkage Configuration
1. Master Page Configuration (Asset Ledger)
The platform automatically generates CRUD pages:
Master table supports filtering by code, type, status.
Form includes basic fields, status tags with color display, and amount formatting with thousands separator.
Two sub-tabs added to detail page: Repair Records and Inventory Records .
2. Sub-table Nesting Configuration (Amis Page Structure)
Embed two sub-tables in the asset_info detail page.
Use master table primary key id as foreign key asset_id for sub-tables.
Configuration method: page nesting table component with query condition bound to master table data (e.g., "source": "/api/repair-log?asset_id=${id}").
Supports direct add, edit, view operations within sub-tables.
3. Page Linkage Highlights
The following linkage logic is configured:
Repair Records : linked to master field asset_id; when adding, the current asset ID is automatically populated.
Inventory Records : linked to master field asset_id; both query and add operations depend on master table ID.
Status Linkage : linked to master field status; when a repair record is added, the master table status automatically changes to "Under Repair".
Workflow Configuration (LogicFlow Engine)
1. Repair Workflow
Node 1: Submit repair request (select asset → describe issue).
Node 2: Asset administrator approval.
Node 3: Repair personnel fill in repair result.
Node 4: System writes back master table status to "In Stock" or "Scrapped".
2. Inventory Workflow
Node 1: Scan asset code to enter inventory page.
Node 2: Select inventory status and submit (In Place / Missing / Abnormal).
Node 3: Trigger automatic generation and archiving of inventory record.
Node 4 (optional): Missing assets automatically push notification to responsible person's email or message center.
Scheduled Tasks and Data Statistics
Using the platform's built-in Quartz scheduler and task flows:
On the 1st of each month, generate monthly inventory task list grouped by asset type/location.
Quarterly statistics on repair count and cost expenditure, automatically written to report table.
Monthly scheduled export of missing inventory statistics, supports sending to email or admin backend.
Permission Settings and Menu Configuration
Role-based permissions:
Asset Administrator : full CRUD permissions on all assets and sub-tables.
Regular Employee : can only view own responsible assets, initiate repair or inventory workflows.
Approver : permissions for workflow approval nodes.
Operations Personnel : can view and export repair and inventory records, participate in task flow execution.
Suggested menu structure:
Asset Management
├─ Asset Ledger
├─ Asset Repair Records (overview page)
├─ Asset Inventory Records (archived by month)
├─ Report Analysis (chart page)Summary and Value
Building an asset management system with a low-code platform enables rapid delivery of business requirements and adapts to changing management policies and processes. The three-table linkage design not only achieves static ledger management but also extends to repair tracking and dynamic inventory, truly covering the full asset lifecycle from procurement to scrapping.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
