mirror of
https://github.com/continew-org/continew-admin.git
synced 2025-09-13 02:57:13 +08:00
refactor(system/client): 移除终端部分配置字段
This commit is contained in:
@@ -46,14 +46,9 @@ public class ClientDO extends BaseDO {
|
|||||||
private String clientId;
|
private String clientId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 终端 Key
|
* 终端类型
|
||||||
*/
|
*/
|
||||||
private String clientKey;
|
private String clientType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端秘钥
|
|
||||||
*/
|
|
||||||
private String clientSecret;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 登录类型
|
* 登录类型
|
||||||
@@ -61,11 +56,6 @@ public class ClientDO extends BaseDO {
|
|||||||
@TableField(typeHandler = JacksonTypeHandler.class)
|
@TableField(typeHandler = JacksonTypeHandler.class)
|
||||||
private List<String> authType;
|
private List<String> authType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端类型
|
|
||||||
*/
|
|
||||||
private String clientType;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
||||||
*/
|
*/
|
||||||
|
@@ -41,16 +41,10 @@ public class ClientQuery implements Serializable {
|
|||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 终端 Key
|
* 终端类型
|
||||||
*/
|
*/
|
||||||
@Schema(description = "终端 Key", example = "PC")
|
@Schema(description = "终端类型", example = "PC")
|
||||||
private String clientKey;
|
private String clientType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端秘钥
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端秘钥", example = "dd77ab1e353a027e0d60ce3b151e8642")
|
|
||||||
private String clientSecret;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 认证类型
|
* 认证类型
|
||||||
@@ -59,12 +53,6 @@ public class ClientQuery implements Serializable {
|
|||||||
@Query(type = QueryType.IN)
|
@Query(type = QueryType.IN)
|
||||||
private List<String> authType;
|
private List<String> authType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端类型
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端类型", example = "PC")
|
|
||||||
private String clientType;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 状态
|
* 状态
|
||||||
*/
|
*/
|
||||||
|
@@ -42,20 +42,12 @@ public class ClientReq implements Serializable {
|
|||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 终端 Key
|
* 终端类型
|
||||||
*/
|
*/
|
||||||
@Schema(description = "终端 Key", example = "PC")
|
@Schema(description = "终端类型", example = "PC")
|
||||||
@NotBlank(message = "终端Key不能为空")
|
@NotBlank(message = "终端类型不能为空")
|
||||||
@Length(max = 32, message = "终端Key长度不能超过 {max} 个字符")
|
@Length(max = 32, message = "终端类型长度不能超过 {max} 个字符")
|
||||||
private String clientKey;
|
private String clientType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端秘钥
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端秘钥", example = "dd77ab1e353a027e0d60ce3b151e8642")
|
|
||||||
@NotBlank(message = "终端秘钥不能为空")
|
|
||||||
@Length(max = 255, message = "终端秘钥长度不能超过 {max} 个字符")
|
|
||||||
private String clientSecret;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 认证类型
|
* 认证类型
|
||||||
@@ -64,14 +56,6 @@ public class ClientReq implements Serializable {
|
|||||||
@NotEmpty(message = "认证类型不能为空")
|
@NotEmpty(message = "认证类型不能为空")
|
||||||
private List<String> authType;
|
private List<String> authType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端类型
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端类型", example = "PC")
|
|
||||||
@NotBlank(message = "终端类型不能为空")
|
|
||||||
@Length(max = 32, message = "终端类型长度不能超过 {max} 个字符")
|
|
||||||
private String clientType;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
||||||
*/
|
*/
|
||||||
|
@@ -53,17 +53,12 @@ public class ClientResp extends BaseDetailResp {
|
|||||||
private String clientId;
|
private String clientId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 终端 Key
|
* 终端类型(取值于字典 client_type
|
||||||
*/
|
*/
|
||||||
@Schema(description = "终端 Key", example = "PC")
|
@Schema(description = "终端类型(取值于字典 client_type)", example = "PC")
|
||||||
@ExcelProperty(value = "终端 Key", order = 3)
|
@ExcelProperty(value = "终端类型", converter = ExcelDictConverter.class, order = 5)
|
||||||
private String clientKey;
|
@DictExcelProperty("client_type")
|
||||||
|
private String clientType;
|
||||||
/**
|
|
||||||
* 终端秘钥
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端秘钥", example = "dd77ab1e353a027e0d60ce3b151e8642")
|
|
||||||
private String clientSecret;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 认证类型
|
* 认证类型
|
||||||
@@ -72,14 +67,6 @@ public class ClientResp extends BaseDetailResp {
|
|||||||
@ExcelProperty(value = "认证类型", converter = ExcelListConverter.class, order = 4)
|
@ExcelProperty(value = "认证类型", converter = ExcelListConverter.class, order = 4)
|
||||||
private List<String> authType;
|
private List<String> authType;
|
||||||
|
|
||||||
/**
|
|
||||||
* 终端类型(取值于字典 client_type
|
|
||||||
*/
|
|
||||||
@Schema(description = "终端类型(取值于字典 client_type)", example = "PC")
|
|
||||||
@ExcelProperty(value = "终端类型", converter = ExcelDictConverter.class, order = 5)
|
|
||||||
@DictExcelProperty("client_type")
|
|
||||||
private String clientType;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
* Token 最低活跃频率(单位:秒,-1:不限制,永不冻结)
|
||||||
*/
|
*/
|
||||||
|
@@ -17,7 +17,9 @@
|
|||||||
package top.continew.admin.system.service.impl;
|
package top.continew.admin.system.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.crypto.digest.DigestUtil;
|
import cn.hutool.core.codec.Base64;
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import cn.hutool.crypto.SecureUtil;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import top.continew.admin.auth.model.query.OnlineUserQuery;
|
import top.continew.admin.auth.model.query.OnlineUserQuery;
|
||||||
@@ -49,8 +51,9 @@ public class ClientServiceImpl extends BaseServiceImpl<ClientMapper, ClientDO, C
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void beforeCreate(ClientReq req) {
|
public void beforeCreate(ClientReq req) {
|
||||||
String clientId = DigestUtil.md5Hex(req.getClientKey() + StringConstants.COLON + req.getClientSecret());
|
req.setClientId(SecureUtil.md5(Base64.encode(IdUtil.fastSimpleUUID())
|
||||||
req.setClientId(clientId);
|
.replace(StringConstants.SLASH, StringConstants.EMPTY)
|
||||||
|
.replace(StringConstants.PLUS, StringConstants.EMPTY)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -60,7 +63,7 @@ public class ClientServiceImpl extends BaseServiceImpl<ClientMapper, ClientDO, C
|
|||||||
for (Long id : ids) {
|
for (Long id : ids) {
|
||||||
ClientDO client = this.getById(id);
|
ClientDO client = this.getById(id);
|
||||||
query.setClientId(client.getClientId());
|
query.setClientId(client.getClientId());
|
||||||
CheckUtils.throwIfNotEmpty(onlineUserService.list(query), "终端 [{}] 还存在在线用户,不能删除", client.getClientKey());
|
CheckUtils.throwIfNotEmpty(onlineUserService.list(query), "终端 [{}] 还存在在线用户,不能删除", client.getClientId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -273,6 +273,6 @@ VALUES
|
|||||||
|
|
||||||
-- 初始化终端数据
|
-- 初始化终端数据
|
||||||
INSERT INTO `sys_client`
|
INSERT INTO `sys_client`
|
||||||
(`id`, `client_id`, `client_key`, `client_secret`, `auth_type`, `client_type`, `active_timeout`, `timeout`, `status`, `create_user`, `create_time`)
|
(`id`, `client_id`, `client_type`, `auth_type`, `active_timeout`, `timeout`, `status`, `create_user`, `create_time`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 'ef51c9a3e9046c4f2ea45142c8a8344a', 'pc', 'dd77ab1e353a027e0d60ce3b151e8642', '["ACCOUNT", "EMAIL", "PHONE", "SOCIAL"]', 'PC', 1800, 86400, 1, 1, NOW());
|
(1, 'ef51c9a3e9046c4f2ea45142c8a8344a', 'PC', '["ACCOUNT", "EMAIL", "PHONE", "SOCIAL"]', 1800, 86400, 1, 1, NOW());
|
||||||
|
@@ -308,10 +308,8 @@ CREATE TABLE IF NOT EXISTS `sys_file` (
|
|||||||
CREATE TABLE IF NOT EXISTS `sys_client` (
|
CREATE TABLE IF NOT EXISTS `sys_client` (
|
||||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
|
||||||
`client_id` varchar(50) NOT NULL COMMENT '终端ID',
|
`client_id` varchar(50) NOT NULL COMMENT '终端ID',
|
||||||
`client_key` varchar(255) NOT NULL COMMENT '终端Key',
|
|
||||||
`client_secret` varchar(255) NOT NULL COMMENT '终端秘钥',
|
|
||||||
`auth_type` json NOT NULL COMMENT '认证类型',
|
|
||||||
`client_type` varchar(50) NOT NULL COMMENT '终端类型',
|
`client_type` varchar(50) NOT NULL COMMENT '终端类型',
|
||||||
|
`auth_type` json NOT NULL COMMENT '认证类型',
|
||||||
`active_timeout` bigint(20) DEFAULT -1 COMMENT 'Token最低活跃频率(单位:秒,-1:不限制,永不冻结)',
|
`active_timeout` bigint(20) DEFAULT -1 COMMENT 'Token最低活跃频率(单位:秒,-1:不限制,永不冻结)',
|
||||||
`timeout` bigint(20) DEFAULT 2592000 COMMENT 'Token有效期(单位:秒,-1:永不过期)',
|
`timeout` bigint(20) DEFAULT 2592000 COMMENT 'Token有效期(单位:秒,-1:永不过期)',
|
||||||
`status` tinyint(1) UNSIGNED NOT NULL DEFAULT 1 COMMENT '状态(1:启用;2:禁用)',
|
`status` tinyint(1) UNSIGNED NOT NULL DEFAULT 1 COMMENT '状态(1:启用;2:禁用)',
|
||||||
|
@@ -273,6 +273,6 @@ VALUES
|
|||||||
|
|
||||||
-- 初始化终端数据
|
-- 初始化终端数据
|
||||||
INSERT INTO "sys_client"
|
INSERT INTO "sys_client"
|
||||||
("id", "client_id", "client_key", "client_secret", "auth_type", "client_type", "active_timeout", "timeout", "status", "create_user", "create_time")
|
("id", "client_id", "client_type", "auth_type", "active_timeout", "timeout", "status", "create_user", "create_time")
|
||||||
VALUES
|
VALUES
|
||||||
(1, 'ef51c9a3e9046c4f2ea45142c8a8344a', 'pc', 'dd77ab1e353a027e0d60ce3b151e8642', '["ACCOUNT", "EMAIL", "PHONE", "SOCIAL"]', 'PC', 1800, 86400, 1, 1, NOW());
|
(1, 'ef51c9a3e9046c4f2ea45142c8a8344a', 'PC', '["ACCOUNT", "EMAIL", "PHONE", "SOCIAL"]', 1800, 86400, 1, 1, NOW());
|
||||||
|
@@ -514,10 +514,8 @@ COMMENT ON TABLE "sys_file" IS '文件表';
|
|||||||
CREATE TABLE IF NOT EXISTS "sys_client" (
|
CREATE TABLE IF NOT EXISTS "sys_client" (
|
||||||
"id" int8 NOT NULL,
|
"id" int8 NOT NULL,
|
||||||
"client_id" varchar(50) NOT NULL,
|
"client_id" varchar(50) NOT NULL,
|
||||||
"client_key" varchar(255) NOT NULL,
|
|
||||||
"client_secret" varchar(255) NOT NULL,
|
|
||||||
"auth_type" json NOT NULL,
|
|
||||||
"client_type" varchar(50) NOT NULL,
|
"client_type" varchar(50) NOT NULL,
|
||||||
|
"auth_type" json NOT NULL,
|
||||||
"active_timeout" int8 NOT NULL DEFAULT -1,
|
"active_timeout" int8 NOT NULL DEFAULT -1,
|
||||||
"timeout" int8 NOT NULL DEFAULT 2592000,
|
"timeout" int8 NOT NULL DEFAULT 2592000,
|
||||||
"status" int2 NOT NULL DEFAULT 1,
|
"status" int2 NOT NULL DEFAULT 1,
|
||||||
@@ -532,10 +530,8 @@ CREATE INDEX "idx_client_create_user" ON "sys_client" ("create_user");
|
|||||||
CREATE INDEX "idx_client_update_user" ON "sys_client" ("update_user");
|
CREATE INDEX "idx_client_update_user" ON "sys_client" ("update_user");
|
||||||
COMMENT ON COLUMN "sys_client"."id" IS 'ID';
|
COMMENT ON COLUMN "sys_client"."id" IS 'ID';
|
||||||
COMMENT ON COLUMN "sys_client"."client_id" IS '终端ID';
|
COMMENT ON COLUMN "sys_client"."client_id" IS '终端ID';
|
||||||
COMMENT ON COLUMN "sys_client"."client_key" IS '终端Key';
|
|
||||||
COMMENT ON COLUMN "sys_client"."client_secret" IS '终端秘钥';
|
|
||||||
COMMENT ON COLUMN "sys_client"."auth_type" IS '认证类型';
|
|
||||||
COMMENT ON COLUMN "sys_client"."client_type" IS '终端类型';
|
COMMENT ON COLUMN "sys_client"."client_type" IS '终端类型';
|
||||||
|
COMMENT ON COLUMN "sys_client"."auth_type" IS '认证类型';
|
||||||
COMMENT ON COLUMN "sys_client"."active_timeout" IS 'Token最低活跃频率(单位:秒,-1:不限制,永不冻结)';
|
COMMENT ON COLUMN "sys_client"."active_timeout" IS 'Token最低活跃频率(单位:秒,-1:不限制,永不冻结)';
|
||||||
COMMENT ON COLUMN "sys_client"."timeout" IS 'Token有效期(单位:秒,-1:永不过期)';
|
COMMENT ON COLUMN "sys_client"."timeout" IS 'Token有效期(单位:秒,-1:永不过期)';
|
||||||
COMMENT ON COLUMN "sys_client"."status" IS '状态(1:启用;2:禁用)';
|
COMMENT ON COLUMN "sys_client"."status" IS '状态(1:启用;2:禁用)';
|
||||||
|
Reference in New Issue
Block a user