Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
c17bd4a6
Commit
c17bd4a6
authored
Jun 15, 2019
by
fengshuonan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
整理dbcontainer的包结构,增加对数据源的管理,整理菜单结构
parent
452c1448
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
794 additions
and
275 deletions
+794
-275
_sqls/guns_mysql.sql
+79
-74
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/core/context/DataSourceContext.java
+2
-2
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/core/context/SqlSessionFactoryContext.java
+1
-1
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/core/dao/DataBaseInfoDao.java
+3
-3
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/core/exception/DataSourceInitException.java
+1
-1
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/core/util/DbUtil.java
+2
-2
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/controller/DatabaseInfoController.java
+84
-44
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/entity/DatabaseInfo.java
+82
-6
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/mapper/DatabaseInfoMapper.java
+14
-14
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/mapper/mapping/DatabaseInfoMapper.xml
+27
-14
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/model/params/DatabaseInfoParam.java
+11
-6
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/model/result/DatabaseInfoResult.java
+10
-5
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/service/DatabaseInfoService.java
+11
-11
guns-base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/service/impl/DatabaseInfoServiceImpl.java
+14
-14
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo.js
+126
-0
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo_add.js
+45
-0
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo_edit.js
+50
-0
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo.html
+36
-0
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo_add.html
+62
-0
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo_edit.html
+62
-0
guns-vip-gen/pom.xml
+7
-0
guns-vip-gen/src/main/java/cn/stylefeng/guns/generator/modular/controller/GeneratorController.java
+2
-2
guns-vip-gen/src/main/java/cn/stylefeng/guns/generator/modular/service/TableService.java
+3
-3
guns-vip-gen/src/main/webapp/assets/gen/gen.js
+1
-1
guns-vip-gen/src/main/webapp/pages/gen/gen.html
+52
-65
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/DataSourceConfig.java
+1
-1
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/PluginsConfig.java
+2
-2
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/SqlSessionFactoryConfig.java
+4
-4
No files found.
_sqls/guns_mysql.sql
View file @
c17bd4a6
...
...
@@ -16,7 +16,7 @@ USE guns;
Target Server Version : 50724
File Encoding : 65001
Date: 1
2/06/2019 17:17:50
Date: 1
5/06/2019 18:14:32
*/
SET
NAMES
utf8mb4
;
...
...
@@ -35,14 +35,15 @@ CREATE TABLE `database_info` (
`jdbc_url`
varchar
(
2000
)
NOT
NULL
COMMENT
'jdbc的url'
,
`remarks`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'备注,摘要'
,
`create_time`
datetime
DEFAULT
NULL
COMMENT
'创建时间'
,
PRIMARY
KEY
(
`db_id`
)
USING
BTREE
PRIMARY
KEY
(
`db_id`
)
USING
BTREE
,
UNIQUE
KEY
`NAME_UNIQUE`
(
`db_name`
)
USING
HASH
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
ROW_FORMAT
=
DYNAMIC
COMMENT
=
'数据库信息表'
;
-- ----------------------------
-- Records of database_info
-- ----------------------------
BEGIN
;
INSERT
INTO
`database_info`
VALUES
(
1
,
'master'
,
'com.mysql.jdbc.Driver'
,
'root'
,
'root'
,
'jdbc:mysql://127.0.0.1:3306/guns?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT'
,
'Guns启动的数据源'
,
'2019-05-11 13:51:19
'
);
INSERT
INTO
`database_info`
VALUES
(
1
139830492418289666
,
'master'
,
'com.mysql.cj.jdbc.Driver'
,
'root'
,
'root'
,
'jdbc:mysql://127.0.0.1:3306/guns?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT'
,
'主数据源,项目启动数据源!不要修改此条目!修改后也会被重置!'
,
'2019-06-15 17:42:21
'
);
COMMIT
;
-- ----------------------------
...
...
@@ -266,7 +267,7 @@ INSERT INTO `sys_menu` VALUES (142, 'notice_add', 'notice', '[0],[system],[notic
INSERT
INTO
`sys_menu`
VALUES
(
143
,
'notice_update'
,
'notice'
,
'[0],[system],[notice],'
,
'修改通知'
,
NULL
,
'/notice/update'
,
2
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
144
,
'notice_delete'
,
'notice'
,
'[0],[system],[notice],'
,
'删除通知'
,
NULL
,
'/notice/delete'
,
3
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
145
,
'sys_message'
,
'dashboard'
,
'[0],[dashboard],'
,
'消息通知'
,
'layui-icon layui-icon-tips'
,
'/system/notice'
,
30
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-04-08 22:49:39'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
149
,
'api_mgr'
,
'dev_tools'
,
'[0],[dev_tools],'
,
'接口文档'
,
'fa-leaf'
,
'/swagger-ui.html'
,
10
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-05-11 13:40:51
'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
149
,
'api_mgr'
,
'dev_tools'
,
'[0],[dev_tools],'
,
'接口文档'
,
'fa-leaf'
,
'/swagger-ui.html'
,
30
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-06-15 18:13:00
'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
150
,
'to_menu_edit'
,
'menu'
,
'[0],[system],[menu],'
,
'菜单编辑跳转'
,
''
,
'/menu/menu_edit'
,
4
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
151
,
'menu_list'
,
'menu'
,
'[0],[system],[menu],'
,
'菜单列表'
,
''
,
'/menu/list'
,
5
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
152
,
'to_dept_update'
,
'dept'
,
'[0],[system],[dept],'
,
'修改部门跳转'
,
''
,
'/dept/dept_update'
,
4
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
...
...
@@ -287,14 +288,16 @@ INSERT INTO `sys_menu` VALUES (166, 'to_user_edit', 'mgr', '[0],[system],[mgr],'
INSERT
INTO
`sys_menu`
VALUES
(
167
,
'mgr_list'
,
'mgr'
,
'[0],[system],[mgr],'
,
'用户列表'
,
''
,
'/mgr/list'
,
10
,
3
,
'N'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-03-29 16:32:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
171
,
'dev_tools'
,
'0'
,
'[0],'
,
'开发工具'
,
'layui-icon layui-icon-code-circle'
,
'#'
,
30
,
1
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-05-11 13:40:27'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
172
,
'dashboard'
,
'0'
,
'[0],'
,
'主控面板'
,
'layui-icon layui-icon-home'
,
'#'
,
10
,
1
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
NULL
,
'2019-04-08 22:48:15'
,
NULL
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777136265838594
,
'demos_show'
,
'
0'
,
'[0],'
,
'模板页面'
,
'layui-icon layui-icon-template'
,
'#'
,
40
,
1
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:34:41'
,
'2019-04-08 22:53:20
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777366856089602
,
'excel_import'
,
'demos_show'
,
'[0],[de
mos_show],'
,
'excel导入'
,
''
,
'/excel/import'
,
10
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:35:36'
,
'2019-04-08 22:53:20
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777491464667137
,
'excel_export'
,
'demos_show'
,
'[0],[de
mos_show],'
,
'excel导出'
,
''
,
'/excel/export'
,
20
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:36:06'
,
'2019-04-08 22:53:20
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110787391943098370
,
'advanced_form'
,
'demos_show'
,
'[0],[de
mos_show],'
,
'高级表单'
,
''
,
'/egForm'
,
30
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 14:15:26'
,
'2019-04-08 22:53:20
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110839216310329346
,
'pdf_view'
,
'demos_show'
,
'[0],[de
mos_show],'
,
'文档预览'
,
''
,
'/loadPdfFile'
,
40
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 17:41:22'
,
'2019-04-08 22:55:53
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777136265838594
,
'demos_show'
,
'
dev_tools'
,
'[0],[dev_tools],'
,
'模板页面'
,
'layui-icon layui-icon-template'
,
'#'
,
40
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:34:41'
,
'2019-06-15 18:13:11
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777366856089602
,
'excel_import'
,
'demos_show'
,
'[0],[de
v_tools],[demos_show],'
,
'excel导入'
,
''
,
'/excel/import'
,
10
,
3
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:35:36'
,
'2019-06-15 18:13:11
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110777491464667137
,
'excel_export'
,
'demos_show'
,
'[0],[de
v_tools],[demos_show],'
,
'excel导出'
,
''
,
'/excel/export'
,
20
,
3
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 13:36:06'
,
'2019-06-15 18:13:11
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110787391943098370
,
'advanced_form'
,
'demos_show'
,
'[0],[de
v_tools],[demos_show],'
,
'高级表单'
,
''
,
'/egForm'
,
30
,
3
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 14:15:26'
,
'2019-06-15 18:13:11
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1110839216310329346
,
'pdf_view'
,
'demos_show'
,
'[0],[de
v_tools],[demos_show],'
,
'文档预览'
,
''
,
'/loadPdfFile'
,
40
,
3
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-27 17:41:22'
,
'2019-06-15 18:13:11
'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1111545968697860098
,
'console'
,
'dashboard'
,
'[0],[dashboard],'
,
'项目介绍'
,
''
,
'/system/console'
,
10
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-29 16:29:45'
,
'2019-04-09 20:57:08'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1111546189892870145
,
'console2'
,
'dashboard'
,
'[0],[dashboard],'
,
'统计报表'
,
''
,
'/system/console2'
,
20
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-03-29 16:30:38'
,
'2019-04-08 22:49:48'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1127085735660421122
,
'code_generate'
,
'dev_tools'
,
'[0],[dev_tools],'
,
'代码生成'
,
''
,
'/gen'
,
1
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-05-11 13:39:14'
,
'2019-05-11 13:41:00'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1127085735660421122
,
'code_generate'
,
'dev_tools'
,
'[0],[dev_tools],'
,
'代码生成'
,
''
,
'/gen'
,
20
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-05-11 13:39:14'
,
'2019-06-15 18:12:45'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1139826657964593154
,
'meta_data'
,
'dev_tools'
,
'[0],[dev_tools],'
,
'系统配置'
,
''
,
'#'
,
10
,
2
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-06-15 17:27:07'
,
'2019-06-15 18:12:35'
,
1
,
1
);
INSERT
INTO
`sys_menu`
VALUES
(
1139827152854716418
,
'data_source'
,
'meta_data'
,
'[0],[dev_tools],[meta_data],'
,
'数据源管理'
,
''
,
'/databaseInfo'
,
10
,
3
,
'Y'
,
NULL
,
'ENABLE'
,
NULL
,
NULL
,
'2019-06-15 17:29:05'
,
'2019-06-15 18:12:35'
,
1
,
1
);
COMMIT
;
-- ----------------------------
...
...
@@ -352,70 +355,6 @@ CREATE TABLE `sys_relation` (
-- Records of sys_relation
-- ----------------------------
BEGIN
;
INSERT
INTO
`sys_relation`
VALUES
(
1127085983283740673
,
105
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983292129281
,
106
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983304712193
,
107
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983313100801
,
108
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983321489410
,
109
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983329878017
,
110
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983334072321
,
111
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983338266625
,
112
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983350849537
,
113
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983355043842
,
165
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983367626753
,
166
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983367626754
,
167
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983384403969
,
114
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983392792577
,
115
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983396986881
,
116
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983405375489
,
117
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983413764098
,
118
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983422152706
,
162
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983426347009
,
163
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983434735617
,
164
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983438929922
,
119
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983451512834
,
120
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983455707137
,
121
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983464095746
,
122
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983468290049
,
150
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983476678658
,
151
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983485067265
,
128
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983489261570
,
134
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983493455874
,
158
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983501844481
,
159
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983514427394
,
130
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983514427395
,
131
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983527010305
,
135
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983535398913
,
136
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983535398914
,
137
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983543787521
,
152
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983552176130
,
153
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983552176131
,
154
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983564759042
,
132
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983568953346
,
138
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983573147649
,
139
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983581536258
,
140
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983594119170
,
155
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983594119171
,
156
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983606702082
,
157
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983610896386
,
133
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983615090690
,
160
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983623479297
,
161
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983631867906
,
141
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983636062210
,
142
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983644450817
,
143
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983652839426
,
144
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983661228033
,
171
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983665422338
,
149
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983673810946
,
1127085735660421122
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983678005250
,
172
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983686393858
,
145
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983690588161
,
1111545968697860098
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983698976769
,
1111546189892870145
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983703171074
,
1110777136265838594
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983711559681
,
1110777366856089602
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983719948290
,
1110777491464667137
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983728336897
,
1110787391943098370
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1127085983736725506
,
1110839216310329346
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281010921473
,
105
,
5
);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281031892994
,
132
,
5
);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281044475906
,
138
,
5
);
...
...
@@ -435,6 +374,72 @@ INSERT INTO `sys_relation` VALUES (1138325281216442370, 172, 5);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281229025281
,
145
,
5
);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281245802498
,
1111545968697860098
,
5
);
INSERT
INTO
`sys_relation`
VALUES
(
1138325281258385410
,
1111546189892870145
,
5
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178351890433
,
105
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178364473345
,
106
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178381250562
,
107
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178393833473
,
108
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178402222081
,
109
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178414804994
,
110
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178423193602
,
111
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178435776514
,
112
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178448359425
,
113
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178460942338
,
165
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178473525250
,
166
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178498691073
,
167
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178519662594
,
114
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178540634114
,
115
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178557411329
,
116
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178574188545
,
117
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178590965762
,
118
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178603548673
,
162
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178616131586
,
163
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178628714497
,
164
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178641297409
,
119
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178653880321
,
120
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178666463234
,
121
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178679046145
,
122
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178687434753
,
150
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178700017665
,
151
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178712600577
,
128
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178720989186
,
134
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178733572098
,
158
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178746155009
,
159
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178758737921
,
130
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178767126529
,
131
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178779709442
,
135
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178788098050
,
136
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178800680961
,
137
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178809069570
,
152
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178821652481
,
153
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178830041089
,
154
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178842624001
,
132
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178855206914
,
138
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178863595521
,
139
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178876178434
,
140
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178888761346
,
155
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178897149954
,
156
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178905538562
,
157
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178918121474
,
133
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178926510081
,
160
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178939092994
,
161
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178951675906
,
141
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178964258818
,
142
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178976841730
,
143
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827178989424641
,
144
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179006201858
,
1139826657964593154
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179022979073
,
1139827152854716418
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179043950594
,
171
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179064922113
,
149
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179085893634
,
1127085735660421122
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179102670850
,
172
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179123642369
,
145
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179144613889
,
1111545968697860098
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179165585409
,
1111546189892870145
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179186556930
,
1110777136265838594
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179207528450
,
1110777366856089602
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179232694273
,
1110777491464667137
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179253665793
,
1110787391943098370
,
1
);
INSERT
INTO
`sys_relation`
VALUES
(
1139827179278831618
,
1110839216310329346
,
1
);
COMMIT
;
-- ----------------------------
...
...
guns-base-db-container/src/main/java/cn/stylefeng/
datasource/container
/context/DataSourceContext.java
→
guns-base-db-container/src/main/java/cn/stylefeng/
guns/dbcontainer/core
/context/DataSourceContext.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
datasource
.
container
.
context
;
package
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
context
;
import
cn.stylefeng.
datasource.container
.dao.DataBaseInfoDao
;
import
cn.stylefeng.
guns.dbcontainer.core
.dao.DataBaseInfoDao
;
import
cn.stylefeng.roses.core.config.properties.DruidProperties
;
import
com.atomikos.jdbc.AtomikosDataSourceBean
;
...
...
guns-base-db-container/src/main/java/cn/stylefeng/
datasource/container
/context/SqlSessionFactoryContext.java
→
guns-base-db-container/src/main/java/cn/stylefeng/
guns/dbcontainer/core
/context/SqlSessionFactoryContext.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
datasource
.
container
.
context
;
package
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
context
;
import
org.apache.ibatis.session.SqlSessionFactory
;
...
...
guns-base-db-container/src/main/java/cn/stylefeng/
datasource/container
/dao/DataBaseInfoDao.java
→
guns-base-db-container/src/main/java/cn/stylefeng/
guns/dbcontainer/core
/dao/DataBaseInfoDao.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
datasource
.
container
.
dao
;
package
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
dao
;
import
cn.hutool.core.date.DateUtil
;
import
cn.stylefeng.
datasource.container
.exception.DataSourceInitException
;
import
cn.stylefeng.
guns.dbcontainer.core
.exception.DataSourceInitException
;
import
cn.stylefeng.roses.core.config.properties.DruidProperties
;
import
com.baomidou.mybatisplus.core.toolkit.IdWorker
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -11,7 +11,7 @@ import java.util.Date;
import
java.util.HashMap
;
import
java.util.Map
;
import
static
cn
.
stylefeng
.
datasource
.
container
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
import
static
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
/**
* 操作数据源信息的dao
...
...
guns-base-db-container/src/main/java/cn/stylefeng/
datasource/container
/exception/DataSourceInitException.java
→
guns-base-db-container/src/main/java/cn/stylefeng/
guns/dbcontainer/core
/exception/DataSourceInitException.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
datasource
.
container
.
exception
;
package
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
exception
;
import
cn.stylefeng.roses.kernel.model.exception.AbstractBaseExceptionEnum
;
import
cn.stylefeng.roses.kernel.model.exception.ServiceException
;
...
...
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/core/util/DbUtil.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/core/util/DbUtil.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
core
.
util
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
core
.
util
;
import
cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo
;
import
lombok.extern.slf4j.Slf4j
;
import
java.sql.Connection
;
...
...
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generator/modular/controller/Database
Controller.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontainer/modular/controller/DatabaseInfo
Controller.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
controller
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
controller
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageFactory
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.generator.core.util.DbUtil
;
import
cn.stylefeng.guns.generator.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.generator.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.roses.core.reqres.response.SuccessResponseData
;
import
cn.stylefeng.guns.dbcontainer.core.util.DbUtil
;
import
cn.stylefeng.guns.dbcontainer.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.dbcontainer.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.dbcontainer.modular.service.DatabaseInfoService
;
import
cn.stylefeng.roses.core.base.controller.BaseController
;
import
cn.stylefeng.roses.core.reqres.response.ResponseData
;
import
cn.stylefeng.roses.core.util.ToolUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
...
...
@@ -19,84 +20,122 @@ import javax.servlet.http.HttpSession;
import
java.util.List
;
import
java.util.Map
;
import
static
cn
.
stylefeng
.
guns
.
generator
.
modular
.
controller
.
GeneratorController
.
CONDITION_FIELDS
;
/**
*
代码生成
控制器
*
数据库信息表
控制器
*
* @author
fengshuonan
* @
date 2019-01-30-2:39 PM
* @author
stylefeng
* @
Date 2019-06-15 17:05:23
*/
@Controller
@RequestMapping
(
"/db"
)
public
class
DatabaseController
{
@RequestMapping
(
"/databaseInfo"
)
public
class
DatabaseInfoController
extends
BaseController
{
/**
* session中标识已选择条件字段的key
*/
public
static
String
CONDITION_FIELDS
=
"CONDITION_FIELDS"
;
private
String
PREFIX
=
"/databaseInfo"
;
@Autowired
private
DatabaseInfo
Mapper
databaseInfoMapper
;
private
DatabaseInfo
Service
databaseInfoService
;
/**
*
数据库管理主页
*
跳转到主页面
*
* @author
fengshuonan
* @Date 2019
/1/30 2:49 PM
* @author
stylefeng
* @Date 2019
-06-15
*/
@RequestMapping
(
""
)
public
String
index
()
{
return
"/db/db
.html"
;
return
PREFIX
+
"/databaseInfo
.html"
;
}
/**
* 新增页面
*
* @author
fengshuonan
* @Date 2019-0
1-11
* @author
stylefeng
* @Date 2019-0
6-15
*/
@RequestMapping
(
"/add"
)
public
String
add
()
{
return
"/db/db
_add.html"
;
return
PREFIX
+
"/databaseInfo
_add.html"
;
}
/**
*
新增
*
编辑页面
*
* @author fengshuonan
* @Date 2019-01-11
* @author stylefeng
* @Date 2019-06-15
*/
@RequestMapping
(
"/edit"
)
public
String
edit
()
{
return
PREFIX
+
"/databaseInfo_edit.html"
;
}
/**
* 新增接口
*
* @author stylefeng
* @Date 2019-06-15
*/
@RequestMapping
(
"/addItem"
)
@ResponseBody
public
Object
addItem
(
DatabaseInfo
databaseInfo
)
{
this
.
databaseInfo
Mapper
.
insert
(
databaseInfo
);
return
new
SuccessResponseData
();
public
ResponseData
addItem
(
DatabaseInfoParam
databaseInfoParam
)
{
this
.
databaseInfo
Service
.
add
(
databaseInfoParam
);
return
ResponseData
.
success
();
}
/**
*
删除
*
编辑接口
*
* @author
fengshuonan
* @Date 2019-0
1-11
* @author
stylefeng
* @Date 2019-0
6-15
*/
@RequestMapping
(
"/
delete
"
)
@RequestMapping
(
"/
editItem
"
)
@ResponseBody
public
Object
delete
(
Long
dbId
)
{
this
.
databaseInfo
Mapper
.
deleteById
(
dbId
);
return
new
SuccessResponseData
();
public
ResponseData
editItem
(
DatabaseInfoParam
databaseInfoParam
)
{
this
.
databaseInfo
Service
.
update
(
databaseInfoParam
);
return
ResponseData
.
success
();
}
/**
*
获取数据源列表
*
删除接口
*
* @author
fengshuonan
* @Date 2019
/1/30 2:49 PM
* @author
stylefeng
* @Date 2019
-06-15
*/
@RequestMapping
(
"/
list
"
)
@RequestMapping
(
"/
delete
"
)
@ResponseBody
public
Object
list
()
{
List
<
DatabaseInfo
>
all
=
databaseInfoMapper
.
selectList
(
new
QueryWrapper
<>());
public
ResponseData
delete
(
DatabaseInfoParam
databaseInfoParam
)
{
this
.
databaseInfoService
.
delete
(
databaseInfoParam
);
return
ResponseData
.
success
();
}
Page
<
DatabaseInfo
>
objectPage
=
new
Page
<>();
objectPage
.
setRecords
(
all
);
/**
* 查看详情接口
*
* @author stylefeng
* @Date 2019-06-15
*/
@RequestMapping
(
"/detail"
)
@ResponseBody
public
ResponseData
detail
(
DatabaseInfoParam
databaseInfoParam
)
{
DatabaseInfo
detail
=
this
.
databaseInfoService
.
getById
(
databaseInfoParam
.
getDbId
());
return
ResponseData
.
success
(
detail
);
}
return
LayuiPageFactory
.
createPageInfo
(
objectPage
);
/**
* 查询列表
*
* @author stylefeng
* @Date 2019-06-15
*/
@ResponseBody
@RequestMapping
(
"/list"
)
public
LayuiPageInfo
list
(
DatabaseInfoParam
databaseInfoParam
)
{
return
this
.
databaseInfoService
.
findPageBySpec
(
databaseInfoParam
);
}
/**
...
...
@@ -118,7 +157,7 @@ public class DatabaseController {
session
.
removeAttribute
(
CONDITION_FIELDS
);
try
{
DatabaseInfo
databaseInfo
=
databaseInfo
Mapper
.
selec
tById
(
dbId
);
DatabaseInfo
databaseInfo
=
databaseInfo
Service
.
ge
tById
(
dbId
);
List
<
Map
<
String
,
Object
>>
maps
=
DbUtil
.
selectTables
(
databaseInfo
);
Page
<
Map
<
String
,
Object
>>
objectPage
=
new
Page
<>();
objectPage
.
setRecords
(
maps
);
...
...
@@ -128,5 +167,6 @@ public class DatabaseController {
return
LayuiPageFactory
.
createPageInfo
(
objectPage
);
}
}
}
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/entity/DatabaseInfo.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/entity/DatabaseInfo.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
entity
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
entity
;
import
com.baomidou.mybatisplus.annotation.*
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
...
...
@@ -12,10 +11,9 @@ import java.util.Date;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
@TableName
(
"database_info"
)
@Data
public
class
DatabaseInfo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
...
...
@@ -27,7 +25,7 @@ public class DatabaseInfo implements Serializable {
private
Long
dbId
;
/**
* 数据库名称
* 数据库名称
(英文名称)
*/
@TableField
(
"db_name"
)
private
String
dbName
;
...
...
@@ -57,7 +55,7 @@ public class DatabaseInfo implements Serializable {
private
String
jdbcUrl
;
/**
* 备注
* 备注
,摘要
*/
@TableField
(
"remarks"
)
private
String
remarks
;
...
...
@@ -68,4 +66,82 @@ public class DatabaseInfo implements Serializable {
@TableField
(
value
=
"create_time"
,
fill
=
FieldFill
.
INSERT
)
private
Date
createTime
;
public
Long
getDbId
()
{
return
dbId
;
}
public
void
setDbId
(
Long
dbId
)
{
this
.
dbId
=
dbId
;
}
public
String
getDbName
()
{
return
dbName
;
}
public
void
setDbName
(
String
dbName
)
{
this
.
dbName
=
dbName
;
}
public
String
getJdbcDriver
()
{
return
jdbcDriver
;
}
public
void
setJdbcDriver
(
String
jdbcDriver
)
{
this
.
jdbcDriver
=
jdbcDriver
;
}
public
String
getUserName
()
{
return
userName
;
}
public
void
setUserName
(
String
userName
)
{
this
.
userName
=
userName
;
}
public
String
getPassword
()
{
return
password
;
}
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
public
String
getJdbcUrl
()
{
return
jdbcUrl
;
}
public
void
setJdbcUrl
(
String
jdbcUrl
)
{
this
.
jdbcUrl
=
jdbcUrl
;
}
public
String
getRemarks
()
{
return
remarks
;
}
public
void
setRemarks
(
String
remarks
)
{
this
.
remarks
=
remarks
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
@Override
public
String
toString
()
{
return
"DatabaseInfo{"
+
"dbId="
+
dbId
+
", dbName="
+
dbName
+
", jdbcDriver="
+
jdbcDriver
+
", userName="
+
userName
+
", password="
+
password
+
", jdbcUrl="
+
jdbcUrl
+
", remarks="
+
remarks
+
", createTime="
+
createTime
+
"}"
;
}
}
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/mapper/DatabaseInfoMapper.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/mapper/DatabaseInfoMapper.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
mapper
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
mapper
;
import
cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
generato
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
generato
r.modular.model.result.DatabaseInfoResult
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.result.DatabaseInfoResult
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -16,7 +16,7 @@ import java.util.Map;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
public
interface
DatabaseInfoMapper
extends
BaseMapper
<
DatabaseInfo
>
{
...
...
@@ -24,32 +24,32 @@ public interface DatabaseInfoMapper extends BaseMapper<DatabaseInfo> {
* 获取列表
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
List
<
DatabaseInfoResult
>
customList
(
DatabaseInfoParam
paramCondition
);
List
<
DatabaseInfoResult
>
customList
(
@Param
(
"paramCondition"
)
DatabaseInfoParam
paramCondition
);
/**
* 获取map列表
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
List
<
Map
<
String
,
Object
>>
customMapList
(
DatabaseInfoParam
paramCondition
);
List
<
Map
<
String
,
Object
>>
customMapList
(
@Param
(
"paramCondition"
)
DatabaseInfoParam
paramCondition
);
/**
* 获取分页实体列表
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
Page
<
DatabaseInfoResult
>
customPageList
(
Page
page
,
DatabaseInfoParam
paramCondition
);
Page
<
DatabaseInfoResult
>
customPageList
(
@Param
(
"page"
)
Page
page
,
@Param
(
"paramCondition"
)
DatabaseInfoParam
paramCondition
);
/**
* 获取分页map列表
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
Page
<
Map
<
String
,
Object
>>
customPageMapList
(
Page
page
,
DatabaseInfoParam
paramCondition
);
Page
<
Map
<
String
,
Object
>>
customPageMapList
(
@Param
(
"page"
)
Page
page
,
@Param
(
"paramCondition"
)
DatabaseInfoParam
paramCondition
);
}
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/mapper/mapping/DatabaseInfoMapper.xml
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/mapper/mapping/DatabaseInfoMapper.xml
100644 → 100755
View file @
c17bd4a6
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.stylefeng.guns.
generato
r.modular.mapper.DatabaseInfoMapper"
>
<mapper
namespace=
"cn.stylefeng.guns.
dbcontaine
r.modular.mapper.DatabaseInfoMapper"
>
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo"
>
<id
column=
"db_id"
property=
"dbId"
/>
<result
column=
"db_name"
property=
"dbName"
/>
<result
column=
"jdbc_driver"
property=
"jdbcDriver"
/>
<result
column=
"user_name"
property=
"userName"
/>
<result
column=
"password"
property=
"password"
/>
<result
column=
"jdbc_url"
property=
"jdbcUrl"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<resultMap
id=
"BaseResultMap"
type=
"cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo"
>
<id
column=
"db_id"
property=
"dbId"
/>
<result
column=
"db_name"
property=
"dbName"
/>
<result
column=
"jdbc_driver"
property=
"jdbcDriver"
/>
<result
column=
"user_name"
property=
"userName"
/>
<result
column=
"password"
property=
"password"
/>
<result
column=
"jdbc_url"
property=
"jdbcUrl"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"create_time"
property=
"createTime"
/>
</resultMap>
<!-- 通用查询结果列 -->
...
...
@@ -19,28 +19,41 @@
db_id AS "dbId", db_name AS "dbName", jdbc_driver AS "jdbcDriver", user_name AS "userName", password AS "password", jdbc_url AS "jdbcUrl", remarks AS "remarks", create_time AS "createTime"
</sql>
<select
id=
"customList"
resultType=
"cn.stylefeng.guns.generator.modular.model.result.DatabaseInfoResult"
parameterType=
"cn.stylefeng.guns.generator.modular.model.params.DatabaseInfoParam"
>
<select
id=
"customList"
resultType=
"cn.stylefeng.guns.dbcontainer.modular.model.result.DatabaseInfoResult"
parameterType=
"cn.stylefeng.guns.dbcontainer.modular.model.params.DatabaseInfoParam"
>
select
<include
refid=
"Base_Column_List"
/>
from database_info where 1 = 1
<if
test=
"paramCondition.dbName != null and paramCondition.dbName != ''"
>
and db_name like CONCAT('%',#{paramCondition.dbName},'%')
</if>
</select>
<select
id=
"customMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.
generato
r.modular.model.params.DatabaseInfoParam"
>
<select
id=
"customMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.
dbcontaine
r.modular.model.params.DatabaseInfoParam"
>
select
<include
refid=
"Base_Column_List"
/>
from database_info where 1 = 1
<if
test=
"paramCondition.dbName != null and paramCondition.dbName != ''"
>
and db_name like CONCAT('%',#{paramCondition.dbName},'%')
</if>
</select>
<select
id=
"customPageList"
resultType=
"cn.stylefeng.guns.
generator.modular.model.result.DatabaseInfoResult"
parameterType=
"cn.stylefeng.guns.generato
r.modular.model.params.DatabaseInfoParam"
>
<select
id=
"customPageList"
resultType=
"cn.stylefeng.guns.
dbcontainer.modular.model.result.DatabaseInfoResult"
parameterType=
"cn.stylefeng.guns.dbcontaine
r.modular.model.params.DatabaseInfoParam"
>
select
<include
refid=
"Base_Column_List"
/>
from database_info where 1 = 1
<if
test=
"paramCondition.dbName != null and paramCondition.dbName != ''"
>
and db_name like CONCAT('%',#{paramCondition.dbName},'%')
</if>
</select>
<select
id=
"customPageMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.
generato
r.modular.model.params.DatabaseInfoParam"
>
<select
id=
"customPageMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.
dbcontaine
r.modular.model.params.DatabaseInfoParam"
>
select
<include
refid=
"Base_Column_List"
/>
from database_info where 1 = 1
<if
test=
"paramCondition.dbName != null and paramCondition.dbName != ''"
>
and db_name like CONCAT('%',#{paramCondition.dbName},'%')
</if>
</select>
</mapper>
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/model/params/DatabaseInfoParam.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/model/params/DatabaseInfoParam.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
model
.
params
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
model
.
params
;
import
lombok.Data
;
import
cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam
;
import
java.util.Date
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.
math.BigDecimal
;
import
java.
util.Date
;
/**
* <p>
...
...
@@ -12,7 +12,7 @@ import java.math.BigDecimal;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
@Data
public
class
DatabaseInfoParam
implements
Serializable
,
BaseValidatingParam
{
...
...
@@ -26,7 +26,7 @@ public class DatabaseInfoParam implements Serializable, BaseValidatingParam {
private
Long
dbId
;
/**
* 数据库名称
* 数据库名称
(英文名称)
*/
private
String
dbName
;
...
...
@@ -51,6 +51,11 @@ public class DatabaseInfoParam implements Serializable, BaseValidatingParam {
private
String
jdbcUrl
;
/**
* 备注,摘要
*/
private
String
remarks
;
/**
* 创建时间
*/
private
Date
createTime
;
...
...
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/model/result/DatabaseInfoResult.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/model/result/DatabaseInfoResult.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
model
.
result
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
model
.
result
;
import
lombok.Data
;
import
java.util.Date
;
import
java.io.Serializable
;
import
java.
math.BigDecimal
;
import
java.
util.Date
;
/**
* <p>
...
...
@@ -11,7 +11,7 @@ import java.math.BigDecimal;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
@Data
public
class
DatabaseInfoResult
implements
Serializable
{
...
...
@@ -25,7 +25,7 @@ public class DatabaseInfoResult implements Serializable {
private
Long
dbId
;
/**
* 数据库名称
* 数据库名称
(英文名称)
*/
private
String
dbName
;
...
...
@@ -50,6 +50,11 @@ public class DatabaseInfoResult implements Serializable {
private
String
jdbcUrl
;
/**
* 备注,摘要
*/
private
String
remarks
;
/**
* 创建时间
*/
private
Date
createTime
;
...
...
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/service/DatabaseInfoService.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/service/DatabaseInfoService.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
service
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
service
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
generato
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
generato
r.modular.model.result.DatabaseInfoResult
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.result.DatabaseInfoResult
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
java.util.List
;
...
...
@@ -14,7 +14,7 @@ import java.util.List;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
public
interface
DatabaseInfoService
extends
IService
<
DatabaseInfo
>
{
...
...
@@ -22,7 +22,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 新增
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
void
add
(
DatabaseInfoParam
param
);
...
...
@@ -30,7 +30,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 删除
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
void
delete
(
DatabaseInfoParam
param
);
...
...
@@ -38,7 +38,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 更新
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
void
update
(
DatabaseInfoParam
param
);
...
...
@@ -46,7 +46,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 查询单条数据,Specification模式
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
DatabaseInfoResult
findBySpec
(
DatabaseInfoParam
param
);
...
...
@@ -54,7 +54,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 查询列表,Specification模式
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
List
<
DatabaseInfoResult
>
findListBySpec
(
DatabaseInfoParam
param
);
...
...
@@ -62,7 +62,7 @@ public interface DatabaseInfoService extends IService<DatabaseInfo> {
* 查询分页数据,Specification模式
*
* @author stylefeng
* @Date 2019-0
5-11
* @Date 2019-0
6-15
*/
LayuiPageInfo
findPageBySpec
(
DatabaseInfoParam
param
);
...
...
guns-
vip-gen/src/main/java/cn/stylefeng/guns/generato
r/modular/service/impl/DatabaseInfoServiceImpl.java
→
guns-
base-db-container/src/main/java/cn/stylefeng/guns/dbcontaine
r/modular/service/impl/DatabaseInfoServiceImpl.java
100644 → 100755
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generato
r
.
modular
.
service
.
impl
;
package
cn
.
stylefeng
.
guns
.
dbcontaine
r
.
modular
.
service
.
impl
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageFactory
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
generato
r.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.guns.
generato
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
generato
r.modular.model.result.DatabaseInfoResult
;
import
cn.stylefeng.guns.
generato
r.modular.service.DatabaseInfoService
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.params.DatabaseInfoParam
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.model.result.DatabaseInfoResult
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.service.DatabaseInfoService
;
import
cn.stylefeng.roses.core.util.ToolUtil
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
...
...
@@ -22,24 +22,24 @@ import java.util.List;
* </p>
*
* @author stylefeng
* @since 2019-0
5-11
* @since 2019-0
6-15
*/
@Service
public
class
DatabaseInfoServiceImpl
extends
ServiceImpl
<
DatabaseInfoMapper
,
DatabaseInfo
>
implements
DatabaseInfoService
{
@Override
public
void
add
(
DatabaseInfoParam
param
)
{
public
void
add
(
DatabaseInfoParam
param
){
DatabaseInfo
entity
=
getEntity
(
param
);
this
.
save
(
entity
);
}
@Override
public
void
delete
(
DatabaseInfoParam
param
)
{
public
void
delete
(
DatabaseInfoParam
param
){
this
.
removeById
(
getKey
(
param
));
}
@Override
public
void
update
(
DatabaseInfoParam
param
)
{
public
void
update
(
DatabaseInfoParam
param
){
DatabaseInfo
oldEntity
=
getOldEntity
(
param
);
DatabaseInfo
newEntity
=
getEntity
(
param
);
ToolUtil
.
copyProperties
(
newEntity
,
oldEntity
);
...
...
@@ -47,23 +47,23 @@ public class DatabaseInfoServiceImpl extends ServiceImpl<DatabaseInfoMapper, Dat
}
@Override
public
DatabaseInfoResult
findBySpec
(
DatabaseInfoParam
param
)
{
public
DatabaseInfoResult
findBySpec
(
DatabaseInfoParam
param
){
return
null
;
}
@Override
public
List
<
DatabaseInfoResult
>
findListBySpec
(
DatabaseInfoParam
param
)
{
public
List
<
DatabaseInfoResult
>
findListBySpec
(
DatabaseInfoParam
param
){
return
null
;
}
@Override
public
LayuiPageInfo
findPageBySpec
(
DatabaseInfoParam
param
)
{
public
LayuiPageInfo
findPageBySpec
(
DatabaseInfoParam
param
){
Page
pageContext
=
getPageContext
();
IPage
page
=
this
.
baseMapper
.
customPageList
(
pageContext
,
param
);
return
LayuiPageFactory
.
createPageInfo
(
page
);
}
private
Serializable
getKey
(
DatabaseInfoParam
param
)
{
private
Serializable
getKey
(
DatabaseInfoParam
param
){
return
param
.
getDbId
();
}
...
...
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo.js
0 → 100755
View file @
c17bd4a6
layui
.
use
([
'table'
,
'admin'
,
'ax'
],
function
()
{
var
$
=
layui
.
$
;
var
table
=
layui
.
table
;
var
$ax
=
layui
.
ax
;
var
admin
=
layui
.
admin
;
/**
* 数据库信息表管理
*/
var
DatabaseInfo
=
{
tableId
:
"databaseInfoTable"
};
/**
* 初始化表格的列
*/
DatabaseInfo
.
initColumn
=
function
()
{
return
[[
{
type
:
'checkbox'
},
{
field
:
'dbId'
,
hide
:
true
,
title
:
'主键id'
},
{
field
:
'dbName'
,
sort
:
true
,
title
:
'数据库名称'
},
{
field
:
'jdbcDriver'
,
sort
:
true
,
title
:
'驱动类型'
},
{
field
:
'userName'
,
sort
:
true
,
title
:
'账号'
},
{
field
:
'password'
,
sort
:
true
,
title
:
'密码'
},
{
field
:
'jdbcUrl'
,
sort
:
true
,
title
:
'jdbc的url'
},
{
field
:
'remarks'
,
sort
:
true
,
title
:
'备注'
},
{
field
:
'createTime'
,
sort
:
true
,
title
:
'创建时间'
},
{
align
:
'center'
,
toolbar
:
'#tableBar'
,
title
:
'操作'
}
]];
};
/**
* 点击查询按钮
*/
DatabaseInfo
.
search
=
function
()
{
var
queryData
=
{};
queryData
[
'condition'
]
=
$
(
"#condition"
).
val
();
table
.
reload
(
DatabaseInfo
.
tableId
,
{
where
:
queryData
,
page
:
{
curr
:
1
}
});
};
/**
* 弹出添加对话框
*/
DatabaseInfo
.
openAddDlg
=
function
()
{
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo/add'
;
};
/**
* 导出excel按钮
*/
DatabaseInfo
.
exportExcel
=
function
()
{
var
checkRows
=
table
.
checkStatus
(
DatabaseInfo
.
tableId
);
if
(
checkRows
.
data
.
length
===
0
)
{
Feng
.
error
(
"请选择要导出的数据"
);
}
else
{
table
.
exportFile
(
tableResult
.
config
.
id
,
checkRows
.
data
,
'xls'
);
}
};
/**
* 点击编辑
*
* @param data 点击按钮时候的行数据
*/
DatabaseInfo
.
openEditDlg
=
function
(
data
)
{
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo/edit?dbId='
+
data
.
dbId
;
};
/**
* 点击删除
*
* @param data 点击按钮时候的行数据
*/
DatabaseInfo
.
onDeleteItem
=
function
(
data
)
{
var
operation
=
function
()
{
var
ajax
=
new
$ax
(
Feng
.
ctxPath
+
"/databaseInfo/delete"
,
function
(
data
)
{
Feng
.
success
(
"删除成功!"
);
table
.
reload
(
DatabaseInfo
.
tableId
);
},
function
(
data
)
{
Feng
.
error
(
"删除失败!"
+
data
.
responseJSON
.
message
+
"!"
);
});
ajax
.
set
(
"dbId"
,
data
.
dbId
);
ajax
.
start
();
};
Feng
.
confirm
(
"是否删除?"
,
operation
);
};
// 渲染表格
var
tableResult
=
table
.
render
({
elem
:
'#'
+
DatabaseInfo
.
tableId
,
url
:
Feng
.
ctxPath
+
'/databaseInfo/list'
,
page
:
true
,
height
:
"full-158"
,
cellMinWidth
:
100
,
cols
:
DatabaseInfo
.
initColumn
()
});
// 搜索按钮点击事件
$
(
'#btnSearch'
).
click
(
function
()
{
DatabaseInfo
.
search
();
});
// 添加按钮点击事件
$
(
'#btnAdd'
).
click
(
function
()
{
DatabaseInfo
.
openAddDlg
();
});
// 导出excel
$
(
'#btnExp'
).
click
(
function
()
{
DatabaseInfo
.
exportExcel
();
});
// 工具条点击事件
table
.
on
(
'tool('
+
DatabaseInfo
.
tableId
+
')'
,
function
(
obj
)
{
var
data
=
obj
.
data
;
var
layEvent
=
obj
.
event
;
if
(
layEvent
===
'edit'
)
{
DatabaseInfo
.
openEditDlg
(
data
);
}
else
if
(
layEvent
===
'delete'
)
{
DatabaseInfo
.
onDeleteItem
(
data
);
}
});
});
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo_add.js
0 → 100755
View file @
c17bd4a6
/**
* 添加或者修改页面
*/
var
DatabaseInfoInfoDlg
=
{
data
:
{
dbName
:
""
,
jdbcDriver
:
""
,
userName
:
""
,
password
:
""
,
jdbcUrl
:
""
,
remarks
:
""
,
createTime
:
""
}
};
layui
.
use
([
'form'
,
'admin'
,
'ax'
],
function
()
{
var
$
=
layui
.
jquery
;
var
$ax
=
layui
.
ax
;
var
form
=
layui
.
form
;
var
admin
=
layui
.
admin
;
//让当前iframe弹层高度适应
admin
.
iframeAuto
();
//表单提交事件
form
.
on
(
'submit(btnSubmit)'
,
function
(
data
)
{
var
ajax
=
new
$ax
(
Feng
.
ctxPath
+
"/databaseInfo/addItem"
,
function
(
data
)
{
Feng
.
success
(
"添加成功!"
);
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo'
},
function
(
data
)
{
Feng
.
error
(
"添加失败!"
+
data
.
responseJSON
.
message
)
});
ajax
.
set
(
data
.
field
);
ajax
.
start
();
return
false
;
});
//返回按钮
$
(
"#backupPage"
).
click
(
function
()
{
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo'
});
});
\ No newline at end of file
guns-base-db-container/src/main/webapp/assets/databaseInfo/databaseInfo_edit.js
0 → 100755
View file @
c17bd4a6
/**
* 详情对话框
*/
var
DatabaseInfoInfoDlg
=
{
data
:
{
dbName
:
""
,
jdbcDriver
:
""
,
userName
:
""
,
password
:
""
,
jdbcUrl
:
""
,
remarks
:
""
,
createTime
:
""
}
};
layui
.
use
([
'form'
,
'admin'
,
'ax'
],
function
()
{
var
$
=
layui
.
jquery
;
var
$ax
=
layui
.
ax
;
var
form
=
layui
.
form
;
var
admin
=
layui
.
admin
;
//让当前iframe弹层高度适应
admin
.
iframeAuto
();
//获取详情信息,填充表单
var
ajax
=
new
$ax
(
Feng
.
ctxPath
+
"/databaseInfo/detail?dbId="
+
Feng
.
getUrlParam
(
"dbId"
));
var
result
=
ajax
.
start
();
form
.
val
(
'databaseInfoForm'
,
result
.
data
);
//表单提交事件
form
.
on
(
'submit(btnSubmit)'
,
function
(
data
)
{
var
ajax
=
new
$ax
(
Feng
.
ctxPath
+
"/databaseInfo/editItem"
,
function
(
data
)
{
Feng
.
success
(
"更新成功!"
);
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo'
},
function
(
data
)
{
Feng
.
error
(
"更新失败!"
+
data
.
responseJSON
.
message
)
});
ajax
.
set
(
data
.
field
);
ajax
.
start
();
return
false
;
});
//返回按钮
$
(
"#backupPage"
).
click
(
function
()
{
window
.
location
.
href
=
Feng
.
ctxPath
+
'/databaseInfo'
});
});
\ No newline at end of file
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo.html
0 → 100755
View file @
c17bd4a6
@layout("/common/_container.html",{js:["/assets/databaseInfo/databaseInfo.js"]}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
数据库信息表管理
</span>
</div>
<div
class=
"layui-fluid"
>
<div
class=
"layui-row layui-col-space15"
>
<div
class=
"layui-col-sm12 layui-col-md12 layui-col-lg12"
>
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<div
class=
"layui-form toolbar"
>
<div
class=
"layui-form-item"
>
<div
class=
"layui-inline"
>
<input
id=
"condition"
class=
"layui-input"
type=
"text"
placeholder=
"名称"
/>
</div>
<div
class=
"layui-inline"
>
<button
id=
"btnSearch"
class=
"layui-btn icon-btn"
><i
class=
"layui-icon"
>

</i>
搜索
</button>
<button
id=
"btnAdd"
class=
"layui-btn icon-btn"
><i
class=
"layui-icon"
>

</i>
添加
</button>
<button
id=
"btnExp"
class=
"layui-btn icon-btn"
><i
class=
"layui-icon"
>

</i>
导出
</button>
</div>
</div>
</div>
<table
class=
"layui-table"
id=
"databaseInfoTable"
lay-filter=
"databaseInfoTable"
></table>
</div>
</div>
</div>
</div>
</div>
<script
type=
"text/html"
id=
"tableBar"
>
<
a
class
=
"layui-btn layui-btn-primary layui-btn-xs"
lay
-
event
=
"edit"
>
修改
<
/a
>
<
a
class
=
"layui-btn layui-btn-danger layui-btn-xs"
lay
-
event
=
"delete"
>
删除
<
/a
>
</script>
@}
\ No newline at end of file
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo_add.html
0 → 100755
View file @
c17bd4a6
@layout("/common/_container.html",{js:["/assets/databaseInfo/databaseInfo_add.js"]}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
添加
</span>
</div>
<div
class=
"layui-fluid "
style=
""
>
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<form
id=
"databaseInfoForm"
lay-filter=
"databaseInfoForm"
class=
"layui-form model-form"
style=
"max-width: 700px;margin: 40px auto;"
>
<input
name=
"dbId"
type=
"hidden"
/>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
数据库名称
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"dbName"
name=
"dbName"
placeholder=
"数据库名称"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC驱动
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<select
name=
"jdbcDriver"
>
<option
value=
"com.mysql.cj.jdbc.Driver"
>
com.mysql.cj.jdbc.Driver
</option>
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC账号
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"userName"
name=
"userName"
placeholder=
"账号"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC密码
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"password"
name=
"password"
placeholder=
"密码"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC URL
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"jdbcUrl"
name=
"jdbcUrl"
placeholder=
"jdbc的url"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
备注
</label>
<div
class=
"layui-input-block"
>
<input
id=
"remarks"
name=
"remarks"
placeholder=
"备注"
type=
"text"
class=
"layui-input"
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<div
class=
"layui-input-block"
>
<button
class=
"layui-btn"
lay-filter=
"btnSubmit"
lay-submit
>
 
提交
 
</button>
<button
class=
"layui-btn layui-btn-primary"
type=
"button"
id=
"backupPage"
>
 
返回
 
</button>
</div>
</div>
</form>
</div>
</div>
</div>
@}
\ No newline at end of file
guns-base-db-container/src/main/webapp/pages/databaseInfo/databaseInfo_edit.html
0 → 100755
View file @
c17bd4a6
@layout("/common/_container.html",{js:["/assets/databaseInfo/databaseInfo_edit.js"]}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
修改
</span>
</div>
<div
class=
"layui-fluid "
style=
""
>
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<form
id=
"databaseInfoForm"
lay-filter=
"databaseInfoForm"
class=
"layui-form model-form"
style=
"max-width: 700px;margin: 40px auto;"
>
<input
name=
"dbId"
type=
"hidden"
/>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
数据库名称
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"dbName"
name=
"dbName"
placeholder=
"数据库名称"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC驱动
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<select
name=
"jdbcDriver"
>
<option
value=
"com.mysql.cj.jdbc.Driver"
>
com.mysql.cj.jdbc.Driver
</option>
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC账号
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"userName"
name=
"userName"
placeholder=
"账号"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC密码
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"password"
name=
"password"
placeholder=
"密码"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
JDBC URL
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
id=
"jdbcUrl"
name=
"jdbcUrl"
placeholder=
"jdbc的url"
type=
"text"
class=
"layui-input"
lay-verify=
"required"
required
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
备注
</label>
<div
class=
"layui-input-block"
>
<input
id=
"remarks"
name=
"remarks"
placeholder=
"备注"
type=
"text"
class=
"layui-input"
autocomplete=
"off"
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<div
class=
"layui-input-block"
>
<button
class=
"layui-btn"
lay-filter=
"btnSubmit"
lay-submit
>
 
提交
 
</button>
<button
class=
"layui-btn layui-btn-primary"
type=
"button"
id=
"backupPage"
>
 
返回
 
</button>
</div>
</div>
</form>
</div>
</div>
</div>
@}
\ No newline at end of file
guns-vip-gen/pom.xml
View file @
c17bd4a6
...
...
@@ -24,6 +24,13 @@
<version>
1.0.0
</version>
</dependency>
<!--基础组件-->
<dependency>
<groupId>
cn.stylefeng
</groupId>
<artifactId>
guns-base-db-container
</artifactId>
<version>
1.0.0
</version>
</dependency>
<!--mp代码生成器-->
<dependency>
<groupId>
com.baomidou
</groupId>
...
...
guns-vip-gen/src/main/java/cn/stylefeng/guns/generator/modular/controller/GeneratorController.java
View file @
c17bd4a6
...
...
@@ -3,13 +3,13 @@ package cn.stylefeng.guns.generator.modular.controller;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.ZipUtil
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.dbcontainer.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.dbcontainer.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.guns.generator.core.generator.base.model.ContextParam
;
import
cn.stylefeng.guns.generator.core.generator.guns.GunsExecutor
;
import
cn.stylefeng.guns.generator.core.generator.restful.mybatisplus.param.MpParam
;
import
cn.stylefeng.guns.generator.core.util.ConcatUtil
;
import
cn.stylefeng.guns.generator.core.util.MapperConditionMapHolder
;
import
cn.stylefeng.guns.generator.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.generator.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.guns.generator.modular.service.TableService
;
import
cn.stylefeng.roses.core.reqres.response.ResponseData
;
import
cn.stylefeng.roses.core.reqres.response.SuccessResponseData
;
...
...
guns-vip-gen/src/main/java/cn/stylefeng/guns/generator/modular/service/TableService.java
View file @
c17bd4a6
package
cn
.
stylefeng
.
guns
.
generator
.
modular
.
service
;
import
cn.stylefeng.guns.
generato
r.core.util.DbUtil
;
import
cn.stylefeng.guns.
generato
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
generato
r.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.guns.
dbcontaine
r.core.util.DbUtil
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.entity.DatabaseInfo
;
import
cn.stylefeng.guns.
dbcontaine
r.modular.mapper.DatabaseInfoMapper
;
import
cn.stylefeng.roses.core.util.HttpContext
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
guns-vip-gen/src/main/webapp/assets/gen/gen.js
View file @
c17bd4a6
...
...
@@ -27,7 +27,7 @@ layui.use(['layer', 'ax', 'form', 'laydate', 'element', 'table'], function () {
table
.
render
({
elem
:
'#dbTableList'
,
url
:
Feng
.
ctxPath
+
'/d
b
/tableList'
,
url
:
Feng
.
ctxPath
+
'/d
atabaseInfo
/tableList'
,
page
:
false
,
cols
:
[[
{
type
:
'checkbox'
}
...
...
guns-vip-gen/src/main/webapp/pages/gen/gen.html
View file @
c17bd4a6
@layout("/common/_container.html",{title:"代码生成",
bg:"bg-white",
js:["/assets/gen/gen.js"]}){
@layout("/common/_container.html",{title:"代码生成",js:["/assets/gen/gen.js"]}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
代码生成
</span>
</div>
<div
class=
"layui-tab layui-tab-brief"
lay-filter=
"docDemoTabBrief"
>
<ul
class=
"layui-tab-title"
>
<li
class=
"layui-this"
id=
"code_gen"
>
代码生成
</li>
<li
id=
"db_config"
>
数据库配置
</li>
<li
id=
"add_db"
>
添加数据源
</li>
</ul>
<div
class=
"layui-tab-content"
style=
"height: 100px;"
>
<div
class=
"layui-tab-item layui-show"
>
<div
class=
"layui-fluid"
>
<div
class=
"layui-row layui-col-space15"
>
<div
class=
"layui-col-xs12"
>
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<div
class=
"layui-form"
>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
作者
</label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"author"
name=
"author"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"代码生成注释的作者"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
项目包名称
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"具体到模块包"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"proPackage"
name=
"proPackage"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"项目包名称,例如:cn.stylefeng.guns.modular.demos"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
模块名称
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"利用模块名称来为业务分类,本字段可为空"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"modularName"
name=
"modularName"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"模块名称"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
表前缀移除
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"移除表的前缀关键字"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"removePrefix"
name=
"removePrefix"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"表前缀移除"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
数据源选择
</label>
<div
class=
"layui-input-block"
>
<select
id=
"dataSourceId"
name=
"dataSourceId"
lay-filter=
"dataSourceId"
>
<option
value=
""
></option>
@for(item in dataSources!){
<option
value=
"${item.dbId}"
>
${item.dbName}
</option>
@}
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
选择表
</label>
<div
class=
"layui-input-block"
>
<table
class=
"layui-hide"
id=
"dbTableList"
lay-filter=
"dbTableList"
></table>
</div>
</div>
<div
class=
"layui-form-item"
>
<div
class=
"layui-input-block"
>
<button
class=
"layui-btn"
lay-submit=
""
id=
"execute"
>
生成代码
</button>
<button
type=
"reset"
class=
"layui-btn layui-btn-primary"
>
重置
</button>
</div>
</div>
</div>
<div
class=
"layui-fluid"
>
<div
class=
"layui-row layui-col-space15"
>
<div
class=
"layui-col-lg12"
>
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<div
class=
"layui-form"
>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
作者
</label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"author"
name=
"author"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"代码生成注释的作者"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
项目包名称
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"具体到模块包"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"proPackage"
name=
"proPackage"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"项目包名称,例如:cn.stylefeng.guns.modular.demos"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
模块名称
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"利用模块名称来为业务分类,本字段可为空"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"modularName"
name=
"modularName"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"模块名称"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
表前缀移除
<i
class=
"layui-icon layui-icon-tips"
lay-tips=
"移除表的前缀关键字"
></i></label>
<div
class=
"layui-input-block"
>
<input
type=
"text"
id=
"removePrefix"
name=
"removePrefix"
lay-verify=
"title"
autocomplete=
"off"
placeholder=
"表前缀移除"
class=
"layui-input"
>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
数据源选择
</label>
<div
class=
"layui-input-block"
>
<select
id=
"dataSourceId"
name=
"dataSourceId"
lay-filter=
"dataSourceId"
>
<option
value=
""
></option>
@for(item in dataSources!){
<option
value=
"${item.dbId}"
>
${item.dbName}
</option>
@}
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
选择表
</label>
<div
class=
"layui-input-block"
>
<table
class=
"layui-hide"
id=
"dbTableList"
lay-filter=
"dbTableList"
></table>
</div>
</div>
<div
class=
"layui-form-item"
>
<div
class=
"layui-input-block"
>
<button
class=
"layui-btn"
lay-submit=
""
id=
"execute"
>
生成代码
</button>
<button
type=
"reset"
class=
"layui-btn layui-btn-primary"
>
重置
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"layui-tab-item"
>
加载中...
</div>
<div
class=
"layui-tab-item"
>
加载中...
</div>
</div>
</div>
...
...
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/DataSourceConfig.java
View file @
c17bd4a6
...
...
@@ -26,7 +26,7 @@ import org.springframework.context.annotation.Primary;
import
javax.sql.DataSource
;
import
static
cn
.
stylefeng
.
datasource
.
container
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
import
static
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
/**
* 多数据源配置<br/>
...
...
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/PluginsConfig.java
View file @
c17bd4a6
...
...
@@ -14,10 +14,10 @@ import org.springframework.context.annotation.Configuration;
*/
@Configuration
@MapperScan
(
basePackages
=
{
"cn.stylefeng.guns.sys.modular.*.mapper"
,
"cn.stylefeng.guns.generator.modular.mapper"
,
"cn.stylefeng.guns.modular.*.mapper"
,
"cn.stylefeng.guns.sms.modular.mapper"
,
"cn.stylefeng.guns.oauth.modular.mapper"
})
"cn.stylefeng.guns.oauth.modular.mapper"
,
"cn.stylefeng.guns.dbcontainer.modular.mapper"
})
public
class
PluginsConfig
{
/**
...
...
guns-vip-main/src/main/java/cn/stylefeng/guns/config/datasource/SqlSessionFactoryConfig.java
View file @
c17bd4a6
...
...
@@ -15,9 +15,9 @@
*/
package
cn
.
stylefeng
.
guns
.
config
.
datasource
;
import
cn.stylefeng.
datasource.container
.context.DataSourceContext
;
import
cn.stylefeng.
datasource.container
.context.SqlSessionFactoryContext
;
import
cn.stylefeng.
datasource.container
.exception.DataSourceInitException
;
import
cn.stylefeng.
guns.dbcontainer.core
.context.DataSourceContext
;
import
cn.stylefeng.
guns.dbcontainer.core
.context.SqlSessionFactoryContext
;
import
cn.stylefeng.
guns.dbcontainer.core
.exception.DataSourceInitException
;
import
cn.stylefeng.roses.core.config.properties.DruidProperties
;
import
cn.stylefeng.roses.core.mutidatasource.mybatis.OptionalSqlSessionTemplate
;
import
cn.stylefeng.roses.kernel.model.exception.ServiceException
;
...
...
@@ -42,7 +42,7 @@ import org.springframework.util.StringUtils;
import
javax.sql.DataSource
;
import
java.util.Map
;
import
static
cn
.
stylefeng
.
datasource
.
container
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
import
static
cn
.
stylefeng
.
guns
.
dbcontainer
.
core
.
context
.
DataSourceContext
.
MASTER_DATASOURCE_NAME
;
/**
* 多数据源配置<br/>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment