後設資料管理—動態表單設計器在crudapi系統中完整實現
表單設計
在前面文章中,我們透過一系列案例介紹了表單設計的一些基本功能,表單設計起到非常重要作用,也是crudapi核心,所以本文會詳細介紹表單設計中一些其它功能。
概要
表單欄位column屬性
列英文名稱 | 描述 |
---|---|
name | 英文名稱 |
caption | 中文名稱 |
autoIncrement | 是否自增長 |
description | 描述 |
displayOrder | 序號,UI中顯示的順序 |
dataType | 資料型別,比如字串、整數等 |
seqId | 序列號ID,用於設定流水號 |
indexName | 索引名稱 |
indexStorage | 索引儲存, 支援BTREE、HASH |
indexType | 索引型別,支援PRIMARY, UNIQUE, INDEX, FULLTEXT |
length | 長度 |
precision | 精密度、精確(精度),表示該欄位的有效數字位數 |
scale | 刻度、數值範圍,表示該欄位的小數位數 |
nullable | 是否可為空 |
unsigned | 是否無符號 |
insertable | 是否可插入 |
queryable | 是否可查詢 |
systemable | 是否系統欄位 |
updatable | 是否可修改 |
createdDate | 建立時間 |
lastModifiedDate | 修改時間 |
以上屬性不是所有的都同時有效,比如unsigned只有在dataType為數字的時候才有效,為字串的時候會忽略,其它情況的類似。
系統欄位
建立表單的時候會預設新增5個系統欄位,分別是編號id,名稱name,全文索引fullTextBody,建立時間 createdDate和修改時間lastModifiedDate,以customer為例,系統欄位json內容如下:
[{
"autoIncrement": true,
"caption": "編號",
"createdDate": 1613181300985,
"dataType": "BIGINT",
"description": "主鍵",
"displayOrder": 0,
"id": 253,
"indexType": "PRIMARY",
"insertable": false,
"lastModifiedDate": 1613182114133,
"length": 20,
"name": "id",
"nullable": false,
"queryable": false,
"systemable": true,
"unsigned": true,
"updatable": false
}, {
"autoIncrement": false,
"caption": "名稱",
"createdDate": 1613181300985,
"dataType": "VARCHAR",
"description": "名稱",
"displayOrder": 1,
"id": 254,
"insertable": true,
"lastModifiedDate": 1613182114133,
"length": 200,
"name": "name",
"nullable": false,
"queryable": true,
"systemable": true,
"unsigned": false,
"updatable": true
}, {
"autoIncrement": false,
"caption": "全文索引",
"createdDate": 1613181300985,
"dataType": "TEXT",
"description": "全文索引",
"displayOrder": 2,
"id": 255,
"indexName": "ft_fulltext_body",
"indexType": "FULLTEXT",
"insertable": false,
"lastModifiedDate": 1613182114133,
"name": "fullTextBody",
"nullable": true,
"queryable": false,
"systemable": true,
"unsigned": false,
"updatable": false
}, {
"autoIncrement": false,
"caption": "建立時間",
"createdDate": 1613181300985,
"dataType": "DATETIME",
"description": "建立時間",
"displayOrder": 3,
"id": 256,
"insertable": false,
"lastModifiedDate": 1613182114133,
"name": "createdDate",
"nullable": false,
"queryable": false,
"systemable": true,
"unsigned": false,
"updatable": false
}]
唯一性索引
索引型別包括主鍵、全文、普通、唯一,全文索引之前已經介紹過了,普通索引主要是為了提高查詢效率,這裡主要介紹一下唯一性索引
客戶表mobile手機欄位建立唯一性索引,表示手機號不允許重複
新增客戶時,錄入新增已經存在的手機號,提示重複錯誤,和期望的一致,唯一性索引可以防止資料重複。
聯合索引
如果索引只有一個欄位,在設定列屬性的時候直接設定。如果是多個欄位聯合索引,就需要單獨設定了。這裡可以建立普通或唯一兩種型別的聯合索引,透過下拉框選擇多個欄位。
比如給customer設定一個聯合索引,最終得到的索引功能和之前單個欄位索引類似。
附件
附件型別欄位支援儲存附件,主要是文件、圖片等
設定檔案file表的url連結欄位屬性為ATTACHMENT
錄入資料時候,附件欄位可以上傳檔案,如果是圖片可以預覽。
表單設計API
表單設計提供了API,如果預設提供的後臺管理UI不適合,可以二次開發,重新設計UI,透過API管理表單,API文件如下:
Postman查詢customer表單後設資料。
小結
本文介紹了表單設計完整功能,既可以透過UI配置實現,也可以透過API進行二次開發。
附crudapi簡介
本系統屬於產品級的零程式碼平臺,不同於自動程式碼生成器,不需要生成Controller、Service、Repository、Entity等業務程式碼,程式執行起來就可以使用,真正0程式碼,可以覆蓋基本的和業務無關的CRUD RESTful API。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2157/viewspace-2796656/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 動態表單後端設計後端
- 自定義表單 動態表單 表單設計器 流程引擎 設計方案
- ACCESS 在資料表中實現簡單計算
- 【react】實現動態表單中巢狀動態表單React巢狀
- 動態表單儲存設計
- 跟我一起學習和開發動態表單系統-資料庫設計(1)資料庫
- 就業資訊管理系統設計與實現就業
- 碎片資料收集利器-結構化動態表單設計思路
- 駕校管理系統設計和實現
- Javaweb的例項--訂單管理系統--設計資料庫JavaWeb資料庫
- 在spring boot中訊息推送系統設計與實現Spring Boot
- .NET 8.0 酒店管理系統設計與實現
- 資料庫課程設計—超市零售資訊管理系統(Python實現)資料庫Python
- 使用Vue實現後臺管理系統的動態路由以及側邊欄選單Vue路由
- 基於 Formily 的表單設計器實現原理分析 ORM
- 如何在高度可擴充套件的系統中管理後設資料套件
- java 自定義表單 動態表單 表單設計器 工作流引擎 flowable 專案原始碼Java原始碼
- 簡單實用的客戶關係管理系統(CRM),在設計上力求簡單、實用。
- 使用單例模式來實現動態資料來源管理單例模式
- 資料治理之後設資料管理實踐
- 跟我一起學習和開發動態表單系統-動態表單系統的技術實現與優勢(2)
- React無門檻實現拖拽佈局、表單設計器React
- 圖表外掛Highcharts的動態化賦值,實現圖表資料的動態化設定顯示賦值
- 管理系統之許可權的設計和實現
- java 流程引擎 表單設計器 設計方案Java
- SAP CRM系統訂單模型的設計與實現模型
- Salesforce和SAP Netweaver裡資料庫表的後設資料設計Salesforce資料庫
- #每日一記#前端與後端互動 資料狀態設計 最佳實踐前端後端
- 使用KPI儀表板,建立完整的資訊資料生態系統KPI
- 說說在 Spring 中,如何程式設計實現事務管理Spring程式設計
- 談談主動式後設資料管理
- rabbitMq實現系統內的簡訊傳送設計&動態獲取BEANMQBean
- DevOps後設資料管理dev
- 通用許可權系統之資料庫表設計資料庫
- Spring 註解動態資料來源設計實踐Spring
- Java畢業設計_基於MySQL網盤管理系統的設計與實現JavaMySql
- 領域驅動設計在重構業務系統中的實踐
- PDM系統在飼料工程設計中的應用