diff --git a/db-file/2.0版本/opsli-boot.sql b/db-file/2.0版本/opsli-boot.sql index 2471ebd..5200182 100644 --- a/db-file/2.0版本/opsli-boot.sql +++ b/db-file/2.0版本/opsli-boot.sql @@ -1,17 +1,15 @@ /* - Navicat Premium Data Transfer - - Source Server : 本地数据库连接 + Source Server : OPSLI快速开发平台 Source Server Type : MySQL Source Server Version : 80018 - Source Host : localhost:3306 + Source Host : 127.0.0.1:3306 Source Schema : opsli-boot Target Server Type : MySQL Target Server Version : 80018 File Encoding : 65001 - Date: 03/08/2022 18:58:02 + Date: 08/08/2022 12:57:37 */ SET NAMES utf8mb4; @@ -215,7 +213,7 @@ CREATE TABLE `gen_template` ( -- Records of gen_template -- ---------------------------- BEGIN; -INSERT INTO `gen_template` VALUES (1398253704724828162, 'Form表单', '0', '默认Form表单', 40, 1313694379541635074, '2021-05-28 20:23:56', 1, '2022-07-27 13:11:12'); +INSERT INTO `gen_template` VALUES (1398253704724828162, 'Form表单', '0', '默认Form表单', 48, 1313694379541635074, '2021-05-28 20:23:56', 1, '2022-08-07 00:10:00'); COMMIT; -- ---------------------------- @@ -243,18 +241,18 @@ CREATE TABLE `gen_template_detail` ( -- Records of gen_template_detail -- ---------------------------- BEGIN; -INSERT INTO `gen_template_detail` VALUES (1552159694968872961, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/entity', '${model.tableHumpName}Entity.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity;\n#else\npackage #(data.packageName+\".\"+data.moduleName).entity;\n#end\n\n#for(pkg : data.model.entityPkgList)\nimport #(pkg);\n#end\nimport com.baomidou.mybatisplus.annotation.FieldStrategy;\nimport com.baomidou.mybatisplus.annotation.TableField;\nimport com.baomidou.mybatisplus.annotation.TableLogic;\nimport lombok.Data;\nimport lombok.EqualsAndHashCode;\nimport org.opsli.core.base.entity.BaseEntity;\n\n/**\n * #(data.codeTitle) Entity\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Data\n@EqualsAndHashCode(callSuper = false)\npublic class #(data.model.tableHumpName) extends BaseEntity {\n\n\n #for(column : data.model.columnList)\n ### 不等于 删除字段 和 不等于 租户字段放入上边\n #if(column.fieldHumpName != \"deleted\" && column.fieldHumpName != \"tenantId\")\n /** #(column.fieldComments) */\n #if(!column.izNotNull)\n @TableField(updateStrategy = FieldStrategy.IGNORED)\n #end\n private #(column.javaType) #(column.fieldHumpName);\n\n #end\n #end\n\n // ========================================\n\n ### 专门处理 删除字段 和 租户字段\n #for(column : data.model.columnList)\n #if(column.fieldHumpName == \"deleted\")\n /** 逻辑删除字段 */\n @TableLogic\n private Integer deleted;\n #else if(column.fieldHumpName == \"tenantId\")\n /** 多租户字段 */\n private String tenantId;\n #end\n\n #end\n\n}', '1', 0, 1, '2022-07-27 13:11:24', 1, '2022-07-27 13:11:24'); -INSERT INTO `gen_template_detail` VALUES (1552159713998430210, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/mapper', '${model.tableHumpName}Mapper.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).mapper;\n#else\npackage #(data.packageName+\".\"+data.moduleName).mapper;\n#end\n\nimport com.baomidou.mybatisplus.core.mapper.BaseMapper;\nimport org.apache.ibatis.annotations.Mapper;\nimport org.apache.ibatis.annotations.Param;\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\n#end\n\n/**\n * #(data.codeTitle) Mapper\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Mapper\npublic interface #(data.model.tableHumpName)Mapper extends BaseMapper<#(data.model.tableHumpName)> {\n\n}', '0', 0, 1, '2022-07-27 13:11:28', 1, '2022-07-27 13:11:28'); -INSERT INTO `gen_template_detail` VALUES (1552159719581048833, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/mapper/xml', '${model.tableHumpName}Mapper.xml', '\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\n\n#else\n\n#end\n\n\n', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722206683138, 1398253704724828162, '0', 'org/opsli/api/wrapper/${moduleName}/${subModuleName}', '${model.tableHumpName}Model.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName);\n#else\npackage #(apiPath).wrapper.#(data.moduleName);\n#end\n\n#for(pkg : data.model.entityPkgList)\nimport #(pkg);\n#end\nimport com.alibaba.excel.annotation.ExcelProperty;\nimport io.swagger.annotations.ApiModelProperty;\nimport lombok.Data;\nimport lombok.EqualsAndHashCode;\nimport #(apiPath).base.warpper.ApiWrapper;\nimport org.opsli.common.annotation.validator.Validator;\nimport org.opsli.common.annotation.validator.ValidatorLenMax;\nimport org.opsli.common.annotation.validator.ValidatorLenMin;\nimport org.opsli.common.enums.ValidatorType;\nimport org.opsli.plugins.excel.annotation.ExcelInfo;\nimport com.fasterxml.jackson.annotation.JsonFormat;\nimport org.springframework.format.annotation.DateTimeFormat;\n\n/**\n* #(data.codeTitle) Model\n*\n* @author #(data.authorName)\n* @date #(currTime)\n*/\n@Data\n@EqualsAndHashCode(callSuper = false)\npublic class #(data.model.tableHumpName)Model extends ApiWrapper {\n\n #for(column : data.model.columnList)\n ### 不等于 删除字段 和 不等于 租户字段放入上边\n #if(column.fieldHumpName != \"deleted\" && column.fieldHumpName != \"tenantId\")\n /** #(column.fieldComments) */\n @ApiModelProperty(value = \"#(column.fieldComments)\")\n @ExcelProperty(value = \"#(column.fieldComments)\", order = #(column.sort))\n #if(column.dictTypeCode != null && column.dictTypeCode != \"\")\n @ExcelInfo( dictType = \"#(column.dictTypeCode)\" )\n #else\n @ExcelInfo\n #end\n #if(column.validateTypeAndCommaList != null && column.validateTypeAndCommaList.size() > 0)\n @Validator({\n #for(typeAndComma : column.validateTypeAndCommaList)\n ValidatorType.#(typeAndComma)\n #end\n })\n #end\n #if(column.fieldLength != null && column.fieldLength > 0)\n #if(column.fieldPrecision != null && column.fieldPrecision > 0)\n @ValidatorLenMax(#(column.fieldLength+column.fieldPrecision))\n #else\n @ValidatorLenMax(#(column.fieldLength))\n #end\n #end\n ### 日期处理\n #if(column.javaType == \"Date\")\n #if(column.showType == \"4\")\n @JsonFormat(timezone = \"GMT+8\", pattern = \"yyyy-MM-dd\")\n @DateTimeFormat(pattern = \"yyyy-MM-dd\")\n #else\n @JsonFormat(timezone = \"GMT+8\", pattern = \"yyyy-MM-dd HH:mm:ss\")\n @DateTimeFormat(pattern = \"yyyy-MM-dd HH:mm:ss\")\n #end\n #end\n private #(column.javaType) #(column.fieldHumpName);\n\n #end\n #end\n\n\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722336706561, 1398253704724828162, '0', 'org/opsli/api/web/${moduleName}/${subModuleName}', '${model.tableHumpName}RestApi.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(apiPath).web.#(data.moduleName+\".\"+data.subModuleName);\n#else\npackage #(apiPath).web.#(data.moduleName);\n#end\n\nimport org.opsli.api.base.result.ResultWrapper;\nimport org.springframework.web.bind.annotation.GetMapping;\nimport org.springframework.web.bind.annotation.PostMapping;\nimport org.springframework.web.bind.annotation.RequestBody;\nimport org.springframework.web.bind.annotation.RequestParam;\nimport org.springframework.web.multipart.MultipartHttpServletRequest;\nimport javax.servlet.http.HttpServletRequest;\nimport javax.servlet.http.HttpServletResponse;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\n#else\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\n#end\n\n\n/**\n * #(data.codeTitle) Api\n *\n * 对外 API 直接 暴露 @GetMapping 或者 @PostMapping\n * 对内也推荐 单机版 不需要设置 Mapping 但是调用方法得从Controller写起\n *\n * 这样写法虽然比较绕,但是当单体项目想要改造微服务架构时 时非常容易的\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\npublic interface #(data.model.tableHumpName)RestApi {\n\n /** 标题 */\n String TITLE = \"#(data.codeTitle)\";\n /** 子标题 */\n String SUB_TITLE = \"#(data.codeTitleBrief)\";\n\n /**\n * #(data.codeTitle) 查一条\n * @param model 模型\n * @return ResultWrapper\n */\n @GetMapping(\"/get\")\n ResultWrapper<#(data.model.tableHumpName)Model> get(#(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 查询分页\n * @param pageNo 当前页\n * @param pageSize 每页条数\n * @param request request\n * @return ResultWrapper\n */\n @GetMapping(\"/findPage\")\n ResultWrapper findPage(\n @RequestParam(name = \"pageNo\", defaultValue = \"1\") Integer pageNo,\n @RequestParam(name = \"pageSize\", defaultValue = \"10\") Integer pageSize,\n HttpServletRequest request\n );\n\n /**\n * #(data.codeTitle) 新增\n * @param model 模型\n * @return ResultWrapper\n */\n @PostMapping(\"/insert\")\n ResultWrapper insert(@RequestBody #(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 修改\n * @param model 模型\n * @return ResultWrapper\n */\n @PostMapping(\"/update\")\n ResultWrapper update(@RequestBody #(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 删除\n * @param id ID\n * @return ResultWrapper\n */\n @PostMapping(\"/del\")\n ResultWrapper del(String id);\n\n /**\n * #(data.codeTitle) 批量删除\n * @param ids ID 数组\n * @return ResultWrapper\n */\n @PostMapping(\"/delAll\")\n ResultWrapper delAll(String ids);\n\n /**\n * #(data.codeTitle) Excel 导出\n *\n * 导出时,Token认证和方法权限认证 全部都由自定义完成\n * 因为在 导出不成功时,需要推送错误信息,\n * 前端直接走下载流,当失败时无法获得失败信息,即使前后端换一种方式后端推送二进制文件前端再次解析也是最少2倍的耗时\n * ,且如果数据量过大,前端进行渲染时直接会把浏览器卡死\n * 而直接开启socket接口推送显然是太过浪费资源了,所以目前采用Java最原始的手段\n * response 推送 javascript代码 alert 提示报错信息\n *\n * @param request request\n * @param response response\n */\n @GetMapping(\"/exportExcel\")\n void exportExcel(HttpServletRequest request, HttpServletResponse response);\n\n /**\n * #(data.codeTitle) Excel 导入\n * @param request 文件流 request\n * @return ResultWrapper\n */\n @PostMapping(\"/importExcel\")\n ResultWrapper importExcel(MultipartHttpServletRequest request);\n\n /**\n * #(data.codeTitle) Excel 下载导入模版\n * @param response response\n */\n @GetMapping(\"/importExcel/template\")\n void importTemplate(HttpServletResponse response);\n\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722433175553, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/web', '${model.tableHumpName}RestController.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).web;\n#else\npackage #(data.packageName+\".\"+data.moduleName).web;\n#end\n\nimport cn.hutool.core.util.ReflectUtil;\nimport cn.hutool.core.convert.Convert;\nimport io.swagger.annotations.Api;\nimport io.swagger.annotations.ApiOperation;\nimport lombok.extern.slf4j.Slf4j;\nimport org.opsli.common.annotation.RequiresPermissionsCus;\nimport #(apiPath).base.result.ResultWrapper;\nimport org.opsli.common.annotation.ApiRestController;\nimport org.opsli.core.base.controller.BaseRestController;\nimport org.opsli.core.persistence.Page;\nimport org.opsli.core.persistence.querybuilder.QueryBuilder;\nimport org.opsli.core.persistence.querybuilder.WebQueryBuilder;\nimport org.springframework.web.multipart.MultipartHttpServletRequest;\nimport javax.servlet.http.HttpServletRequest;\nimport javax.servlet.http.HttpServletResponse;\nimport java.lang.reflect.Method;\nimport org.springframework.security.access.prepost.PreAuthorize;\nimport org.opsli.core.log.enums.*;\nimport org.opsli.core.log.annotation.OperateLogger;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.I#(data.model.tableHumpName)Service;\nimport #(apiPath).web.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)RestApi;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName).service.I#(data.model.tableHumpName)Service;\nimport #(apiPath).web.#(data.moduleName).#(data.model.tableHumpName)RestApi;\n#end\n\n/**\n * #(data.codeTitle) Controller\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Api(tags = #(data.model.tableHumpName)RestApi.TITLE)\n@Slf4j\n#if(data.subModuleName != null && data.subModuleName != \"\")\n@ApiRestController(\"/{ver}/#(data.moduleName)/#(data.subModuleName)\")\n#else\n@ApiRestController(\"/{ver}/#(data.moduleName)\")\n#end\npublic class #(data.model.tableHumpName)RestController extends BaseRestController<#(data.model.tableHumpName), #(data.model.tableHumpName)Model, I#(data.model.tableHumpName)Service>\n implements #(data.model.tableHumpName)RestApi {\n\n\n /**\n * #(data.codeTitleBrief) 查一条\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"获得单条#(data.codeTitleBrief)\", notes = \"获得单条#(data.codeTitleBrief) - ID\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_select\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_select\')\")\n #end\n @Override\n public ResultWrapper<#(data.model.tableHumpName)Model> get(#(data.model.tableHumpName)Model model) {\n // 如果系统内部调用 则直接查数据库\n if(model != null && model.getIzApi() != null && model.getIzApi()){\n model = IService.get(model);\n }\n return ResultWrapper.getSuccessResultWrapper(model);\n }\n\n /**\n * #(data.codeTitleBrief) 查询分页\n * @param pageNo 当前页\n * @param pageSize 每页条数\n * @param request request\n * @return ResultWrapper\n */\n @ApiOperation(value = \"获得分页数据\", notes = \"获得分页数据 - 查询构造器\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_select\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_select\')\")\n #end\n @Override\n public ResultWrapper findPage(Integer pageNo, Integer pageSize, HttpServletRequest request) {\n\n QueryBuilder<#(data.model.tableHumpName)> queryBuilder = new WebQueryBuilder<>(IService.getEntityClass(), request.getParameterMap());\n Page<#(data.model.tableHumpName), #(data.model.tableHumpName)Model> page = new Page<>(pageNo, pageSize);\n page.setQueryWrapper(queryBuilder.build());\n page = IService.findPage(page);\n\n return ResultWrapper.getSuccessResultWrapper(page.getPageData());\n }\n\n /**\n * #(data.codeTitleBrief) 新增\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"新增#(data.codeTitleBrief)数据\", notes = \"新增#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_insert\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_insert\')\")\n #end\n @OperateLogger(description = \"新增#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.INSERT, db = true)\n @Override\n public ResultWrapper insert(#(data.model.tableHumpName)Model model) {\n // 调用新增方法\n IService.insert(model);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"新增#(data.codeTitleBrief)成功\");\n }\n\n /**\n * #(data.codeTitleBrief) 修改\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"修改#(data.codeTitleBrief)数据\", notes = \"修改#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_update\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_update\')\")\n #end \n @OperateLogger(description = \"修改#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.UPDATE, db = true)\n @Override\n public ResultWrapper update(#(data.model.tableHumpName)Model model) {\n // 调用修改方法\n IService.update(model);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"修改#(data.codeTitleBrief)成功\");\n }\n\n\n /**\n * #(data.codeTitleBrief) 删除\n * @param id ID\n * @return ResultVo\n */\n @ApiOperation(value = \"删除#(data.codeTitleBrief)数据\", notes = \"删除#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_delete\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_delete\')\")\n #end \n @OperateLogger(description = \"删除#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.DELETE, db = true)\n @Override\n public ResultWrapper del(String id){\n IService.delete(id);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"删除#(data.codeTitleBrief)成功\");\n }\n\n /**\n * #(data.codeTitleBrief) 批量删除\n * @param ids ID 数组\n * @return ResultVo\n */\n @ApiOperation(value = \"批量删除#(data.codeTitleBrief)数据\", notes = \"批量删除#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_delete\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_delete\')\")\n #end \n @OperateLogger(description = \"批量删除#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.DELETE, db = true)\n @Override\n public ResultWrapper delAll(String ids){\n String[] idArray = Convert.toStrArray(ids);\n IService.deleteAll(idArray);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"批量删除#(data.codeTitleBrief)成功\");\n }\n\n\n /**\n * #(data.codeTitleBrief) Excel 导出\n * 注:这里 RequiresPermissionsCus 引入的是 自定义鉴权注解\n *\n * 导出时,Token认证和方法权限认证 全部都由自定义完成\n * 因为在 导出不成功时,需要推送错误信息,\n * 前端直接走下载流,当失败时无法获得失败信息,即使前后端换一种方式后端推送二进制文件前端再次解析也是最少2倍的耗时\n * ,且如果数据量过大,前端进行渲染时直接会把浏览器卡死\n * 而直接开启socket接口推送显然是太过浪费资源了,所以目前采用Java最原始的手段\n * response 推送 javascript代码 alert 提示报错信息\n *\n * @param request request\n * @param response response\n */\n @ApiOperation(value = \"导出Excel\", notes = \"导出Excel\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_export\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_export\')\")\n #end \n @OperateLogger(description = \"#(data.codeTitleBrief) Excel 导出\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.SELECT, db = true)\n @Override\n public void exportExcel(HttpServletRequest request, HttpServletResponse response) {\n // 当前方法\n Method method = ReflectUtil.getMethodByName(this.getClass(), \"exportExcel\");\n QueryBuilder<#(data.model.tableHumpName)> queryBuilder = new WebQueryBuilder<>(IService.getEntityClass(), request.getParameterMap());\n super.excelExport(#(data.model.tableHumpName)RestApi.SUB_TITLE, queryBuilder.build(), response, method);\n }\n\n /**\n * #(data.codeTitleBrief) Excel 导入\n * 注:这里 RequiresPermissions 引入的是 Shiro原生鉴权注解\n * @param request 文件流 request\n * @return ResultVo\n */\n @ApiOperation(value = \"导入Excel\", notes = \"导入Excel\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_import\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_import\')\")\n #end \n @OperateLogger(description = \"#(data.codeTitleBrief) Excel 导入\",\n module = ModuleEnum.MODULE_COMMON, operationType = OperationTypeEnum.INSERT, db = true)\n @Override\n public ResultWrapper importExcel(MultipartHttpServletRequest request) {\n return super.importExcel(request);\n }\n\n /**\n * #(data.codeTitleBrief) Excel 下载导入模版\n * 注:这里 RequiresPermissionsCus 引入的是 自定义鉴权注解\n * @param response response\n */\n @ApiOperation(value = \"导出Excel模版\", notes = \"导出Excel模版\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_import\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_import\')\")\n #end \n @Override\n public void importTemplate(HttpServletResponse response) {\n // 当前方法\n Method method = ReflectUtil.getMethodByName(this.getClass(), \"importTemplate\");\n super.importTemplate(#(data.model.tableHumpName)RestApi.SUB_TITLE, response, method);\n }\n\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722538033154, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/service/impl', '${model.tableHumpName}ServiceImpl.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.impl;\n#else\npackage #(data.packageName+\".\"+data.moduleName).service.impl;\n#end\n\n\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\nimport org.springframework.transaction.annotation.Transactional;\nimport org.opsli.core.base.service.impl.CrudServiceImpl;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.I#(data.model.tableHumpName)Service;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).mapper.#(data.model.tableHumpName)Mapper;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName).service.I#(data.model.tableHumpName)Service;\nimport #(data.packageName+\".\"+data.moduleName).mapper.#(data.model.tableHumpName)Mapper;\n#end\n\n\n/**\n * #(data.codeTitle) Service Impl\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Service\npublic class #(data.model.tableHumpName)ServiceImpl extends CrudServiceImpl<#(data.model.tableHumpName)Mapper, #(data.model.tableHumpName), #(data.model.tableHumpName)Model>\n implements I#(data.model.tableHumpName)Service {\n\n @Autowired(required = false)\n private #(data.model.tableHumpName)Mapper mapper;\n\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722609336322, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/service', 'I${model.tableHumpName}Service.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service;\n#else\npackage #(data.packageName+\".\"+data.moduleName).service;\n#end\n\nimport org.opsli.core.base.service.interfaces.CrudServiceInterface;\n\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\n#end\n\n/**\n * #(data.codeTitle) Service\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\npublic interface I#(data.model.tableHumpName)Service extends CrudServiceInterface<#(data.model.tableHumpName), #(data.model.tableHumpName)Model> {\n\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722693222401, 1398253704724828162, '1', 'src/api/${moduleName}/${subModuleName}', '${model.tableHumpName}ManagementApi.js', 'import request from \"@/utils/request\";\nimport { downloadFileByData } from \"@/utils/download\";\n\nexport function getList(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/findPage\",\n #else\n url: \"/api/v1/#(data.moduleName)/findPage\",\n #end\n method: \"get\",\n params: data,\n });\n}\n\nexport function doInsert(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/insert\",\n #else\n url: \"/api/v1/#(data.moduleName)/insert\",\n #end\n method: \"post\",\n data,\n });\n}\n\nexport function doUpdate(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/update\",\n #else\n url: \"/api/v1/#(data.moduleName)/update\",\n #end\n method: \"post\",\n data,\n });\n}\n\nexport function doDelete(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/del\",\n #else\n url: \"/api/v1/#(data.moduleName)/del\",\n #end\n method: \"post\",\n params: data,\n });\n}\n\nexport function doDeleteAll(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/delAll\",\n #else\n url: \"/api/v1/#(data.moduleName)/delAll\",\n #end\n method: \"post\",\n params: data,\n });\n}\n\n/**\n * 导出Excel 目前只支持一层参数传递\n * @param data\n * @returns file\n */\nexport function doExportExcel(data) {\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let requestURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/exportExcel\";\n #else\n let requestURL = \"/api/v1/#(data.moduleName)/exportExcel\";\n #end\n // 下载文件\n downloadFileByData(requestURL, data);\n}\n\n/**\n * 下载模版\n * @returns file\n */\nexport function doDownloadTemplate() {\n let data = {};\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let requestURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/importExcel/template\";\n #else\n let requestURL = \"/api/v1/#(data.moduleName)/importExcel/template\";\n #end\n // 下载文件\n downloadFileByData(requestURL, data);\n}\n\n/**\n * 导入Excel\n * @returns file\n */\nexport function doImportExcel(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/importExcel\",\n #else\n url: \"/api/v1/#(data.moduleName)/importExcel\",\n #end\n method: \"post\",\n // 最长超时时间 3 分钟\n timeout: 180000,\n headers: {\n \"Content-Type\": \"multipart/form-data\"\n },\n data,\n });\n}', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722772914178, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}/components', '${model.tableHumpName}ManagementEdit.vue', '\n\n\n', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722856800258, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}/components', '${model.tableHumpName}ManagementImport.vue', '\n\n\n', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); -INSERT INTO `gen_template_detail` VALUES (1552159722944880641, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}', 'index.vue', '\n\n\n', '0', 0, 1, '2022-07-27 13:11:30', 1, '2022-07-27 13:11:30'); +INSERT INTO `gen_template_detail` VALUES (1555949317360721921, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/entity', '${model.tableHumpName}Entity.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity;\n#else\npackage #(data.packageName+\".\"+data.moduleName).entity;\n#end\n\n#for(pkg : data.model.entityPkgList)\nimport #(pkg);\n#end\nimport com.baomidou.mybatisplus.annotation.FieldStrategy;\nimport com.baomidou.mybatisplus.annotation.TableField;\nimport com.baomidou.mybatisplus.annotation.TableLogic;\nimport lombok.Data;\nimport lombok.EqualsAndHashCode;\nimport org.opsli.core.base.entity.BaseEntity;\n\n/**\n * #(data.codeTitle) Entity\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Data\n@EqualsAndHashCode(callSuper = false)\npublic class #(data.model.tableHumpName) extends BaseEntity {\n\n\n #for(column : data.model.columnList)\n ### 不等于 删除字段 和 不等于 租户字段放入上边\n #if(column.fieldHumpName != \"deleted\" && column.fieldHumpName != \"tenantId\")\n /** #(column.fieldComments) */\n #if(!column.izNotNull)\n @TableField(updateStrategy = FieldStrategy.IGNORED)\n #end\n private #(column.javaType) #(column.fieldHumpName);\n\n #end\n #end\n\n // ========================================\n\n ### 专门处理 删除字段 和 租户字段\n #for(column : data.model.columnList)\n #if(column.fieldHumpName == \"deleted\")\n /** 逻辑删除字段 */\n @TableLogic\n private Integer deleted;\n #else if(column.fieldHumpName == \"tenantId\")\n /** 多租户字段 */\n private String tenantId;\n #end\n\n #end\n\n}', '1', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317415247873, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/mapper', '${model.tableHumpName}Mapper.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).mapper;\n#else\npackage #(data.packageName+\".\"+data.moduleName).mapper;\n#end\n\nimport com.baomidou.mybatisplus.core.mapper.BaseMapper;\nimport org.apache.ibatis.annotations.Mapper;\nimport org.apache.ibatis.annotations.Param;\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\n#end\n\n/**\n * #(data.codeTitle) Mapper\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Mapper\npublic interface #(data.model.tableHumpName)Mapper extends BaseMapper<#(data.model.tableHumpName)> {\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317452996610, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/mapper/xml', '${model.tableHumpName}Mapper.xml', '\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\n\n#else\n\n#end\n\n\n', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317494939650, 1398253704724828162, '0', 'org/opsli/api/wrapper/${moduleName}/${subModuleName}', '${model.tableHumpName}Model.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName);\n#else\npackage #(apiPath).wrapper.#(data.moduleName);\n#end\n\n#for(pkg : data.model.entityPkgList)\nimport #(pkg);\n#end\nimport com.alibaba.excel.annotation.ExcelProperty;\nimport io.swagger.annotations.ApiModelProperty;\nimport lombok.Data;\nimport lombok.EqualsAndHashCode;\nimport #(apiPath).base.warpper.ApiWrapper;\nimport org.opsli.common.annotation.validator.Validator;\nimport org.opsli.common.annotation.validator.ValidatorLenMax;\nimport org.opsli.common.annotation.validator.ValidatorLenMin;\nimport org.opsli.common.enums.ValidatorType;\nimport org.opsli.plugins.excel.annotation.ExcelInfo;\nimport com.fasterxml.jackson.annotation.JsonFormat;\nimport org.springframework.format.annotation.DateTimeFormat;\n\n/**\n* #(data.codeTitle) Model\n*\n* @author #(data.authorName)\n* @date #(currTime)\n*/\n@Data\n@EqualsAndHashCode(callSuper = false)\npublic class #(data.model.tableHumpName)Model extends ApiWrapper {\n\n #for(column : data.model.columnList)\n ### 不等于 删除字段 和 不等于 租户字段放入上边\n #if(column.fieldHumpName != \"deleted\" && column.fieldHumpName != \"tenantId\")\n /** #(column.fieldComments) */\n @ApiModelProperty(value = \"#(column.fieldComments)\")\n @ExcelProperty(value = \"#(column.fieldComments)\", order = #(column.sort))\n #if(column.dictTypeCode != null && column.dictTypeCode != \"\")\n @ExcelInfo( dictType = \"#(column.dictTypeCode)\" )\n #else\n @ExcelInfo\n #end\n #if(column.validateTypeAndCommaList != null && column.validateTypeAndCommaList.size() > 0)\n @Validator({\n #for(typeAndComma : column.validateTypeAndCommaList)\n ValidatorType.#(typeAndComma)\n #end\n })\n #end\n #if(column.fieldLength != null && column.fieldLength > 0)\n #if(column.fieldPrecision != null && column.fieldPrecision > 0)\n @ValidatorLenMax(#(column.fieldLength+column.fieldPrecision))\n #else\n @ValidatorLenMax(#(column.fieldLength))\n #end\n #end\n ### 日期处理\n #if(column.javaType == \"Date\")\n #if(column.showType == \"4\")\n @JsonFormat(timezone = \"GMT+8\", pattern = \"yyyy-MM-dd\")\n @DateTimeFormat(pattern = \"yyyy-MM-dd\")\n #else\n @JsonFormat(timezone = \"GMT+8\", pattern = \"yyyy-MM-dd HH:mm:ss\")\n @DateTimeFormat(pattern = \"yyyy-MM-dd HH:mm:ss\")\n #end\n #end\n private #(column.javaType) #(column.fieldHumpName);\n\n #end\n #end\n\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317528494081, 1398253704724828162, '0', 'org/opsli/api/web/${moduleName}/${subModuleName}', '${model.tableHumpName}RestApi.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(apiPath).web.#(data.moduleName+\".\"+data.subModuleName);\n#else\npackage #(apiPath).web.#(data.moduleName);\n#end\n\nimport org.opsli.api.base.result.ResultWrapper;\nimport org.springframework.web.bind.annotation.*;\nimport org.springframework.web.multipart.MultipartHttpServletRequest;\nimport javax.servlet.http.HttpServletRequest;\nimport javax.servlet.http.HttpServletResponse;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\n#else\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\n#end\n\n\n/**\n * #(data.codeTitle) Api\n *\n * 对外 API 直接 暴露 @GetMapping 或者 @PostMapping\n * 对内也推荐 单机版 不需要设置 Mapping 但是调用方法得从Controller写起\n *\n * 这样写法虽然比较绕,但是当单体项目想要改造微服务架构时 时非常容易的\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\npublic interface #(data.model.tableHumpName)RestApi {\n\n /** 标题 */\n String TITLE = \"#(data.codeTitle)\";\n /** 子标题 */\n String SUB_TITLE = \"#(data.codeTitleBrief)\";\n\n /**\n * #(data.codeTitle) 查一条\n * @param model 模型\n * @return ResultWrapper\n */\n @GetMapping(\"/get\")\n ResultWrapper<#(data.model.tableHumpName)Model> get(#(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 查询分页\n * @param pageNo 当前页\n * @param pageSize 每页条数\n * @param request request\n * @return ResultWrapper\n */\n @GetMapping(\"/findPage\")\n ResultWrapper findPage(\n @RequestParam(name = \"pageNo\", defaultValue = \"1\") Integer pageNo,\n @RequestParam(name = \"pageSize\", defaultValue = \"10\") Integer pageSize,\n HttpServletRequest request\n );\n\n /**\n * #(data.codeTitle) 新增\n * @param model 模型\n * @return ResultWrapper\n */\n @PostMapping(\"/insert\")\n ResultWrapper insert(@RequestBody #(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 修改\n * @param model 模型\n * @return ResultWrapper\n */\n @PostMapping(\"/update\")\n ResultWrapper update(@RequestBody #(data.model.tableHumpName)Model model);\n\n /**\n * #(data.codeTitle) 删除\n * @param id ID\n * @return ResultWrapper\n */\n @PostMapping(\"/del\")\n ResultWrapper del(String id);\n\n /**\n * #(data.codeTitle) 批量删除\n * @param ids ID 数组\n * @return ResultWrapper\n */\n @PostMapping(\"/delAll\")\n ResultWrapper delAll(String ids);\n\n /**\n * #(data.codeTitle) Excel 导出认证\n *\n * @param type 类型\n * @param request request\n */\n @GetMapping(\"/excel/auth/{type}\")\n ResultWrapper exportExcelAuth(\n @PathVariable(\"type\") String type,\n HttpServletRequest request);\n\n /**\n * #(data.codeTitle) Excel 导出\n *\n * @param certificate 凭证\n * @param response response\n */\n @GetMapping(\"/excel/export/{certificate}\")\n void exportExcel(\n @PathVariable(\"certificate\") String certificate,\n HttpServletResponse response);\n\n /**\n * #(data.codeTitle) Excel 导入\n * @param request 文件流 request\n * @return ResultWrapper\n */\n @PostMapping(\"/importExcel\")\n ResultWrapper importExcel(MultipartHttpServletRequest request);\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317570437121, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/web', '${model.tableHumpName}RestController.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).web;\n#else\npackage #(data.packageName+\".\"+data.moduleName).web;\n#end\n\nimport java.util.Optional;\nimport cn.hutool.core.convert.Convert;\nimport io.swagger.annotations.Api;\nimport io.swagger.annotations.ApiOperation;\nimport lombok.extern.slf4j.Slf4j;\nimport #(apiPath).base.result.ResultWrapper;\nimport org.opsli.common.annotation.ApiRestController;\nimport org.opsli.core.base.controller.BaseRestController;\nimport org.opsli.core.persistence.Page;\nimport org.opsli.core.persistence.querybuilder.QueryBuilder;\nimport org.opsli.core.persistence.querybuilder.WebQueryBuilder;\nimport org.springframework.web.multipart.MultipartHttpServletRequest;\nimport javax.servlet.http.HttpServletRequest;\nimport javax.servlet.http.HttpServletResponse;\nimport org.springframework.security.access.prepost.PreAuthorize;\nimport org.opsli.core.log.enums.*;\nimport org.opsli.core.log.annotation.OperateLogger;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.I#(data.model.tableHumpName)Service;\nimport #(apiPath).web.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)RestApi;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName).service.I#(data.model.tableHumpName)Service;\nimport #(apiPath).web.#(data.moduleName).#(data.model.tableHumpName)RestApi;\n#end\n\n/**\n * #(data.codeTitle) Controller\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Api(tags = #(data.model.tableHumpName)RestApi.TITLE)\n@Slf4j\n#if(data.subModuleName != null && data.subModuleName != \"\")\n@ApiRestController(\"/{ver}/#(data.moduleName)/#(data.subModuleName)\")\n#else\n@ApiRestController(\"/{ver}/#(data.moduleName)\")\n#end\npublic class #(data.model.tableHumpName)RestController extends BaseRestController<#(data.model.tableHumpName), #(data.model.tableHumpName)Model, I#(data.model.tableHumpName)Service>\n implements #(data.model.tableHumpName)RestApi {\n\n\n /**\n * #(data.codeTitleBrief) 查一条\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"获得单条#(data.codeTitleBrief)\", notes = \"获得单条#(data.codeTitleBrief) - ID\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_select\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_select\')\")\n #end\n @Override\n public ResultWrapper<#(data.model.tableHumpName)Model> get(#(data.model.tableHumpName)Model model) {\n // 如果系统内部调用 则直接查数据库\n if(model != null && model.getIzApi() != null && model.getIzApi()){\n model = IService.get(model);\n }\n return ResultWrapper.getSuccessResultWrapper(model);\n }\n\n /**\n * #(data.codeTitleBrief) 查询分页\n * @param pageNo 当前页\n * @param pageSize 每页条数\n * @param request request\n * @return ResultWrapper\n */\n @ApiOperation(value = \"获得分页数据\", notes = \"获得分页数据 - 查询构造器\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_select\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_select\')\")\n #end\n @Override\n public ResultWrapper findPage(Integer pageNo, Integer pageSize, HttpServletRequest request) {\n\n QueryBuilder<#(data.model.tableHumpName)> queryBuilder = new WebQueryBuilder<>(IService.getEntityClass(), request.getParameterMap());\n Page<#(data.model.tableHumpName), #(data.model.tableHumpName)Model> page = new Page<>(pageNo, pageSize);\n page.setQueryWrapper(queryBuilder.build());\n page = IService.findPage(page);\n\n return ResultWrapper.getSuccessResultWrapper(page.getPageData());\n }\n\n /**\n * #(data.codeTitleBrief) 新增\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"新增#(data.codeTitleBrief)数据\", notes = \"新增#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_insert\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_insert\')\")\n #end\n @OperateLogger(description = \"新增#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.INSERT, db = true)\n @Override\n public ResultWrapper insert(#(data.model.tableHumpName)Model model) {\n // 调用新增方法\n IService.insert(model);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"新增#(data.codeTitleBrief)成功\");\n }\n\n /**\n * #(data.codeTitleBrief) 修改\n * @param model 模型\n * @return ResultWrapper\n */\n @ApiOperation(value = \"修改#(data.codeTitleBrief)数据\", notes = \"修改#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_update\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_update\')\")\n #end \n @OperateLogger(description = \"修改#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.UPDATE, db = true)\n @Override\n public ResultWrapper update(#(data.model.tableHumpName)Model model) {\n // 调用修改方法\n IService.update(model);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"修改#(data.codeTitleBrief)成功\");\n }\n\n\n /**\n * #(data.codeTitleBrief) 删除\n * @param id ID\n * @return ResultVo\n */\n @ApiOperation(value = \"删除#(data.codeTitleBrief)数据\", notes = \"删除#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_delete\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_delete\')\")\n #end \n @OperateLogger(description = \"删除#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.DELETE, db = true)\n @Override\n public ResultWrapper del(String id){\n IService.delete(id);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"删除#(data.codeTitleBrief)成功\");\n }\n\n /**\n * #(data.codeTitleBrief) 批量删除\n * @param ids ID 数组\n * @return ResultVo\n */\n @ApiOperation(value = \"批量删除#(data.codeTitleBrief)数据\", notes = \"批量删除#(data.codeTitleBrief)数据\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_delete\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_delete\')\")\n #end \n @OperateLogger(description = \"批量删除#(data.codeTitleBrief)数据\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.DELETE, db = true)\n @Override\n public ResultWrapper delAll(String ids){\n String[] idArray = Convert.toStrArray(ids);\n IService.deleteAll(idArray);\n return ResultWrapper.getSuccessResultWrapperByMsg(\"批量删除#(data.codeTitleBrief)成功\");\n }\n\n /**\n * #(data.codeTitleBrief) Excel 导出认证\n *\n * @param type 类型\n * @param request request\n */\n @ApiOperation(value = \"Excel 导出认证\", notes = \"Excel 导出认证\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAnyAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_export\', \'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_import\')\")\n #else\n @PreAuthorize(\"hasAnyAuthority(\'#(data.moduleName.toLowerCase())_export\', \'#(data.moduleName.toLowerCase())_import\')\")\n #end\n @Override\n public ResultWrapper exportExcelAuth(String type, HttpServletRequest request) {\n Optional certificateOptional =\n super.excelExportAuth(type, #(data.model.tableHumpName)RestApi.SUB_TITLE, request);\n if(!certificateOptional.isPresent()){\n return ResultWrapper.getErrorResultWrapper();\n }\n return ResultWrapper.getSuccessResultWrapper(certificateOptional.get());\n }\n\n\n /**\n * #(data.codeTitleBrief) Excel 导出\n * @param response response\n */\n @ApiOperation(value = \"导出Excel\", notes = \"导出Excel\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_export\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_export\')\")\n #end\n @OperateLogger(description = \"#(data.codeTitleBrief) 导出Excel\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.SELECT, db = true)\n @Override\n public void exportExcel(String certificate, HttpServletResponse response) {\n // 导出Excel\n super.excelExport(certificate, response);\n }\n\n /**\n * #(data.codeTitleBrief) Excel 导入\n * 注:这里 RequiresPermissions 引入的是 Shiro原生鉴权注解\n * @param request 文件流 request\n * @return ResultVo\n */\n @ApiOperation(value = \"导入Excel\", notes = \"导入Excel\")\n #if(data.subModuleName != null && data.subModuleName != \"\")\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_#(data.subModuleName.toLowerCase())_import\')\")\n #else\n @PreAuthorize(\"hasAuthority(\'#(data.moduleName.toLowerCase())_import\')\")\n #end \n @OperateLogger(description = \"#(data.codeTitleBrief) Excel 导入\",\n module = ModuleEnum.MODULE_UNKNOWN, operationType = OperationTypeEnum.INSERT, db = true)\n @Override\n public ResultWrapper importExcel(MultipartHttpServletRequest request) {\n return super.importExcel(request);\n }\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317608185857, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/service/impl', '${model.tableHumpName}ServiceImpl.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.impl;\n#else\npackage #(data.packageName+\".\"+data.moduleName).service.impl;\n#end\n\n\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\nimport org.springframework.transaction.annotation.Transactional;\nimport org.opsli.core.base.service.impl.CrudServiceImpl;\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service.I#(data.model.tableHumpName)Service;\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).mapper.#(data.model.tableHumpName)Mapper;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\nimport #(data.packageName+\".\"+data.moduleName).service.I#(data.model.tableHumpName)Service;\nimport #(data.packageName+\".\"+data.moduleName).mapper.#(data.model.tableHumpName)Mapper;\n#end\n\n\n/**\n * #(data.codeTitle) Service Impl\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\n@Service\npublic class #(data.model.tableHumpName)ServiceImpl extends CrudServiceImpl<#(data.model.tableHumpName)Mapper, #(data.model.tableHumpName), #(data.model.tableHumpName)Model>\n implements I#(data.model.tableHumpName)Service {\n\n @Autowired(required = false)\n private #(data.model.tableHumpName)Mapper mapper;\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317641740289, 1398253704724828162, '0', '${packageName}/${moduleName}/${subModuleName}/service', 'I${model.tableHumpName}Service.java', '#if(data.subModuleName != null && data.subModuleName != \"\")\npackage #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).service;\n#else\npackage #(data.packageName+\".\"+data.moduleName).service;\n#end\n\nimport org.opsli.core.base.service.interfaces.CrudServiceInterface;\n\n\n#if(data.subModuleName != null && data.subModuleName != \"\")\nimport #(data.packageName+\".\"+data.moduleName+\".\"+data.subModuleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName+\".\"+data.subModuleName).#(data.model.tableHumpName)Model;\n#else\nimport #(data.packageName+\".\"+data.moduleName).entity.#(data.model.tableHumpName);\nimport #(apiPath).wrapper.#(data.moduleName).#(data.model.tableHumpName)Model;\n#end\n\n/**\n * #(data.codeTitle) Service\n *\n * @author #(data.authorName)\n * @date #(currTime)\n */\npublic interface I#(data.model.tableHumpName)Service extends CrudServiceInterface<#(data.model.tableHumpName), #(data.model.tableHumpName)Model> {\n\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317671100418, 1398253704724828162, '1', 'src/api/${moduleName}/${subModuleName}', '${model.tableHumpName}ManagementApi.js', 'import request from \"@/utils/request\";\nimport { downloadFileByData } from \"@/utils/download\";\n\nexport function getList(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/findPage\",\n #else\n url: \"/api/v1/#(data.moduleName)/findPage\",\n #end\n method: \"get\",\n params: data,\n });\n}\n\nexport function doInsert(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/insert\",\n #else\n url: \"/api/v1/#(data.moduleName)/insert\",\n #end\n method: \"post\",\n data,\n });\n}\n\nexport function doUpdate(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/update\",\n #else\n url: \"/api/v1/#(data.moduleName)/update\",\n #end\n method: \"post\",\n data,\n });\n}\n\nexport function doDelete(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/del\",\n #else\n url: \"/api/v1/#(data.moduleName)/del\",\n #end\n method: \"post\",\n params: data,\n });\n}\n\nexport function doDeleteAll(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/delAll\",\n #else\n url: \"/api/v1/#(data.moduleName)/delAll\",\n #end\n method: \"post\",\n params: data,\n });\n}\n\n/**\n * 导出Excel 目前只支持一层参数传递\n * @param params 参数\n * @returns file\n */\n export async function doExportExcel(params) {\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let authURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/excel/auth/export\";\n #else\n let authURL = \"/api/v1/#(data.moduleName)/excel/auth/export\";\n #end\n\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let downloadURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/excel/export/\";\n #else\n let downloadURL = \"/api/v1/#(data.moduleName)/excel/export/\";\n #end\n\n\n // 认证\n const { data } = await request({\n url: authURL,\n method: \"get\",\n params: params,\n });\n \n if (data) {\n // 下载文件\n downloadFileByData(downloadURL + data, params);\n }\n }\n \n /**\n * 下载模版\n * @returns file\n */\n export async function doDownloadTemplate() {\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let authURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/excel/auth/import-template-export\";\n #else\n let authURL = \"/api/v1/#(data.moduleName)/excel/auth/import-template-export\";\n #end\n\n #if(data.subModuleName != null && data.subModuleName != \"\")\n let downloadURL = \"/api/v1/#(data.moduleName)/#(data.subModuleName)/excel/export/\";\n #else\n let downloadURL = \"/api/v1/#(data.moduleName)/excel/export/\";\n #end\n\n // 认证\n const { data } = await request({\n url: authURL,\n method: \"get\",\n });\n \n if (data) {\n // 下载文件\n downloadFileByData(downloadURL + data, {});\n }\n }\n\n\n/**\n * 导入Excel\n * @returns file\n */\nexport function doImportExcel(data) {\n return request({\n #if(data.subModuleName != null && data.subModuleName != \"\")\n url: \"/api/v1/#(data.moduleName)/#(data.subModuleName)/importExcel\",\n #else\n url: \"/api/v1/#(data.moduleName)/importExcel\",\n #end\n method: \"post\",\n // 最长超时时间 3 分钟\n timeout: 180000,\n headers: {\n \"Content-Type\": \"multipart/form-data\"\n },\n data,\n });\n}', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317700460545, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}/components', '${model.tableHumpName}ManagementEdit.vue', '\n\n\n', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317734014977, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}/components', '${model.tableHumpName}ManagementImport.vue', '\n\n\n', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); +INSERT INTO `gen_template_detail` VALUES (1555949317771763714, 1398253704724828162, '1', 'src/views/modules/${moduleName}/${subModuleName}', 'index.vue', '\n\n\n', '0', 0, 1, '2022-08-07 00:10:00', 1, '2022-08-07 00:10:00'); COMMIT; -- ---------------------------- @@ -3750,6 +3748,7 @@ INSERT INTO `sys_dict_detail` VALUES (1551898616208941057, '1551896925380038657' INSERT INTO `sys_dict_detail` VALUES (1551898680184659970, '1551896925380038657', 'log_model_type', '测试模块', '100', '0', 11, NULL, '0', 5, 1, '2022-07-26 19:54:13', 1, '2022-07-27 10:21:33', '2022-07-27 10:21:32'); INSERT INTO `sys_dict_detail` VALUES (1551898752452517889, '1551896925380038657', 'log_model_type', '测试用户模块', '101', '0', 12, NULL, '0', 5, 1, '2022-07-26 19:54:30', 1, '2022-07-27 10:21:33', '2022-07-27 10:21:33'); INSERT INTO `sys_dict_detail` VALUES (1551898808907849730, '1551896925380038657', 'log_model_type', '测试汽车模块', '102', '0', 13, NULL, '0', 5, 1, '2022-07-26 19:54:44', 1, '2022-07-27 10:21:33', '2022-07-27 10:21:33'); +INSERT INTO `sys_dict_detail` VALUES (1555949790771814402, '1551896925380038657', 'log_model_type', '未知I请配置模块', '-1', '0', 500, NULL, '0', 1, 1, '2022-08-07 00:11:53', 1, '2022-08-07 00:12:14', '2022-08-07 00:12:13'); COMMIT; -- ---------------------------- @@ -3915,12 +3914,12 @@ INSERT INTO `sys_menu` VALUES (1315201734892670977, 1315201380721446914, '0,1460 INSERT INTO `sys_menu` VALUES (1315201809668722690, 1315201380721446914, '0,1460639200696160257,1315201380721446914,1315201809668722690', '增加', 'system_tenant_insert', NULL, '0', '2', NULL, NULL, NULL, 2, '0', '0', '0', 0, 1, '2020-10-11 16:05:21', 1, '2020-10-11 16:05:21', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1315201864219840513, 1315201380721446914, '0,1460639200696160257,1315201380721446914,1315201864219840513', '修改', 'system_tenant_update', NULL, '0', '2', NULL, NULL, NULL, 3, '0', '0', '0', 0, 1, '2020-10-11 16:05:34', 1, '2020-10-11 16:05:34', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1315201925477650433, 1315201380721446914, '0,1460639200696160257,1315201380721446914,1315201925477650433', '删除', 'system_tenant_delete', NULL, '0', '2', NULL, NULL, NULL, 4, '0', '0', '0', 1, 1, '2020-10-11 16:05:49', 1, '2020-10-11 16:12:27', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1327085543511293954, 0, '0,1327085543511293954', '测试模块', NULL, 'box', '0', '1', '/gentest', 'Layout', NULL, 4, '0', '0', '0', 78, 1, '2020-11-13 11:07:04', 1, '2022-04-29 16:36:49', '2022-04-29 16:36:49'); -INSERT INTO `sys_menu` VALUES (1327085856930660353, 1327085543511293954, '0,1327085543511293954,1327085856930660353', '业务测试', NULL, '', '0', '1', 'test', 'views/modules/test/index', '', 1, '0', '0', '0', 12, 1, '2020-11-13 11:08:19', 1, '2022-04-29 16:36:49', '2022-04-29 17:28:43'); -INSERT INTO `sys_menu` VALUES (1327086205548625921, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086205548625921', '查看', 'gentest_test_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 8, 1, '2020-11-13 11:09:42', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1327086298750255105, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086298750255105', '增加', 'gentest_test_insert', '', '0', '2', NULL, NULL, NULL, 2, '0', '0', '0', 8, 1, '2020-11-13 11:10:04', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1327086378794352642, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086378794352642', '修改', 'gentest_test_update', '', '0', '2', NULL, NULL, NULL, 3, '0', '0', '0', 6, 1, '2020-11-13 11:10:23', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1327086433609711617, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086433609711617', '删除', 'gentest_test_delete', '', '0', '2', NULL, NULL, NULL, 4, '0', '0', '0', 7, 1, '2020-11-13 11:10:37', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); +INSERT INTO `sys_menu` VALUES (1327085543511293954, 0, '0,1327085543511293954', '测试模块', NULL, 'box', '0,1', '1', '/gentest', 'Layout', NULL, 4, '0', '0', '0', 79, 1, '2020-11-13 11:07:04', 1, '2022-08-07 00:18:15', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1327085856930660353, 1327085543511293954, '0,1327085543511293954,1327085856930660353', '业务测试', NULL, '', '0,1', '1', 'test', 'views/modules/test/index', '', 1, '0', '0', '0', 12, 1, '2020-11-13 11:08:19', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1327086205548625921, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086205548625921', '查看', 'gentest_test_select', '', '0,1', '2', NULL, NULL, NULL, 1, '0', '0', '0', 8, 1, '2020-11-13 11:09:42', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1327086298750255105, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086298750255105', '增加', 'gentest_test_insert', '', '0,1', '2', NULL, NULL, NULL, 2, '0', '0', '0', 8, 1, '2020-11-13 11:10:04', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1327086378794352642, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086378794352642', '修改', 'gentest_test_update', '', '0,1', '2', NULL, NULL, NULL, 3, '0', '0', '0', 6, 1, '2020-11-13 11:10:23', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1327086433609711617, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1327086433609711617', '删除', 'gentest_test_delete', '', '0,1', '2', NULL, NULL, NULL, 4, '0', '0', '0', 7, 1, '2020-11-13 11:10:37', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); INSERT INTO `sys_menu` VALUES (1327893773049262082, 1397807288445526017, '0,1314068325453574145,1397807288445526017,1327893773049262082', '代码生成器', NULL, '', '0', '1', 'creater', 'views/modules/generator/table/index', NULL, 1, '0', '0', '0', 3, 1, '2020-11-15 16:38:41', 1, '2021-05-27 14:50:14', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1327894701135491073, 1327893773049262082, '0,1314068325453574145,1397807288445526017,1327893773049262082,1327894701135491073', '查看', 'dev_generator_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 2, 1, '2020-11-15 16:42:22', 1, '2020-11-15 16:43:08', '2022-04-29 17:30:23'); INSERT INTO `sys_menu` VALUES (1327894767283859457, 1327893773049262082, '0,1314068325453574145,1397807288445526017,1327893773049262082,1327894767283859457', '新增', 'dev_generator_insert', '', '0', '2', NULL, NULL, NULL, 2, '0', '0', '0', 0, 1, '2020-11-15 16:42:38', 1, '2020-11-15 16:42:38', '2022-04-29 17:30:23'); @@ -3929,11 +3928,11 @@ INSERT INTO `sys_menu` VALUES (1327894965179510785, 1327893773049262082, '0,1314 INSERT INTO `sys_menu` VALUES (1327895061598171137, 1327893773049262082, '0,1314068325453574145,1397807288445526017,1327893773049262082,1327895061598171137', '生成', 'dev_generator_create', '', '0', '2', NULL, NULL, NULL, 7, '0', '0', '0', 1, 1, '2020-11-15 16:43:48', 1, '2021-05-04 20:19:47', '2022-04-29 17:30:23'); INSERT INTO `sys_menu` VALUES (1327903778221699074, 1327893773049262082, '0,1314068325453574145,1397807288445526017,1327893773049262082,1327903778221699074', '同步', 'dev_generator_sync', '', '0', '2', NULL, NULL, NULL, 5, '0', '0', '0', 2, 1, '2020-11-15 17:18:27', 1, '2021-05-04 20:19:32', '2022-04-29 17:30:23'); INSERT INTO `sys_menu` VALUES (1329374800267452417, 1327893773049262082, '0,1314068325453574145,1397807288445526017,1327893773049262082,1329374800267452417', '导入数据表', 'dev_generator_import', '', '0', '2', NULL, NULL, NULL, 6, '0', '0', '0', 2, 1313694379541635074, '2020-11-19 18:43:46', 1, '2021-05-04 20:19:40', '2022-04-29 17:30:23'); -INSERT INTO `sys_menu` VALUES (1330365141900591105, 1327085543511293954, '0,1327085543511293954,1330365141900591105', '某系统用户', NULL, '', '0', '1', 'user', 'views/modules/gentest/user/index', NULL, 2, '0', '0', '0', 9, 1313694379541635074, '2020-11-22 12:19:01', 1, '2022-04-29 16:36:49', '2022-04-29 17:28:43'); -INSERT INTO `sys_menu` VALUES (1330365525440331778, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365525440331778', '查看', 'gentest_user_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 6, 1313694379541635074, '2020-11-22 12:20:33', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1330365570587820033, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365570587820033', '新增', 'gentest_user_insert', '', '0', '2', NULL, NULL, NULL, 2, '0', '0', '0', 7, 1313694379541635074, '2020-11-22 12:20:44', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1330365615181660162, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365615181660162', '修改', 'gentest_user_update', '', '0', '2', NULL, NULL, NULL, 3, '0', '0', '0', 7, 1313694379541635074, '2020-11-22 12:20:54', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1330365717015166977, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365717015166977', '删除', 'gentest_user_delete', '', '0', '2', NULL, NULL, NULL, 4, '0', '0', '0', 6, 1313694379541635074, '2020-11-22 12:21:19', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); +INSERT INTO `sys_menu` VALUES (1330365141900591105, 1327085543511293954, '0,1327085543511293954,1330365141900591105', '某系统用户', NULL, '', '0,1', '1', 'user', 'views/modules/gentest/user/index', NULL, 2, '0', '0', '0', 9, 1313694379541635074, '2020-11-22 12:19:01', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1330365525440331778, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365525440331778', '查看', 'gentest_user_select', '', '0,1', '2', NULL, NULL, NULL, 1, '0', '0', '0', 6, 1313694379541635074, '2020-11-22 12:20:33', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1330365570587820033, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365570587820033', '新增', 'gentest_user_insert', '', '0,1', '2', NULL, NULL, NULL, 2, '0', '0', '0', 7, 1313694379541635074, '2020-11-22 12:20:44', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1330365615181660162, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365615181660162', '修改', 'gentest_user_update', '', '0,1', '2', NULL, NULL, NULL, 3, '0', '0', '0', 7, 1313694379541635074, '2020-11-22 12:20:54', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1330365717015166977, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1330365717015166977', '删除', 'gentest_user_delete', '', '0,1', '2', NULL, NULL, NULL, 4, '0', '0', '0', 6, 1313694379541635074, '2020-11-22 12:21:19', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); INSERT INTO `sys_menu` VALUES (1332662450423635969, 1460639200696160257, '0,1460639200696160257,1332662450423635969', '组织管理', NULL, '', '0,1', '1', 'org', 'views/modules/system/orgManagement/index', NULL, 4, '0', '0', '0', 4, 1, '2020-11-28 20:27:43', 1, '2021-11-17 00:02:31', '2022-04-29 17:28:43'); INSERT INTO `sys_menu` VALUES (1332662689314414594, 1332662450423635969, '0,1460639200696160257,1332662450423635969,1332662689314414594', '查看', 'system_org_select', '', '0,1', '2', NULL, NULL, NULL, 1, '0', '0', '0', 0, 1, '2020-11-28 20:28:39', 1, '2020-11-28 20:28:39', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1332662758860169217, 1332662450423635969, '0,1460639200696160257,1332662450423635969,1332662758860169217', '增加', 'system_org_insert', '', '0,1', '2', NULL, NULL, NULL, 2, '0', '0', '0', 0, 1, '2020-11-28 20:28:56', 1, '2020-11-28 20:28:56', '2022-04-29 17:29:44'); @@ -3944,17 +3943,17 @@ INSERT INTO `sys_menu` VALUES (1335439904372457474, 1335439751687208961, '0,1,13 INSERT INTO `sys_menu` VALUES (1335440004809261058, 1335439751687208961, '0,1,1335439751687208961,1335440004809261058', '查看', 'system_area_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 0, 1313694379541635074, '2020-12-06 12:24:43', 1313694379541635074, '2020-12-06 12:24:43', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1335440081128816642, 1335439751687208961, '0,1,1335439751687208961,1335440081128816642', '修改', 'system_area_update', '', '0', '2', NULL, NULL, NULL, 3, '0', '0', '0', 1, 1313694379541635074, '2020-12-06 12:25:01', 1313694379541635074, '2020-12-06 12:25:07', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1335440153140822017, 1335439751687208961, '0,1,1335439751687208961,1335440153140822017', '删除', 'system_area_delete', '', '0', '2', NULL, NULL, NULL, 4, '0', '0', '0', 0, 1313694379541635074, '2020-12-06 12:25:18', 1313694379541635074, '2020-12-06 12:25:18', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1337719928086458369, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1337719928086458369', '导出', 'gentest_user_export', '', '0', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-12 19:24:19', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1337720128930705409, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1337720128930705409', '导入', 'gentest_user_import', '', '0', '2', NULL, NULL, NULL, 6, '0', '0', '0', 6, 1313694379541635074, '2020-12-12 19:25:07', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1337796232345407489, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1337796232345407489', '导出', 'gentest_test_export', '', '0', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-13 00:27:31', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1337796311940714498, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1337796311940714498', '导入', 'gentest_test_import', '', '0', '2', NULL, NULL, NULL, 6, '0', '0', '0', 6, 1313694379541635074, '2020-12-13 00:27:50', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340626549594677250, 1327085543511293954, '0,1327085543511293954,1340626549594677250', '汽车信息', NULL, '', '0', '1', 'carinfo', 'views/modules/gentest/carinfo/index', NULL, 3, '0', '0', '0', 9, 1313694379541635074, '2020-12-20 19:54:12', 1, '2022-04-29 16:36:49', '2022-04-29 17:28:43'); -INSERT INTO `sys_menu` VALUES (1340626612895113217, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626612895113217', '查看', 'gentest_carinfo_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:54:27', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340626666078887937, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626666078887937', '新增', 'gentest_carinfo_insert', '', '0', '2', NULL, NULL, NULL, 2, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:54:39', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340626895356321793, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626895356321793', '修改', 'gentest_carinfo_update', '', '0', '2', NULL, NULL, NULL, 3, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:34', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340626939119689729, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626939119689729', '删除', 'gentest_carinfo_delete', '', '0', '2', NULL, NULL, NULL, 4, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:45', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340626988251766786, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626988251766786', '导入', 'gentest_carinfo_import', '', '0', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:56', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); -INSERT INTO `sys_menu` VALUES (1340627032942075906, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340627032942075906', '导出', 'gentest_carinfo_export', '', '0', '2', NULL, NULL, NULL, 6, '0', '0', '0', 7, 1313694379541635074, '2020-12-20 19:56:07', 1, '2022-04-29 16:36:49', '2022-04-29 17:29:44'); +INSERT INTO `sys_menu` VALUES (1337719928086458369, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1337719928086458369', '导出', 'gentest_user_export', '', '0,1', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-12 19:24:19', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1337720128930705409, 1330365141900591105, '0,1327085543511293954,1330365141900591105,1337720128930705409', '导入', 'gentest_user_import', '', '0,1', '2', NULL, NULL, NULL, 6, '0', '0', '0', 6, 1313694379541635074, '2020-12-12 19:25:07', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1337796232345407489, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1337796232345407489', '导出', 'gentest_test_export', '', '0,1', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-13 00:27:31', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1337796311940714498, 1327085856930660353, '0,1327085543511293954,1327085856930660353,1337796311940714498', '导入', 'gentest_test_import', '', '0,1', '2', NULL, NULL, NULL, 6, '0', '0', '0', 6, 1313694379541635074, '2020-12-13 00:27:50', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626549594677250, 1327085543511293954, '0,1327085543511293954,1340626549594677250', '汽车信息', NULL, '', '0,1', '1', 'carinfo', 'views/modules/gentest/carinfo/index', NULL, 3, '0', '0', '0', 9, 1313694379541635074, '2020-12-20 19:54:12', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626612895113217, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626612895113217', '查看', 'gentest_carinfo_select', '', '0,1', '2', NULL, NULL, NULL, 1, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:54:27', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626666078887937, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626666078887937', '新增', 'gentest_carinfo_insert', '', '0,1', '2', NULL, NULL, NULL, 2, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:54:39', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626895356321793, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626895356321793', '修改', 'gentest_carinfo_update', '', '0,1', '2', NULL, NULL, NULL, 3, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:34', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626939119689729, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626939119689729', '删除', 'gentest_carinfo_delete', '', '0,1', '2', NULL, NULL, NULL, 4, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:45', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340626988251766786, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340626988251766786', '导入', 'gentest_carinfo_import', '', '0,1', '2', NULL, NULL, NULL, 5, '0', '0', '0', 6, 1313694379541635074, '2020-12-20 19:55:56', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); +INSERT INTO `sys_menu` VALUES (1340627032942075906, 1340626549594677250, '0,1327085543511293954,1340626549594677250,1340627032942075906', '导出', 'gentest_carinfo_export', '', '0,1', '2', NULL, NULL, NULL, 6, '0', '0', '0', 7, 1313694379541635074, '2020-12-20 19:56:07', 1, '2022-04-29 16:36:49', '2022-08-07 00:18:15'); INSERT INTO `sys_menu` VALUES (1351012936860155906, 1314610817013919745, '0,1314610817013919745,1351012936860155906', '系统监控', NULL, '', '0', '1', 'sysmonitor', 'views/modules/system/monitorManagement/index', NULL, 1, '0', '0', '0', 1, 1313694379541635074, '2021-01-18 11:45:59', 1313694379541635074, '2021-01-18 11:47:15', '2022-04-29 17:28:43'); INSERT INTO `sys_menu` VALUES (1351013587816136705, 1351012936860155906, '0,1314610817013919745,1351012936860155906,1351013587816136705', '查看', 'devops_sysmonitor_select', '', '0', '2', NULL, NULL, NULL, 1, '0', '0', '0', 0, 1, '2021-01-18 11:48:35', 1, '2021-01-18 11:48:35', '2022-04-29 17:29:44'); INSERT INTO `sys_menu` VALUES (1360233188433977345, 1, '0,1,1360233188433977345', '系统设置', NULL, '', '0', '1', 'set', 'views/modules/system/setManagement/index', NULL, 99, '0', '0', '0', 4, 1313694379541635074, '2021-02-12 22:23:59', 1, '2021-04-29 13:01:24', '2022-04-29 17:28:43'); @@ -4002,7 +4001,8 @@ CREATE TABLE `sys_options` ( `option_code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数编号', `option_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '参数名称', `option_value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '参数值', - `iz_lock` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '是否内置 0否 1是', + `iz_lock` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '是否内置 0否 1是', + `iz_exclude` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '是否忽略', `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注', `version` int(11) NOT NULL DEFAULT '0' COMMENT '版本(乐观锁)', `create_by` bigint(19) NOT NULL COMMENT '创建用户', @@ -4018,30 +4018,29 @@ CREATE TABLE `sys_options` ( -- Records of sys_options -- ---------------------------- BEGIN; -INSERT INTO `sys_options` VALUES (1, 'crypto_asymmetric', '非对称加解密算法', 'RSA', '1', NULL, 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-04-04 11:19:26', '2021-04-29 11:11:40'); -INSERT INTO `sys_options` VALUES (2, 'crypto_asymmetric_public_key', '非对称加解密-公钥', 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCQS75ZTYUL6IJJBgylgFDtksWZx4OsVK5CBJGXi3n9LON1Jg7KsxkgindCD28gQRIEh6ZP1IuhlMs9N/QteRbM3b1oDKW7Cbr7lFk+EYUmpO5nwD1+IHowiNc0AK+XfICOVF5287wE4LFLqBDnWhV0WNQFjYYpAc7852ZfEwThSQIDAQAB', '1', NULL, 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-04-04 11:19:26', '2021-04-29 11:11:41'); -INSERT INTO `sys_options` VALUES (3, 'crypto_asymmetric_private_key', '非对称加解密-私钥', 'MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAJBLvllNhQvogkkGDKWAUO2SxZnHg6xUrkIEkZeLef0s43UmDsqzGSCKd0IPbyBBEgSHpk/Ui6GUyz039C15FszdvWgMpbsJuvuUWT4RhSak7mfAPX4gejCI1zQAr5d8gI5UXnbzvATgsUuoEOdaFXRY1AWNhikBzvznZl8TBOFJAgMBAAECgYAJvtCmFi7RK6ysIxhBj6JnmTN24ltJpuJ2zpL8Sc0J+B+LyIk6z9CROqjS5L+PM+kN0BEmCedwTBNTf1VV3BXzbPcX/prE004LXcbv5mjgaHf/PybzJQumYM5MuD9dJYBLc1PUNu2b9eGekEU+vzn0HCnmAkfwU7FCdU7Nh8/ZnQJBAMkY/nzYxue0rdfD4ZybM8chBksp9EA8mwmCW/PosJGJ6YVJ913PbfovYuSG4rwm0Ew6i/1zcXvAFjt5dW+L5EsCQQC3sMq5EF4Bfils0dTdn8Pwtv2t3H6wwaAc9QAExHYtZ5pipFH9NXiWn6KUJYq28mRxxKtfoara/8Ahb5yHY0w7AkEArGnmfyno123cgppqC7gxW3AgEj+FL7IGhs+igOumvxFMCsBQ+rhGpXMNSbuwF/r7KfAkaAgbaytUpGdNXXbGIwJAas7uoXsl3iJYvgCokJFkYmRUzzJlrCt6CTxgXWVK/g2+1FqNnfjofFSoORI3PTdmNkzQBRRA/4Q0WHzIfGS9nwJBAMLXrVKH6uhn67dwXKRCy2Xt54dLEtL43jL+xzWeHJibSkSyImLiAn1n2imSpB6ubJnBuvH19Y0nOXKBP0+VDGA=', '1', NULL, 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-04-04 11:19:26', '2021-04-29 11:11:41'); -INSERT INTO `sys_options` VALUES (4, 'def_pass', '系统默认密码', 'Aa123456.', '1', NULL, 2, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-10-15 16:24:06', '2021-10-15 16:22:23'); -INSERT INTO `sys_options` VALUES (5, 'def_role', '系统默认角色编号', '007', '1', NULL, 2, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-10-15 16:24:06', '2021-10-15 16:22:23'); -INSERT INTO `sys_options` VALUES (1387687830355902465, 'email_account', '邮箱账号', 'meet.edwin@foxmail.com', '1', NULL, 40, 1, '2021-04-29 16:38:55', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1387687830523674626, 'email_password', '邮箱密码', 'kwxibcxostgqbbgf', '1', NULL, 40, 1, '2021-04-29 16:38:55', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1387687830586589186, 'email_addresser', '发件人', 'OPSLI 快速开发平台', '1', NULL, 40, 1, '2021-04-29 16:38:55', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1387692123406348289, 'email_smtp', 'SMTP地址', 'smtp.qq.com', '1', NULL, 31, 1, '2021-04-29 16:55:59', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1387695264482865154, 'email_port', 'SMTP端口', '465', '1', NULL, 23, 1, '2021-04-29 17:08:28', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1387700400634605569, 'email_ssl_enable', '开启SSL认证', '1', '1', NULL, 19, 1313694379541635074, '2021-04-29 17:28:52', 1, '2022-08-01 19:02:53', '2022-08-01 19:02:52'); -INSERT INTO `sys_options` VALUES (1388129689385472001, 'storage_local_domain', 'storage_local_domain', 'http://127.0.0.1:8080/opsli-boot', '1', NULL, 0, 1313694379541635074, '2021-04-30 21:54:43', 1313694379541635074, '2021-04-30 21:54:43', '2021-04-30 21:54:42'); -INSERT INTO `sys_options` VALUES (1388129689523884033, 'storage_local_path_prefix', 'storage_local_path_prefix', '', '1', NULL, 0, 1313694379541635074, '2021-04-30 21:54:43', 1313694379541635074, '2021-04-30 21:54:43', '2021-04-30 21:54:42'); -INSERT INTO `sys_options` VALUES (1388327975470596098, 'storage_type', 'storage_type', 'upYun', '1', NULL, 2, 1313694379541635074, '2021-05-01 11:02:38', 1313694379541635074, '2021-10-15 16:24:06', '2021-10-15 16:22:23'); -INSERT INTO `sys_options` VALUES (1388333266843320322, '11', '111', '111', '0', NULL, 0, 1313694379541635074, '2021-05-01 11:23:39', 1313694379541635074, '2021-05-01 11:23:39', '2021-05-01 11:23:39'); -INSERT INTO `sys_options` VALUES (1388333321180528642, '222', '222', '222', '0', NULL, 0, 1313694379541635074, '2021-05-01 11:23:52', 1313694379541635074, '2021-05-01 11:23:52', '2021-05-01 11:23:52'); -INSERT INTO `sys_options` VALUES (1388333452273500161, '333', '333', '333', '0', NULL, 0, 1313694379541635074, '2021-05-01 11:24:24', 1313694379541635074, '2021-05-01 11:24:24', '2021-05-01 11:24:23'); -INSERT INTO `sys_options` VALUES (1388333500516384770, '444', '444', '444', '0', NULL, 0, 1313694379541635074, '2021-05-01 11:24:35', 1313694379541635074, '2021-05-01 11:24:35', '2021-05-01 11:24:35'); -INSERT INTO `sys_options` VALUES (1400402255261159426, 'storage_upyun_domain', 'storage_upyun_domain', 'http://upload.bedebug.com', '1', NULL, 3, 1, '2021-06-03 18:41:31', 1, '2021-06-03 19:47:51', '2021-06-03 19:47:51'); -INSERT INTO `sys_options` VALUES (1400402255261159427, 'storage_upyun_path_prefix', 'storage_upyun_path_prefix', '', '1', NULL, 3, 1, '2021-06-03 18:41:31', 1, '2021-06-03 19:47:51', '2021-06-03 19:47:51'); -INSERT INTO `sys_options` VALUES (1400402255328268290, 'storage_upyun_bucket_name', 'storage_upyun_bucket_name', 'opsli-storage', '1', NULL, 3, 1, '2021-06-03 18:41:31', 1, '2021-06-03 19:47:51', '2021-06-03 19:47:51'); -INSERT INTO `sys_options` VALUES (1400402255328268291, 'storage_upyun_username', 'storage_upyun_username', 'opsli', '1', NULL, 3, 1, '2021-06-03 18:41:31', 1, '2021-06-03 19:47:51', '2021-06-03 19:47:51'); -INSERT INTO `sys_options` VALUES (1400402255328268292, 'storage_upyun_password', 'storage_upyun_password', 'DjWrspmr4UbfBdnkrgm4ssCOVK7rUTXF', '1', NULL, 3, 1, '2021-06-03 18:41:31', 1, '2021-06-03 19:47:51', '2021-06-03 19:47:51'); -INSERT INTO `sys_options` VALUES (1504319856055046145, '123321', '123132', NULL, '0', NULL, 6, 1465171199435362305, '2022-03-17 12:52:57', 1, '2022-07-25 19:57:13', '2022-07-25 19:57:13'); +INSERT INTO `sys_options` VALUES (1, 'crypto_asymmetric', '非对称加解密算法', '0yjcKZp44TutirOVOkzk3A==', '1', '0', NULL, 1, 1, '2021-02-10 23:19:35', 1, '2022-08-07 12:54:02', '2022-08-07 12:54:01'); +INSERT INTO `sys_options` VALUES (2, 'crypto_asymmetric_public_key', '非对称加解密-公钥', 'iOsZOBkazTbd2Fr+IQwuo6ppJXx9aLqya9YtR+ruAMRqzQOjWORVrMUJPxF2TTo8TsBSyZ3hktN+4ubkH0/gsdXf+PlvGsa5JrLKJH+RbJoA3cQBaN3TXMXhfzYmwlMM2+js9qNdavqAmWWZWOy/hc1nXG4RwADOFHuxN/RHbMnYN80KhmdhMSn2bexu6k/A6esuEqDP6GYdOucl1FSW3/j1cxoZX3yr5p4Dl99CNtdpa8YUDY63D3s25W4pDrsLFbR/sYrW9Yn22gKv34bpcqwHgfj2EoZQvxqP8Jubw90=', '1', '0', NULL, 1, 1, '2021-02-10 23:19:35', 1, '2022-08-07 12:54:02', '2022-08-07 12:54:01'); +INSERT INTO `sys_options` VALUES (3, 'crypto_asymmetric_private_key', '非对称加解密-私钥', 'eIRdV/SBEzQrjJOLwmgl0r7GVh4NTcGRR64Q9ML6KLYmd4gtAT+WMI75aZCOA8NcB8EPbJYSfVLYy0tP4PtxNdtNmazGBTrmpzv3L/F8dmSuLwxPXyegbjXk6AejafKfhfq7i04ljiJU2j66RXZTyGFs/H4CDZ3SYd3idEt6cDJHGjT7koDJBLn5HxrS+5pE/TLqUCfpY1ja4bGFMyY55lttYDLi2f42poTkSJ9iPYvRU0RAIehJSH2HjIAMzHM5UcNWcM+6Gjglp7bpXtHbryGURg+n7qKF0Q/rlWZwGWbtEqdUE6Fj5FlKPrGFKnmmZ5Ck0RBwojtbTBAEX9W8qGiRO3y6jGd0MdulZPpf7+PY3o0FH53vsZJ/DQP0jcml0eh/P/0x803ppebrPI6MU4mwnFUCCeiHUsozsDelHucx6/UuGQCGxTFqiRUyeJZsY/MmhxpgqbGRWr/y5WyEMSMeFdsfU1V9ixZ2eXnYX+g0iKZb0rLyUka9vo5IazdV8VqERZGXVnaRg6HPD1kfL2C6E3ANN2j9PRgJPGuS3ukqsOZKDy/8AsihWSblzIRO4jOfXnFYiMpkhsVgq2txg6+v50U4mzxHCCLkZtvzhg2FSGbpQOViiX78vBRYPhGlQP7ft7w2oSu8sIe0uMwQBdrE4OWAUNfJC3sxqK6P8dFqLgLTEFqmt8iHkM2S4e3He73AY0kKCs4YgRVbPxqQW+FsZSnWgknwLNvTEB4e7FvnoLa8gjcDTB/mC7thGbZO2nGHmlEeGxegYHOpsEG6qOxX0sBMZ40MmDcSm0Aqwe0sADKoN9V7Hzz0COmNjH55URAVap6yXj9G1bnmf9Evn0XeBpKmQ32ocmrrzLoCNBgWxUNo9WaeYP03mE88gLJYCBXPUyRVL98wrz/NHsUfAwFN067CQyTFayegpFzHZVaGBRdf8iVCYCs/AkTlBbxIVUeSblmDZ8/sJq8Cgsoq0UbxwjpXOaRMHUXlz2aMGSVZwWicRuvsjSRzxGz5BDAHIHqkC21JYht8GhP2VXvQZ/XcEjHV3BRVWOHC8G57MhycFQRk5I+FMx591Wg9v3TbiBd/AMREGLUHFqgdvxKiE6uZSfzCF69DDr2DWatX3RgsZu3BZ02YRYC5tVH8qJEA', '1', '0', NULL, 1, 1, '2021-02-10 23:19:35', 1, '2022-08-07 12:54:02', '2022-08-07 12:54:01'); +INSERT INTO `sys_options` VALUES (4, 'def_pass', '系统默认密码', '47XKQ7v2BI/mOY3h9j79Ew==', '1', '0', NULL, 3, 1, '2021-02-10 23:19:35', 1, '2022-08-07 12:53:21', '2022-08-07 12:53:21'); +INSERT INTO `sys_options` VALUES (5, 'def_role', '系统默认角色编号', 'c21tuf3eJ7eE2r81xj4aaw==', '1', '0', NULL, 3, 1, '2021-02-10 23:19:35', 1, '2022-08-07 12:53:21', '2022-08-07 12:53:21'); +INSERT INTO `sys_options` VALUES (6, 'email_account', '邮箱账号', NULL, '1', '0', NULL, 41, 1, '2021-04-29 16:38:55', 1, '2022-08-07 12:54:04', '2022-08-08 10:10:58'); +INSERT INTO `sys_options` VALUES (7, 'email_password', '邮箱密码', NULL, '1', '1', NULL, 41, 1, '2021-04-29 16:38:55', 1, '2022-08-07 12:54:04', '2022-08-08 10:10:58'); +INSERT INTO `sys_options` VALUES (8, 'email_addresser', '发件人', 'XmjpKcluqKOKFisw5Hl6aHCaLn/7fdpcqBDmdd57rf/XIHkGnK9WmntC6u8iWfH7LGbtwWdNmEWAubVR/KiRAA==', '1', '0', NULL, 41, 1, '2021-04-29 16:38:55', 1, '2022-08-07 12:54:04', '2022-08-07 20:31:12'); +INSERT INTO `sys_options` VALUES (9, 'email_smtp', 'SMTP地址', 'pZdMUIPJzJPdAbAqQoWSZg==', '1', '0', NULL, 32, 1, '2021-04-29 16:55:59', 1, '2022-08-07 12:54:04', '2022-08-07 20:31:13'); +INSERT INTO `sys_options` VALUES (10, 'email_port', 'SMTP端口', 'iqxeoj6oqSmCiJqf6zNb7A==', '1', '0', NULL, 24, 1, '2021-04-29 17:08:28', 1, '2022-08-07 12:54:04', '2022-08-07 20:31:15'); +INSERT INTO `sys_options` VALUES (11, 'email_ssl_enable', '开启SSL认证', 'uCeCEIDGlVfiABZ8OrEFJg==', '1', '0', NULL, 20, 1313694379541635074, '2021-04-29 17:28:52', 1, '2022-08-07 12:54:04', '2022-08-07 20:31:17'); +INSERT INTO `sys_options` VALUES (12, 'storage_local_domain', '本地存储域名', '21n5x1+eHLId4XnbQdW4PltTlIYieOntdoH3SdYWN7csZu3BZ02YRYC5tVH8qJEA', '1', '0', NULL, 1, 1313694379541635074, '2021-04-30 21:54:43', 1, '2022-08-07 12:54:06', '2022-08-07 20:31:18'); +INSERT INTO `sys_options` VALUES (13, 'storage_local_path_prefix', '本地存储路径前缀', 'LGbtwWdNmEWAubVR/KiRAA==', '1', '0', NULL, 1, 1313694379541635074, '2021-04-30 21:54:43', 1, '2022-08-07 12:54:06', '2022-08-07 20:31:20'); +INSERT INTO `sys_options` VALUES (14, 'storage_type', '存储类型', 'zKDmOi1fneStyHdrCUsDBg==', '1', '0', NULL, 3, 1313694379541635074, '2021-05-01 11:02:38', 1, '2022-08-07 12:53:21', '2022-08-07 20:31:21'); +INSERT INTO `sys_options` VALUES (15, 'storage_upyun_domain', '又拍云存储域名', '1t5v8R17Whg2LdV/97+34UUP/k6hqUGR1+jyauJA62o=', '1', '0', NULL, 4, 1, '2021-06-03 18:41:31', 1, '2022-08-07 12:54:08', '2022-08-07 20:31:23'); +INSERT INTO `sys_options` VALUES (16, 'storage_upyun_path_prefix', '又拍云存储路径前缀', 'LGbtwWdNmEWAubVR/KiRAA==', '1', '0', NULL, 4, 1, '2021-06-03 18:41:31', 1, '2022-08-07 12:54:08', '2022-08-07 20:31:24'); +INSERT INTO `sys_options` VALUES (17, 'storage_upyun_bucket_name', '又拍云存储桶名称', '8WojmNgerjWeE8LsopgEfA==', '1', '0', NULL, 4, 1, '2021-06-03 18:41:31', 1, '2022-08-07 12:54:08', '2022-08-07 20:31:26'); +INSERT INTO `sys_options` VALUES (18, 'storage_upyun_username', '又拍云存储用户名', 'uDBoSc5NeWtHLmXhPmWqLw==', '1', '0', NULL, 4, 1, '2021-06-03 18:41:31', 1, '2022-08-07 12:54:08', '2022-08-07 20:31:27'); +INSERT INTO `sys_options` VALUES (19, 'storage_upyun_password', '又拍云存储密码', NULL, '1', '1', NULL, 4, 1, '2021-06-03 18:41:31', 1, '2022-08-07 12:54:08', '2022-08-08 10:10:58'); +INSERT INTO `sys_options` VALUES (50, 'sms_aliyun_access_key', '短信-阿里云凭证', 'eYMZVyqB6OPppUc20USOLiX3YIFm5PQcLTwGgJWw0ec=', '1', '0', NULL, 9, 1, '2021-06-03 18:41:31', 1, '2022-08-08 00:10:58', '2022-08-08 00:10:57'); +INSERT INTO `sys_options` VALUES (51, 'sms_aliyun_access_key_secret', '短信-阿里云密钥', NULL, '1', '1', NULL, 9, 1, '2021-06-03 18:41:31', 1, '2022-08-08 00:10:58', '2022-08-08 10:10:58'); +INSERT INTO `sys_options` VALUES (52, 'sms_aliyun_captcha_template_code', '短信-阿里云-验证码模版编号', 'YwE88I//MWVwKk2xHlF7oQ==', '1', '0', NULL, 9, 1, '2021-06-03 18:41:31', 1, '2022-08-08 00:10:58', '2022-08-08 00:10:57'); +INSERT INTO `sys_options` VALUES (53, 'sms_aliyun_captcha_sign', '短信-阿里云-验证码签名', 'lIBj5h8sXsmqMcGBTur1YvUYeprjul8G3LUuyz/mhyg=', '1', '0', NULL, 9, 1, '2021-06-03 18:41:31', 1, '2022-08-08 00:10:58', '2022-08-08 00:10:57'); COMMIT; -- ---------------------------- @@ -4612,6 +4611,8 @@ INSERT INTO `test_car` VALUES (1448927860478357506, '自己_刘亦菲', '111', ' INSERT INTO `test_car` VALUES (1448940392903516161, '自己_演示', '123123', '123123', '2021-10-04', '1', 1, '0', 1, 1313694379541635074, '2021-10-15 17:14:44', 1313694379541635074, '2021-11-30 18:05:11', '2021-11-30 18:02:56', '0,1401861234604605441,1401861575953842177'); INSERT INTO `test_car` VALUES (1465997520956698625, '宋轶自己的车', '油车', '宝马', '2021-12-01', '1', 1, '0', 0, 1465991640378986498, '2021-12-01 18:53:41', 1465991640378986498, '2021-12-01 18:53:41', '2021-12-01 18:51:27', '0,1401861234604605441,1401861575953842177,1401873907685687297,1448921889865658369'); INSERT INTO `test_car` VALUES (1465999901249384450, '测试汽车', '测试汽车', '测试汽车', '2021-12-01', '1', 1, '0', 0, 1465879900211294210, '2021-12-01 19:03:08', 1465879900211294210, '2021-12-01 19:03:08', '2021-12-01 19:00:54', NULL); +INSERT INTO `test_car` VALUES (1555921049517580290, '111', 'ddd', 'aaa', '2022-08-01', '1', 0, '0', 0, 1, '2022-08-06 22:17:40', 1, '2022-08-06 22:17:40', '2022-08-06 22:17:40', NULL); +INSERT INTO `test_car` VALUES (1555921343362129922, '自己_超管', '11', '111', '2022-08-02', '1', 0, '0', 0, 1, '2022-08-06 22:18:51', 1, '2022-08-06 22:18:51', '2022-08-06 22:18:50', NULL); COMMIT; -- ----------------------------