<!DOCTYPE html> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <head th:include="include :: header"></head> <body class="gray-bg"> <div class="container-div"> <div class="row"> <div class="col-sm-12 select-info"> <form id="gen-form"> <div class="select-list"> <ul> <li> 表名称:<input type="text" name="tableName"/> </li> <li> 表描述:<input type="text" name="tableComment"/> </li> <li class="time"> <label>表时间: </label> <input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginTime]"/> <span>-</span> <input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endTime]"/> </li> <li> <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> </li> </ul> </div> </form> </div> <div class="btn-group-sm" id="toolbar" role="group"> <a class="btn btn-success multiple disabled" onclick="javascript:batchGenCode()" shiro:hasPermission="tool:gen:code"> <i class="fa fa-download"></i> 生成 </a> <a class="btn btn-info" onclick="importTable()"> <i class="fa fa-upload"></i> 导入 </a> <a class="btn btn-primary single disabled" onclick="edit()" shiro:hasPermission="tool:gen:edit"> <i class="fa fa-edit"></i> 修改 </a> <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="tool:gen:remove"> <i class="fa fa-remove"></i> 删除 </a> </div> <div class="col-sm-12 select-info"> <table id="bootstrap-table"></table> </div> </div> </div> <div th:include="include :: footer"></div> <script th:inline="javascript"> var prefix = ctx + "tool/gen"; var editFlag = [[${@permission.hasPermi('tool:gen:edit')}]]; var removeFlag = [[${@permission.hasPermi('tool:gen:remove')}]]; var previewFlag = [[${@permission.hasPermi('tool:gen:preview')}]]; var codeFlag = [[${@permission.hasPermi('tool:gen:code')}]]; $(function() { var options = { url: prefix + "/list", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", sortName: "create_time", sortOrder: "desc", showExport: true, modalName: "生成配置", rememberSelected: true, uniqueId: "tableId", columns: [{ field: 'state', checkbox: true }, { field: 'tableId', title: '编号', visible: false }, { title: "序号", formatter: function (value, row, index) { return $.table.serialNumber(index); } }, { field: 'tableName', title: '表名称', sortable: true, formatter: function(value, row, index) { return $.table.tooltip(value); } }, { field: 'tableComment', title: '表描述', sortable: true, formatter: function(value, row, index) { return $.table.tooltip(value, 15); } }, { field: 'className', title: '实体类名称', sortable: true }, { field: 'createTime', title: '创建时间', sortable: true }, { field: 'updateTime', title: '更新时间', sortable: true }, { title: '操作', align: 'center', formatter: function(value, row, index) { var actions = []; actions.push('<a class="btn btn-info btn-xs ' + previewFlag + '" href="javascript:void(0)" onclick="preview(\'' + row.tableId + '\')"><i class="fa fa-search"></i>预览</a> '); actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.tableId + '\')"><i class="fa fa-edit"></i>编辑</a> '); actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.tableId + '\')"><i class="fa fa-remove"></i>删除</a> '); actions.push('<a class="btn btn-primary btn-xs ' + codeFlag + '" href="javascript:void(0)" onclick="genCode(\'' + row.tableName + '\')"><i class="fa fa-bug"></i>生成代码</a> '); return actions.join(''); } }] }; $.table.init(options); }); // 预览代码 function preview(tableId) { var preViewUrl = prefix + "/preview/" + tableId; $.modal.loading("正在加载数据,请稍后..."); $.get(preViewUrl, function(result) { if (result.code == web_status.SUCCESS) { var items = []; $.each(result.data, function(index, value) { value = value.replace(/</g, "<"); value = value.replace(/>/g, ">"); var templateName = index.substring(index.lastIndexOf("/") + 1, index.length).replace(/\.vm/g, ""); if(!$.common.equals("sql", templateName) && !$.common.equals("tree.html", templateName) && !$.common.equals("sub-domain.java", templateName)){ items.push({ title: templateName , content: "<pre class=\"layui-code\">" + value + "</pre>" }) } }); layer.tab({ area: ['90%', '90%'], shadeClose: true, tab: items }); } else { $.modal.alertError(result.msg); } $.modal.closeLoading(); }); } // 生成代码 function genCode(tableName) { $.modal.confirm("确定要生成" + tableName + "表代码吗?", function() { location.href = prefix + "/genCode/" + tableName; layer.msg('执行成功,正在生成代码请稍后…', { icon: 1 }); }) } //批量生成代码 function batchGenCode() { var rows = $.table.selectColumns("tableName"); if (rows.length == 0) { $.modal.alertWarning("请选择要生成的数据"); return; } $.modal.confirm("确认要生成选中的" + rows.length + "条数据吗?", function() { location.href = prefix + "/batchGenCode?tables=" + rows; layer.msg('执行成功,正在生成代码请稍后…', { icon: 1 }); }); } // 导入表结构 function importTable() { var importTableUrl = prefix + "/importTable"; $.modal.open("导入表结构", importTableUrl); } function edit() { let row = $('#bootstrap-table').bootstrapTable('getSelections'); $.operate.edit(row[0].tableId); } </script> </body> </html>