DMS支持數據字典的快速開發。開發接入有兩種:**托管方式**與**自定義方式**。
* **托管方式**
指將數據全部交由數據字典功能進行管理,并且提供管理頁面,你只需要提供一個授權參數,就可以獲取到數據的增刪改查。
托管方式只需要建立一個路由地址,然后通過路由地址進行訪問就可以了。將第一個參數改成你的訪問地址,然后設定category的值,和columns值即可(注意這里不要和自定義方式搞混,第二個參數地址是autodictionary):
```
Route::rule('sys/dictself', 'sys.Dictionary/autodictionary', 'GET|POST|PUT|DELETE')->append([
"category" => "ut",
"columns" => "列1,列2",
"mname" => "sys",
"sort"=>1,
"description"=>"字典內容介紹"
]);
```
> `category`參數值即為數據字典標識,請確保該標識為全局唯一,否則可能會相互覆蓋。建議使用`模塊+字典數據類別名稱`做標識。
> `columns`參數值即為數據內容的分列,以逗號“,”分隔,可以使用中文,但是使用的時候需要使用`{$item["數據"]}`的方式。為空則默認提供一個value列。
> `mname`參數值表示當前請求的功能塊名稱。
> `sort`參數值表示是否開啟自定義排序功能,大于1時會在維護表多出一個排序列,輸入數字可進行排序。
> `description`內容簡介,用于輸出數據字典說明。
獲取數據使用api方法,`public function getValue(string $identity);`或`public function getValues(string $identity);`更多方法可查看:\framework\core\service\api\DictionaryService
* **自定義數據字典**
指開發人員自定義數據字典表,系統提供管理頁面,在頁面的展示、改,查,刪的時候會有事件會發給開發人員,通過訂閱事件進行相應的操作(訂閱事件請點這里查看)。user_type就是使用這種方式對接的。
> 下面我們來詳細講解一下自定義數據字典:
首先定義一個為托管頁做一個路由地址,只需要將第一個參數改成你的訪問地址,然后設定category的值即可:
```
Route::rule('sys/dictself', 'sys.dictionary/selfdictionary', 'GET|POST|PUT|DELETE')->append([
"category" => "ut"
]);
```
> category參數值即為數據字典標識,請確保該標識為全局唯一,否則可能會相互覆蓋。建議使用`模塊+字典數據類別名稱`做標識。
>然后,定義相關事件對接處理邏輯。總共有4個事件,它們是:
* **on[$Category]DictionaryGet**
數據查詢的處理接口。參數$identification,標識號,其實就是category值。
* **on[$Category]DictionaryAdd**
數據添加的處理接口。參數$param,數組,$param["data"]存儲有用戶提交過來的數據。
* **on[$Category]DictionaryEdit**
數據修改的處理接口。參數$param,數組,$param["data"]存儲有用戶提交過來的數據。注意這里支持批量修改,所以$param["data"]有可能是多個數據行。
* **on[$Category]DictionaryDelete**
數據刪除的處理接口,參數$id,表示提交過來的標識號。
> 其中**[$Category]**的內容就是你提供的category參數值,該名稱也是首字母大些的駝峰命名法。
代碼中需要使用數據可使用api方法,`public function getValue(string $identity);`或`public function getValues(string $identity);`
- 序言
- 基礎
- 開發規范
- 架構說明
- 總覽
- 中間件
- 事件
- 功能控制臺
- 場景事件驅動
- 異常提醒
- 應用功能接口(Api)
- 內置服務
- 框架服務
- 場景驅動控制器
- 事件驅動邏輯
- 邏輯申明
- 消息隊列
- 事件系統
- 鉤子掛件
- 賬戶管理服務
- 權限管理服務
- 日志服務
- 數據字典服務
- 功能控制服務
- 中后臺服務
- workdesktop
- 導航菜單
- 登錄態接入
- 歡迎頁
- 站內信
- 附件服務
- 托管
- 自定義上傳
- 設置標簽
- 文件檢索
- 資源公開
- 報表服務
- 報表易生成
- 報表導出
- 數據導入
- 信息回收服務
- 查詢手冊
- 路由
- 控制器
- 邏輯層
- 模型
- 模板
- 標簽庫
- 資源引用
- 配置
- 權限
- 菜單
- 功能包
- 前端框架
- api服務
- AccountService
- Authorization
- DataCrypt
- EventLog
- LoginState
- 工具類
- 更新日志