feat: 新增 API 版本控制

pull/9/head
Carina 4 years ago
parent a44f34b8d1
commit ab9776ca54

@ -1,4 +0,0 @@
ALTER TABLE `opsli-boot`.`creater_table_column`
MODIFY COLUMN `field_length` int(11) NULL DEFAULT NULL COMMENT '字段长度' AFTER `field_type`,
MODIFY COLUMN `field_precision` int(11) NULL DEFAULT NULL COMMENT '字段精度' AFTER `field_length`,
MODIFY COLUMN `sort` int(6) NOT NULL COMMENT '排序(升序)' AFTER `dict_type_code`;

@ -1,61 +0,0 @@
/*
Navicat Premium Data Transfer
Source Server :
Source Server Type : MySQL
Source Server Version : 80018
Source Host : localhost:3306
Source Schema : opsli-boot
Target Server Type : MySQL
Target Server Version : 80018
File Encoding : 65001
Date: 16/02/2021 22:23:25
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- BUG
ALTER TABLE `creater_table_column` MODIFY COLUMN `field_length` int(11) NULL DEFAULT NULL COMMENT '' AFTER `field_type`;
ALTER TABLE `creater_table_column` MODIFY COLUMN `field_precision` int(11) NULL DEFAULT NULL COMMENT '' AFTER `field_type`;
-- ----------------------------
-- Table structure for sys_options
-- ----------------------------
DROP TABLE IF EXISTS `sys_options`;
CREATE TABLE `sys_options` (
`id` bigint(19) NOT NULL COMMENT '',
`option_code` varchar(100) NOT NULL COMMENT '',
`option_name` varchar(200) NOT NULL COMMENT '',
`option_value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '',
`version` int(11) NOT NULL DEFAULT '0' COMMENT '',
`create_by` bigint(19) NOT NULL COMMENT '',
`create_time` datetime NOT NULL COMMENT '',
`update_by` bigint(19) NOT NULL COMMENT '',
`update_time` datetime NOT NULL COMMENT '',
PRIMARY KEY (`id`),
UNIQUE KEY `index` (`option_code`) USING BTREE COMMENT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='';
-- ----------------------------
-- Records of sys_options
-- ----------------------------
BEGIN;
INSERT INTO `sys_options` VALUES (1, 'crypto_asymmetric', '', 'RSA', 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-02-16 21:35:58');
INSERT INTO `sys_options` VALUES (2, 'crypto_asymmetric_public_key', '-', 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCQS75ZTYUL6IJJBgylgFDtksWZx4OsVK5CBJGXi3n9LON1Jg7KsxkgindCD28gQRIEh6ZP1IuhlMs9N/QteRbM3b1oDKW7Cbr7lFk+EYUmpO5nwD1+IHowiNc0AK+XfICOVF5287wE4LFLqBDnWhV0WNQFjYYpAc7852ZfEwThSQIDAQAB', 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-02-16 21:35:58');
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=', 0, 1, '2021-02-10 23:19:35', 1313694379541635074, '2021-02-16 21:35:58');
COMMIT;
--
INSERT INTO `sys_menu`(`id`, `parent_id`, `menu_code`, `menu_name`, `icon`, `type`, `url`, `component`, `redirect`, `sort_no`, `hidden`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360233188433977345, 1, 'system_options', '', '', '1', 'set', 'views/modules/sys/setManagement/index', NULL, 99, '0', '0', 3, 1313694379541635074, '2021-02-12 22:23:59', 1313694379541635074, '2021-02-16 21:44:06');
INSERT INTO `sys_menu`(`id`, `parent_id`, `menu_code`, `menu_name`, `icon`, `type`, `url`, `component`, `redirect`, `sort_no`, `hidden`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360233383397810177, 1360233188433977345, 'system_options_update', '', '', '2', NULL, NULL, NULL, 1, '0', '0', 2, 1313694379541635074, '2021-02-12 22:24:45', 1313694379541635074, '2021-02-14 01:37:07');
--
INSERT INTO `sys_dict`(`id`, `type_code`, `type_name`, `iz_lock`, `remark`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360237407576645633, 'crypto_asymmetric', '', '1', NULL, '0', 0, 1313694379541635074, '2021-02-12 22:40:45', 1313694379541635074, '2021-02-12 22:40:45');
INSERT INTO `sys_dict_detail`(`id`, `type_id`, `type_code`, `dict_name`, `dict_value`, `iz_lock`, `sort_no`, `remark`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360237605254193154, '1360237407576645633', 'crypto_asymmetric', 'RSA', 'RSA', '1', 1, NULL, '0', 1, 1, '2021-02-12 22:41:32', 1, '2021-02-12 22:41:58');
INSERT INTO `sys_dict_detail`(`id`, `type_id`, `type_code`, `dict_name`, `dict_value`, `iz_lock`, `sort_no`, `remark`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360237693896613890, '1360237407576645633', 'crypto_asymmetric', 'SM2', 'SM2', '1', 2, NULL, '0', 1, 1, '2021-02-12 22:41:53', 1, '2021-02-14 00:51:54');
INSERT INTO `sys_dict_detail`(`id`, `type_id`, `type_code`, `dict_name`, `dict_value`, `iz_lock`, `sort_no`, `remark`, `deleted`, `version`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1360238588239667202, '1360237407576645633', 'crypto_asymmetric', 'ECIES', 'ECIES', '1', 3, NULL, '0', 0, 1, '2021-02-12 22:45:26', 1, '2021-02-12 22:45:26');
SET FOREIGN_KEY_CHECKS = 1;

File diff suppressed because it is too large Load Diff

@ -41,15 +41,13 @@ public interface TestCarRestApi {
String TITLE = "汽车信息管理";
/** 子标题 */
String SUB_TITLE = "汽车信息";
/** URL 前缀 */
String URL_PREFIX = "/gentest/carinfo/{version}";
/**
*
* @param model
* @return ResultVo
*/
@GetMapping(URL_PREFIX + "/get")
@GetMapping("/get")
ResultVo<TestCarModel> get(TestCarModel model);
/**
@ -59,7 +57,7 @@ public interface TestCarRestApi {
* @param request request
* @return ResultVo
*/
@GetMapping(URL_PREFIX + "/findPage")
@GetMapping("/findPage")
ResultVo<?> findPage(
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
@ -71,7 +69,7 @@ public interface TestCarRestApi {
* @param model
* @return ResultVo
*/
@PostMapping(URL_PREFIX + "/insert")
@PostMapping("/insert")
ResultVo<?> insert(@RequestBody TestCarModel model);
/**
@ -79,7 +77,7 @@ public interface TestCarRestApi {
* @param model
* @return ResultVo
*/
@PostMapping(URL_PREFIX + "/update")
@PostMapping("/update")
ResultVo<?> update(@RequestBody TestCarModel model);
/**
@ -87,7 +85,7 @@ public interface TestCarRestApi {
* @param id ID
* @return ResultVo
*/
@PostMapping(URL_PREFIX + "/del")
@PostMapping("/del")
ResultVo<?> del(String id);
/**
@ -95,7 +93,7 @@ public interface TestCarRestApi {
* @param ids ID
* @return ResultVo
*/
@PostMapping(URL_PREFIX + "/delAll")
@PostMapping("/delAll")
ResultVo<?> delAll(String ids);
/**
@ -111,7 +109,7 @@ public interface TestCarRestApi {
* @param request request
* @param response response
*/
@GetMapping(URL_PREFIX + "/exportExcel")
@GetMapping("/exportExcel")
void exportExcel(HttpServletRequest request, HttpServletResponse response);
/**
@ -119,14 +117,14 @@ public interface TestCarRestApi {
* @param request request
* @return ResultVo
*/
@PostMapping(URL_PREFIX + "/importExcel")
@PostMapping("/importExcel")
ResultVo<?> importExcel(MultipartHttpServletRequest request);
/**
* Excel
* @param response response
*/
@GetMapping(URL_PREFIX + "/importExcel/template")
@GetMapping("/importExcel/template")
void importTemplate(HttpServletResponse response);
}

@ -92,7 +92,8 @@ public class JwtRealm extends AuthorizingRealm implements FlagRealm {
}
// 4. 如果不是超级管理员
if(!StringUtils.equals(UserUtil.SUPER_ADMIN, user.getUsername())){
if(!StringUtils.equals(UserUtil.SUPER_ADMIN, user.getUsername()) &&
!TenantUtil.SUPER_ADMIN_TENANT_ID.equals(user.getTenantId()) ){
// 4.1 账号锁定验证
if(StringUtils.isEmpty(user.getEnable()) ||
DictType.NO_YES_NO.getValue().equals(user.getEnable())){

@ -40,7 +40,7 @@ import javax.servlet.http.HttpServletResponse;
*/
@Api(tags = GenLogsApi.TITLE)
@Slf4j
@ApiRestController("/generator/logs")
@ApiRestController("/generator/logs/{ver}")
public class GenLogsRestController extends BaseRestController<GenLogs, GenLogsModel, IGenLogsService>
implements GenLogsApi {

@ -57,7 +57,7 @@ import java.util.Map;
*/
@Api(tags = TableApi.TITLE)
@Slf4j
@ApiRestController("/generator/table")
@ApiRestController("/generator/table/{ver}")
public class GenTableRestController extends BaseRestController<GenTable, GenTableModel, IGenTableService>
implements TableApi {

@ -54,7 +54,7 @@ import org.opsli.modulars.generator.template.service.IGenTemplateDetailService;
*/
@Api(tags = GenTemplateDetailRestApi.TITLE)
@Slf4j
@ApiRestController("/generator/template/detail")
@ApiRestController("/generator/template/detail/{ver}")
public class GenTemplateDetailRestController extends BaseRestController<GenTemplateDetail, GenTemplateDetailModel, IGenTemplateDetailService>
implements GenTemplateDetailRestApi {

@ -53,9 +53,7 @@ import org.opsli.modulars.generator.template.service.IGenTemplateService;
*/
@Api(tags = GenTemplateRestApi.TITLE)
@Slf4j
@ApiRestController("/generator/template")
@ApiRestController("/generator/template/{ver}")
public class GenTemplateRestController extends BaseRestController<GenTemplate, GenTemplateModel, IGenTemplateService>
implements GenTemplateRestApi {

@ -71,7 +71,7 @@ import java.util.Set;
*/
@Api(tags = SysAreaRestApi.TITLE)
@Slf4j
@ApiRestController("/system/area")
@ApiRestController("/system/area/{ver}")
public class SysAreaRestController extends BaseRestController<SysArea, SysAreaModel, ISysAreaService>
implements SysAreaRestApi {

@ -56,7 +56,7 @@ import java.util.List;
*/
@Api(tags = DictDetailApi.TITLE)
@Slf4j
@ApiRestController("/system/dict/detail")
@ApiRestController("/system/dict/detail/{ver}")
public class DictDetailRestController extends BaseRestController<SysDictDetail, DictDetailModel, IDictDetailService>
implements DictDetailApi {

@ -59,7 +59,7 @@ import java.util.List;
*/
@Api(tags = DictApi.TITLE)
@Slf4j
@ApiRestController("/system/dict")
@ApiRestController("/system/dict/{ver}")
public class DictRestController extends BaseRestController<SysDict, DictModel, IDictService>
implements DictApi {

@ -42,7 +42,7 @@ import javax.servlet.http.HttpServletRequest;
*/
@Api(tags = LogsApi.TITLE)
@Slf4j
@ApiRestController("/system/logs")
@ApiRestController("/system/logs/{ver}")
public class LogsRestController extends BaseRestController<SysLogs, LogsModel, ILogsService>
implements LogsApi {

@ -73,7 +73,7 @@ import java.util.Map;
*/
@Api(tags = MenuApi.TITLE)
@Slf4j
@ApiRestController("/system/menu")
@ApiRestController("/system/menu/{ver}")
public class MenuRestController extends BaseRestController<SysMenu, MenuModel, IMenuService>
implements MenuApi {

@ -35,7 +35,7 @@ import java.util.Map;
*/
@Api(tags = "系统监控")
@Slf4j
@ApiRestController("/system/monitor")
@ApiRestController("/system/monitor/{ver}")
public class MonitorController {
/**

@ -60,7 +60,7 @@ import java.util.Map;
*/
@Api(tags = OptionsApi.TITLE)
@Slf4j
@ApiRestController("/system/options")
@ApiRestController("/system/options/{ver}")
public class SysOptionsRestController extends BaseRestController<SysOptions, OptionsModel, ISysOptionsService>
implements OptionsApi {

@ -66,7 +66,7 @@ import java.util.Set;
*/
@Api(tags = SysOrgRestApi.TITLE)
@Slf4j
@ApiRestController("/system/org")
@ApiRestController("/system/org/{ver}")
public class SysOrgRestController extends BaseRestController<SysOrg, SysOrgModel, ISysOrgService>
implements SysOrgRestApi {

@ -48,7 +48,7 @@ import java.util.stream.Collectors;
*/
@Api(tags = RoleMenuRefApi.TITLE)
@Slf4j
@ApiRestController("/system/role/perms")
@ApiRestController("/system/role/perms/{ver}")
public class RoleMenuRefRestController implements RoleMenuRefApi {
/** 配置类 */

@ -49,7 +49,7 @@ import java.lang.reflect.Method;
*/
@Api(tags = "角色管理")
@Slf4j
@ApiRestController("/system/role")
@ApiRestController("/system/role/{ver}")
public class RoleRestController extends BaseRestController<SysRole, RoleModel, IRoleService>
implements RoleApi {

@ -52,7 +52,7 @@ import java.lang.reflect.Method;
*/
@Api(tags = TenantApi.TITLE)
@Slf4j
@ApiRestController("/system/tenant")
@ApiRestController("/system/tenant/{ver}")
public class TenantRestController extends BaseRestController<SysTenant, TenantModel, ITenantService>
implements TenantApi {

@ -51,23 +51,26 @@ public interface UserRoleRefMapper extends BaseMapper<SysUserRoleRef> {
/**
* ID
* @param userId ID
* @param label
* @return List
*/
List<String> queryAllPerms(String userId);
List<String> queryAllPerms(@Param("userId") String userId, @Param("label") String label);
/**
* ID
* @param userId ID
* @param label
* @return List
*/
List<SysMenu> findMenuListByUserId(String userId);
List<SysMenu> findMenuListByUserId(@Param("userId") String userId, @Param("label") String label);
/**
* ID
* @param userId ID
* @param label
* @return List
*/
List<SysMenu> findMenuAllListByUserId(String userId);
List<SysMenu> findMenuAllListByUserId(@Param("userId") String userId, @Param("label") String label);
/**
* Id

@ -4,19 +4,22 @@
<select id="queryAllPerms" resultType="String">
select
a.permissions
a.permissions
from
sys_menu a,
sys_role_menu_ref b,
sys_user_role_ref c
where
a.id = b.menu_id
and a.hidden = '0'
and a.deleted = '0'
and b.role_id = c.role_id
<!-- 2 表示按钮 -->
and a.type = '2'
and c.user_id = #{userId}
a.id = b.menu_id
and a.hidden = '0'
and a.deleted = '0'
and b.role_id = c.role_id
<!-- 2 表示按钮 -->
and a.type = '2'
and c.user_id = #{userId}
<!-- 0:系统模块 1:功能模块 -->
and a.label like CONCAT('%',#{label}, '%')
group by a.id
</select>
<select id="getRoleIdList" resultType="String">
@ -42,17 +45,17 @@
<!-- 根据用户id查询菜单列表-->
<select id="findMenuListByUserId" resultType="SysMenu">
select
c.id,
c.parent_Id,
c.permissions,
c.menu_name,
c.redirect,
c.type,
c.icon,
c.url,
c.component,
c.always_show,
c.sort_no
c.id,
c.parent_Id,
c.permissions,
c.menu_name,
c.redirect,
c.type,
c.icon,
c.url,
c.component,
c.always_show,
c.sort_no
from
sys_user_role_ref a,
sys_role_menu_ref b,
@ -67,7 +70,8 @@
and c.deleted = '0'
and c.hidden = '0'
<!-- 0:系统模块 1:功能模块 -->
and c.label like '%1%'
and c.label like CONCAT('%',#{label}, '%')
group by c.id
</select>
<!-- 根据用户id查询菜单列表-->
@ -89,12 +93,15 @@
sys_role_menu_ref b,
sys_menu c
where
a.role_Id = b.role_Id
a.role_Id = b.role_Id
and b.menu_id = c.id
and c.parent_id != -1
and a.user_id = #{userId}
and a.user_id = #{userId}
and c.deleted = '0'
and c.hidden = '0'
<!-- 0:系统模块 1:功能模块 -->
and c.label like CONCAT('%',#{label}, '%')
group by c.id
</select>
<select id="getUserIdList" resultType="String">

@ -37,6 +37,7 @@ import org.opsli.common.utils.WrapperUtil;
import org.opsli.core.msg.CoreMsg;
import org.opsli.core.persistence.querybuilder.GenQueryBuilder;
import org.opsli.core.persistence.querybuilder.QueryBuilder;
import org.opsli.core.utils.TenantUtil;
import org.opsli.core.utils.UserUtil;
import org.opsli.modulars.system.SystemMsg;
import org.opsli.modulars.system.menu.entity.SysMenu;
@ -106,12 +107,19 @@ public class UserRoleRefServiceImpl extends ServiceImpl<UserRoleRefMapper, SysUs
queryWrapper.notIn("parent_id", -1);
queryWrapper.eq("type", '2');
queryWrapper.eq("hidden", DictType.NO_YES_NO.getValue());
queryWrapper.like("label",DictType.MENU_LABEL_SYSTEM.getValue());
List<SysMenu> menuList = iMenuService.findList(queryWrapper);
for (SysMenu sysMenu : menuList) {
perms.add(sysMenu.getPermissions());
}
}else{
perms = mapper.queryAllPerms(userId);
if(TenantUtil.SUPER_ADMIN_TENANT_ID.equals(userModel.getTenantId())){
perms = mapper.queryAllPerms(
userId, DictType.MENU_LABEL_SYSTEM.getValue());
}else {
perms = mapper.queryAllPerms(
userId, DictType.MENU_LABEL_FUNCTION.getValue());
}
}
// 去重
@ -137,7 +145,13 @@ public class UserRoleRefServiceImpl extends ServiceImpl<UserRoleRefMapper, SysUs
queryWrapper.like("label",DictType.MENU_LABEL_SYSTEM.getValue());
menuList = iMenuService.findList(queryWrapper);
}else{
menuList = mapper.findMenuListByUserId(userId);
if(TenantUtil.SUPER_ADMIN_TENANT_ID.equals(userModel.getTenantId())){
menuList = mapper.findMenuListByUserId(
userId, DictType.MENU_LABEL_SYSTEM.getValue());
}else {
menuList = mapper.findMenuListByUserId(
userId, DictType.MENU_LABEL_FUNCTION.getValue());
}
}
// 去重处理 这里不放在SQL 是为了保证数据库兼容性
@ -165,7 +179,11 @@ public class UserRoleRefServiceImpl extends ServiceImpl<UserRoleRefMapper, SysUs
queryWrapper.like("label", label);
menuList = iMenuService.findList(queryWrapper);
}else{
menuList = mapper.findMenuAllListByUserId(userId);
if(TenantUtil.SUPER_ADMIN_TENANT_ID.equals(userModel.getTenantId())){
menuList = mapper.findMenuAllListByUserId(userId, label);
}else {
menuList = mapper.findMenuAllListByUserId(userId, label);
}
}
if(CollUtil.isEmpty(menuList)){
@ -182,8 +200,7 @@ public class UserRoleRefServiceImpl extends ServiceImpl<UserRoleRefMapper, SysUs
@Override
public List<String> getUserIdListByRoleId(String roleId) {
QueryWrapper<SysUserRoleRef> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(
FieldUtil.humpToUnderline(MyBatisConstants.FIELD_DELETE_LOGIC), DictType.NO_YES_NO.getValue());
queryWrapper.eq("b.deleted", DictType.NO_YES_NO.getValue());
queryWrapper.eq("role_id", roleId);
List<String> users = mapper.getUserIdList(queryWrapper);
@ -214,7 +231,7 @@ public class UserRoleRefServiceImpl extends ServiceImpl<UserRoleRefMapper, SysUs
public List<String> getUserIdListByTenantIdAndAllData(String tenantId) {
QueryWrapper<SysUserRoleRef> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("b.deleted", DictType.NO_YES_NO.getValue());
queryWrapper.eq("c.tenantId", tenantId);
queryWrapper.eq("c.tenant_id", tenantId);
queryWrapper.eq("c.data_scope", "3");
List<String> users = mapper.getUserIdList(queryWrapper);

@ -54,7 +54,7 @@ import java.util.List;
*/
@Api(tags = UserOrgRefApi.TITLE)
@Slf4j
@ApiRestController("/system/user/org")
@ApiRestController("/system/user/org/{ver}")
public class UserOrgRefRestController implements UserOrgRefApi {
/** 配置类 */

@ -79,7 +79,7 @@ import java.util.List;
*/
@Api(tags = UserApi.TITLE)
@Slf4j
@ApiRestController("/system/user")
@ApiRestController("/system/user/{ver}")
public class UserRestController extends BaseRestController<SysUser, UserModel, IUserService>
implements UserApi {

@ -50,7 +50,7 @@ import java.util.List;
*/
@Api(tags = UserRoleRefApi.TITLE)
@Slf4j
@ApiRestController("/system/user/roles")
@ApiRestController("/system/user/roles/{ver}")
public class UserRoleRefRestController implements UserRoleRefApi {
/** 配置类 */

@ -0,0 +1,47 @@
package org.opsli.modulars.tools.api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.opsli.common.annotation.ApiRestController;
import org.opsli.common.annotation.ApiVersion;
import org.springframework.web.bind.annotation.GetMapping;
/**
* API
*
* @author
* @date 2021102712:50:00
*/
@Api(tags = "API-测试版本控制")
@ApiRestController("/tools/api/{ver}")
public class ApiController {
@ApiOperation(value = "测试正常接口", notes = "测试正常接口")
@GetMapping("/test")
public String test() {
return "test 1";
}
@ApiOperation(value = ">= V1 && <= V4", notes = ">= V1 && <= V4")
@GetMapping("/fun")
public String fun1() {
return "fun 1";
}
@ApiOperation(value = ">= V5 && <= V8", notes = ">= V5 && <= V8")
@ApiVersion(5)
@GetMapping("/fun")
public String fun2() {
return "fun 2";
}
@ApiOperation(value = ">= V9", notes = ">= V9")
@ApiVersion(9)
@GetMapping("/fun")
public String fun3() {
return "fun 5";
}
}

@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RequestBody;
*/
@Api(tags = "邮件类")
@Slf4j
@ApiRestController("/tools/email")
@ApiRestController("/tools/email/{ver}")
public class EmailRestController {
@Autowired

@ -13,7 +13,7 @@ import org.opsli.common.annotation.ApiRestController;
*/
@Api(tags = "文件管理类")
@Slf4j
@ApiRestController("/tools/oss")
@ApiRestController("/tools/oss/{ver}")
public class OssRestController {

@ -36,7 +36,7 @@ import java.util.Set;
*/
@Api(tags = "搜索历史记录")
@Slf4j
@ApiRestController("/tools/searchhis")
@ApiRestController("/tools/searchhis/{ver}")
public class SearchHisRestController {
/**

@ -47,7 +47,7 @@ import org.opsli.api.web.gentest.carinfo.TestCarRestApi;
*/
@Api(tags = TestCarRestApi.TITLE)
@Slf4j
@ApiRestController("/gentest/carinfo")
@ApiRestController("/gentest/carinfo/{ver}")
public class TestCarRestController extends BaseRestController<TestCar, TestCarModel, ITestCarService>
implements TestCarRestApi {

@ -48,7 +48,7 @@ import java.lang.reflect.Method;
*/
@Api(tags = TestUserRestApi.TITLE)
@Slf4j
@ApiRestController("/gentest/user")
@ApiRestController("/gentest/user/{ver}")
public class TestUserRestController extends BaseRestController<TestUser, TestUserModel, ITestUserService>
implements TestUserRestApi {

@ -32,7 +32,7 @@ import java.lang.reflect.Method;
*/
@Api(tags = "测试类")
@Slf4j
@ApiRestController("/test")
@ApiRestController("/test/{ver}")
public class TestRestController extends BaseRestController<TestEntity, TestModel, ITestService>
implements TestRestApi {

@ -12,7 +12,7 @@ server:
## 专门针对 Controller层接口路径前缀全局配置
api:
path:
global-prefix: /api/v1
global-prefix: /api
compression:
enabled: true
min-response-size: 1024
@ -163,8 +163,8 @@ opsli:
url-patterns: "/*"
# 排除过滤URL
url-exclusion:
- "/api/v1/generator/template/insertAndDetail"
- "/api/v1/generator/template/updateAndDetail"
- "/api/generator/template/v1/insertAndDetail"
- "/api/generator/template/v1/updateAndDetail"
- "/static/files/"
- "/doc.html"

Loading…
Cancel
Save