Jeecgboot-Vue3 v1.2.0 版本正式釋出,企業級低程式碼平臺

scott發表於2022-06-07

專案介紹

Jeecgboot-Vue3 採用 Vue3.0、Vite、 Ant-Design-Vue、TypeScript 等新技術方案,包括二次封裝元件、utils、hooks、動態選單、許可權校驗、按鈕級別許可權控制等功能。JeecgBoot企業級的低程式碼平臺對應的vue3前端版本!

強大的程式碼生成器讓前後端程式碼一鍵生成! JeecgBoot引領低程式碼開發模式(OnlineCoding-> 程式碼生成-> 手工MERGE), 幫助解決Java專案70%的重複工作,讓開發更多關注業務。既能快速提高效率,節省成本,同時又不失靈活性

當前版本:v1.2.0 | 2022-06-06

原始碼下載

Github
Gitee

技術文件

升級日誌

此版本重點支援 online表單、online報表、popup等新功能,升級修復很多已知bug、解決首次訪問慢等問題。

升級sql

-- online低程式碼選單(online表單、online報表)
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1455100420297859074', '', '線上開發', '/online', 'layouts/default/index', 1, NULL, '/online/cgform', 0, NULL, '0', 2.00, 0, 'ant-design:cloud-outlined', 0, 0, 0, 0, NULL, 'admin', '2021-11-01 17:12:29', 'admin', '2022-05-11 16:38:26', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1455101470794850305', '1455100420297859074', 'Online表單開發', '/online/cgform', 'super/online/cgform/index', 1, NULL, NULL, 1, NULL, '0', 1.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-01 17:16:40', 'admin', '2022-04-04 18:36:25', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1457678003102879745', '1455100420297859074', '系統編碼規則', '/system/fillrule', 'system/fillRule/index', 1, NULL, NULL, 1, NULL, '0', 9.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-08 19:54:53', 'admin', '2021-11-18 10:49:40', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1458353686530232321', '1455100420297859074', '系統校驗規則', '/system/checkrule', 'system/checkRule/index', 1, NULL, NULL, 1, NULL, '0', 15.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-10 16:39:48', 'admin', '2021-11-18 10:49:48', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1460888189937176577', '1455100420297859074', 'Online報表配置', '/online/cgreport', 'super/online/cgreport/index', 1, NULL, NULL, 1, NULL, '0', 2.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-17 16:31:01', 'admin', '2021-12-08 10:55:32', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1461270075543347202', '1455100420297859074', 'Online表單檢視', '/online/copyform/:code', 'super/online/cgform/CgformCopyList', 1, NULL, NULL, 1, NULL, '0', 99.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-18 17:48:30', NULL, NULL, 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1461291438825558017', '1455100420297859074', 'AUTO線上報表', '/online/cgreport/:id', 'super/online/cgreport/auto/OnlCgReportList', 1, NULL, NULL, 1, NULL, '0', 2.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-18 19:13:23', 'admin', '2021-11-19 20:16:13', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1465686870713782273', '1455100420297859074', 'AUTO線上表單', '/online/cgformList/:id', 'super/online/cgform/auto/default/OnlineAutoList', 1, NULL, NULL, 1, NULL, '0', 5.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-30 22:19:16', NULL, NULL, 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1509417558230999041', '1455100420297859074', 'AUTO樹表單列表', '/online/cgformTreeList/:id', 'super/online/cgform/auto/tree/OnlineAutoTreeList', 1, NULL, NULL, 1, NULL, '0', 5.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2022-03-31 14:29:24', NULL, NULL, 0, 0, NULL, 0);

重點升級

  • 支援低程式碼模組:online表單、online報表
  • 新增數字範圍元件 JRangeNumber
  • 支援 popup彈窗元件
  • JVxeTable支援鍵盤操作
  • vite首次開啟介面載入慢問題/解決
  • 框架進行整體大重構,解決非常多問題
  • 支援jeeccgboot3.2.0版本的路由配置介面
  • 【簽名改造】 X-TIMESTAMP牽扯
  • 【websocket安全】websocket 服務端,存在效能和安全問題。 #3278
  • 修復目前後臺介面掛了介面跳轉404,改為直接跳轉到登入介面
  • 呼叫表單的 resetFields不會清空當前資訊,介面顯示上一次的資料
  • 設定disabled,圖片上傳沒有被禁用
  • 【vue3】使用者管理抽屜移動不能自適應
  • 解決選單配置外部網址帶#號,打不開的問題
  • 租戶管理確認刪除樣式問題
  • 職務管理,職務編碼重複時,沒有友好提示
  • 修復更多下拉選單,只有點到字上才有效
  • 解決字典元件,賦值的時候,閃動效果
  • 系統管理等功能 頁面樣式、引入檔案首字母大小寫不匹配問題修復

Issues處理

  • vue3編輯功能無效#I52955
  • 頂部選單混合模式與想象中的不一樣,應該是有頂部選單,點選對應的頂部選單顯示左側選單#I4YRRC
  • 按時間查詢,瀏覽器會提示無效的時間#I51WTI
  • 點選popup彈框報錯#I4YZE2
  • 使用vue2版本online生成的vue3程式碼中,出現activeKey.value=ref('XXX')的情況#I515ZE
  • 用docker構建報JavaScript heap out of memory#I530MB
  • 首頁功能搜尋功能,當搜尋結果為選單含子選單時,選中此選單,路由前端錯誤#33
  • 使用自定義元件 Table 重新整理 報錯#40
  • VUE3 啟用CAS SSO後專案打包後無法獲取到配置環境變數#38
  • RangePicker 日期區間選擇器異常#I53NY4
  • 使用JSelectInput控制元件,當輸入使用者自己的標籤時,點選清空按鈕會報錯#I52BN3
  • 註釋錯別字#29
  • vue3 首頁開啟慢#I53WHR
  • 程式碼生成器生成列表頁面批量刪除操作後”已選擇n條記錄“不自動清空#34
  • useJvxeMethods.ts 打包後 getAllTable()方法 tableRefs 沒有值#I4ZWFP
  • jvxe無法進行行禁用#I52YEI
  • 資料字典,_ 屬於特殊字元,新增不了資料#I52VH2
  • 使用vue2的online程式碼生成器生成的程式碼中,edit時,沒有將id暫存,導致更新時傳至後臺的資料缺少id報錯#I51EAR
  • 如何獲取動態的路由地址,或者如何改成為頂部主選單 配合左側次級選單#36
  • 日期區間元件 RangePicker#I53G9Y
  • JSelectUser 元件請求值異常#I53VZH
  • ts檔案熱更新失效#I4ZSQD

安裝與使用

  • Get the project code
git clone https://github.com/jeecgboot/jeecgboot-vue3.git
  • Installation dependencies
cd jeecgboot-vue3
yarn install
  • 配置後臺介面地址
.env.development
  • run
yarn serve
  • build
yarn build

系統效果

系統後臺

 title=
 title=
 title=
 title=
 title=
 title=

Online表單&Online報表&程式碼生成



報表效果





介面文件

流程設計&表單設計




報表設計




大屏模板

功能模組

Vue3版已實現了系統管理、系統監控、報表、各種元件、前端許可權、GUI程式碼生成、Online表單、Online報表等平臺功能。

├─首頁
│  ├─首頁(四套首頁滿足不同場景需求)
│  ├─工作臺
├─系統管理
│  ├─使用者管理
│  ├─角色管理
│  ├─選單管理
│  ├─許可權設定(支援按鈕許可權、資料許可權)
│  ├─表單許可權(控制欄位禁用、隱藏)
│  ├─部門管理
│  ├─我的部門(二級管理員)
│  └─字典管理
│  └─分類字典
│  └─系統公告
│  └─職務管理
│  └─通訊錄
│  └─物件儲存
│  └─多租戶管理
├─系統監控
│  ├─閘道器路由配置(gateway)
│  ├─定時任務
│  ├─資料來源管理
│  ├─系統日誌
│  ├─訊息中心(支援簡訊、郵件、微信推送等等)
│  ├─資料日誌(記錄資料快照,可對比快照,檢視資料變更情況)
│  ├─系統通知
│  ├─SQL監控
│  ├─效能監控
│  │  ├─監控 Redis
│  │  ├─Tomcat
│  │  ├─jvm
│  │  ├─伺服器資訊
│  │  ├─請求追蹤
│  │  ├─磁碟監控
├─訊息中心
│  ├─我的訊息
│  ├─訊息管理
│  ├─模板管理
├─積木報表設計器
│─報表示例
│  ├─曲線圖
│  └─餅狀圖
│  └─柱狀圖
│  └─折線圖
│  └─面積圖
│  └─雷達圖
│  └─儀表圖
│  └─進度條
│  └─排名列表
│  └─等等
│─大屏模板
│  ├─作戰指揮中心大屏
│  └─物流服務中心大屏
├─程式碼生成器(GUI)
│  ├─程式碼生成器功能(一鍵生成前後端程式碼,生成後無需修改直接用,絕對是後端開發福音)
│  ├─程式碼生成器模板(提供4套模板,分別支援單表和一對多模型,不同風格選擇)
│  ├─程式碼生成器模板(生成程式碼,自帶excel匯入匯出)
│  ├─查詢過濾器(查詢邏輯無需編碼,系統根據頁面配置自動生成)
│  ├─高階查詢器(彈窗自動組合查詢條件)
│  ├─Excel匯入匯出工具整合(支援單表,一對多 匯入匯出)
│  ├─平臺移動自適應支援
│─常用示例
│  ├─自定義元件示例
│  ├─JVxeTable示例(ERP行業複雜排版效果)
│  ├─單表模型例子
│  └─一對多模型例子
│  └─列印例子
│  └─一對多內嵌示例
│  └─非同步樹Table
│  └─圖片拖拽排序
│  └─圖片翻頁
│  └─圖片預覽
│  └─PDF預覽
│─封裝通用元件    
│  ├─行編輯表格JVxeTable
│  └─省略顯示元件
│  └─時間控制元件
│  └─高階查詢 (未實現)
│  └─使用者選擇元件
│  └─報表元件封裝
│  └─字典元件
│  └─下拉多選元件
│  └─選人元件
│  └─選部門元件
│  └─通過部門選人元件
│  └─封裝曲線、柱狀圖、餅狀圖、折線圖等等報表的元件(經過封裝,使用簡單)
│  └─線上code編輯器
│  └─上傳檔案元件
│  └─樹列表元件
│  └─表單禁用元件
│  └─等等
│─更多頁面模板
│  └─Mock示例(子選單很多)
│  └─頁面&導航(子選單很多)
│  └─元件&功能(子選單很多)
├─高階功能
│  ├─支援微前端
│  ├─提供CAS單點登入
│  ├─整合Websocket訊息通知機制
│  ├─支援第三方登入(QQ、釘釘、微信等)
│  ├─系統編碼規則
├─Online線上開發
│  ├─Online線上表單 
│  ├─Online程式碼生成器
│  ├─Online線上報表 
└─更多功能開發中。。

入門必備

本專案需要一定前端基礎知識,請確保掌握 Vue 的基礎知識,以便能處理一些常見的問題。 建議在開發前先學一下以下內容,提前瞭解和學習這些知識,會對專案理解非常有幫助:

瀏覽器支援

本地開發推薦使用Chrome 最新版瀏覽器,不支援Chrome 80以下版本。

生產環境支援現代瀏覽器,不支援 IE。

IEIE EdgeEdgeFirefoxFirefoxChromeChromeSafariSafari
not supportlast 2 versionslast 2 versionslast 2 versionslast 2 versions

相關文章