diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkAfterCall.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkAfterCall.java new file mode 100644 index 0000000000000000000000000000000000000000..9cdc6b8f09feafbe7440c60b5d18bec7f66d8b32 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkAfterCall.java @@ -0,0 +1,17 @@ +package cn.icanci.ddk.admin.dal.anno; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 通知方法调用之后的操作 + * + * @author icanci(1205068) + * @version Id: DdkBeforeCall, v 0.1 2022/12/14 00:44 icanci Exp $ + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DdkAfterCall { +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkBeforeCall.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkBeforeCall.java new file mode 100644 index 0000000000000000000000000000000000000000..0ddfd04ce27a1dc2db2cc96a86e76c6ee2688e9c --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkBeforeCall.java @@ -0,0 +1,17 @@ +package cn.icanci.ddk.admin.dal.anno; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 通知方法调用之前的操作 + * + * @author icanci(1205068) + * @version Id: DdkBeforeCall, v 0.1 2022/12/14 00:44 icanci Exp $ + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DdkBeforeCall { +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkCall.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkCall.java new file mode 100644 index 0000000000000000000000000000000000000000..8aa54d064c68b86c6f8afd078cdddac535c02e63 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkCall.java @@ -0,0 +1,17 @@ +package cn.icanci.ddk.admin.dal.anno; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 通知方法调用操作 + * + * @author icanci(1205068) + * @version Id: DdkBeforeCall, v 0.1 2022/12/14 00:44 icanci Exp $ + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DdkCall { +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkValue.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkValue.java new file mode 100644 index 0000000000000000000000000000000000000000..3eb657558b42d6c387d3cfc77382d60dcae9a9f6 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/anno/DdkValue.java @@ -0,0 +1,23 @@ +package cn.icanci.ddk.admin.dal.anno; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 值注解,作用在字段上 + * + * @author icanci(1205068) + * @version Id: DdkBeforeCall, v 0.1 2022/12/14 00:44 icanci Exp $ + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DdkValue { + /** + * 配置字典值 + * + * @return 返回配置字典值 + */ + String value(); +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppConfigDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppConfigDO.java new file mode 100644 index 0000000000000000000000000000000000000000..9242e9e861a0b4b5619af67abaf09070f8aa88d4 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppConfigDO.java @@ -0,0 +1,64 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.StringJoiner; + +/** + * @author icanci + * @since 1.0 Created in 2022/12/11 17:44 + */ +public class AppConfigDO extends BaseDO { + /** + * 配置名称 + */ + private String appConfigName; + /** + * 配置值 + */ + private String appConfigValue; + /** + * 配置类型 + */ + private String appConfigType; + /** + * 项目关联uuid + */ + private String appUuid; + + public String getAppConfigName() { + return appConfigName; + } + + public void setAppConfigName(String appConfigName) { + this.appConfigName = appConfigName; + } + + public String getAppConfigValue() { + return appConfigValue; + } + + public void setAppConfigValue(String appConfigValue) { + this.appConfigValue = appConfigValue; + } + + public String getAppConfigType() { + return appConfigType; + } + + public void setAppConfigType(String appConfigType) { + this.appConfigType = appConfigType; + } + + public String getAppUuid() { + return appUuid; + } + + public void setAppUuid(String appUuid) { + this.appUuid = appUuid; + } + + @Override + public String toString() { + return new StringJoiner(",").add("appConfigName=" + appConfigName).add("appConfigValue=" + appConfigValue).add("appConfigType=" + appConfigType).add("appUuid=" + appUuid) + .toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppDO.java new file mode 100644 index 0000000000000000000000000000000000000000..09ea9200ea17da2082b3986871e0f946516ffb6e --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/AppDO.java @@ -0,0 +1,53 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.StringJoiner; + +/** + * 项目组项目 + * + * @author icanci + * @since 1.0 Created in 2022/12/11 17:42 + */ +public class AppDO extends BaseDO { + /** + * 项目id,全局唯一 + */ + private String appUniqueId; + /** + * 项目名字 + */ + private String appName; + /** + * 项目组关联uuid + */ + private String teamUuid; + + public String getAppUniqueId() { + return appUniqueId; + } + + public void setAppUniqueId(String appUniqueId) { + this.appUniqueId = appUniqueId; + } + + public String getAppName() { + return appName; + } + + public void setAppName(String appName) { + this.appName = appName; + } + + public String getTeamUuid() { + return teamUuid; + } + + public void setTeamUuid(String teamUuid) { + this.teamUuid = teamUuid; + } + + @Override + public String toString() { + return new StringJoiner(",").add("appUniqueId=" + appUniqueId).add("appName=" + appName).add("teamUuid=" + teamUuid).toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/BaseDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/BaseDO.java new file mode 100644 index 0000000000000000000000000000000000000000..34b0de36724a21f24d675aea46df99705568fd07 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/BaseDO.java @@ -0,0 +1,113 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.Date; +import java.util.StringJoiner; + +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 基础模型 + * + * @author icanci + * @since 1.0 Created in 2022/12/11 17:37 + */ +public class BaseDO { + /** + * 数据库id + */ + private Long id; + + /** + * 雪花算法随机UUID + */ + private String uuid; + + /** + * 功能描述 + */ + private String desc; + + /** + * 创建时间 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + /** + * 更新时间 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + /** + * 状态 0有效,1无效 + */ + private int isDelete; + + /** + * 环境 + */ + private String env; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public int getIsDelete() { + return isDelete; + } + + public void setIsDelete(int isDelete) { + this.isDelete = isDelete; + } + + public String getEnv() { + return env; + } + + public void setEnv(String env) { + this.env = env; + } + + @Override + public String toString() { + return new StringJoiner(",").add("id=" + id).add("uuid=" + uuid).add("desc=" + desc).add("createTime=" + createTime).add("updateTime=" + updateTime) + .add("isDelete=" + isDelete).add("env=" + env).toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/GroupDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/GroupDO.java new file mode 100644 index 0000000000000000000000000000000000000000..10bc6e823319eb2377753a083d070274cb57cd5d --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/GroupDO.java @@ -0,0 +1,41 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.StringJoiner; + +/** + * 事业群 + * + * @author icanci + * @since 1.0 Created in 2022/12/11 17:39 + */ +public class GroupDO extends BaseDO { + /** + * 事业群组id,唯一 + */ + private String groupId; + /** + * 事业群组名字 + */ + private String groupName; + + public String getGroupId() { + return groupId; + } + + public void setGroupId(String groupId) { + this.groupId = groupId; + } + + public String getGroupName() { + return groupName; + } + + public void setGroupName(String groupName) { + this.groupName = groupName; + } + + @Override + public String toString() { + return new StringJoiner(",").add("groupId=" + groupId).add("groupName=" + groupName).toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/NoticeConfigDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/NoticeConfigDO.java new file mode 100644 index 0000000000000000000000000000000000000000..4f5ec0f32fcccc10a5239dac55c31a9cde4110c1 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/NoticeConfigDO.java @@ -0,0 +1,64 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.StringJoiner; + +/** + * @author icanci + * @since 1.0 Created in 2022/12/11 17:46 + */ +public class NoticeConfigDO extends BaseDO { + /** + * 通知配置名称 + */ + private String noticeConfigName; + /** + * 通知配置资源 + */ + private String noticeConfigResource; + /** + * 测试配置值,可选;因为可能通过配置值进行特殊处理 + */ + private String noticeTestValue; + /** + * 项目关联uuid,多个以,分割 + */ + private String appUuids; + + public String getNoticeConfigName() { + return noticeConfigName; + } + + public void setNoticeConfigName(String noticeConfigName) { + this.noticeConfigName = noticeConfigName; + } + + public String getNoticeConfigResource() { + return noticeConfigResource; + } + + public void setNoticeConfigResource(String noticeConfigResource) { + this.noticeConfigResource = noticeConfigResource; + } + + public String getNoticeTestValue() { + return noticeTestValue; + } + + public void setNoticeTestValue(String noticeTestValue) { + this.noticeTestValue = noticeTestValue; + } + + public String getAppUuids() { + return appUuids; + } + + public void setAppUuids(String appUuids) { + this.appUuids = appUuids; + } + + @Override + public String toString() { + return new StringJoiner(",").add("noticeConfigName=" + noticeConfigName).add("noticeConfigResource=" + noticeConfigResource).add("noticeTestValue=" + noticeTestValue) + .add("appUuids=" + appUuids).toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/RegisterDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/RegisterDO.java new file mode 100644 index 0000000000000000000000000000000000000000..7d74ee23f1765ff7bbfb34194b4821758d0c0ed1 --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/RegisterDO.java @@ -0,0 +1,81 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.Date; +import java.util.StringJoiner; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/22 21:35 + */ +public class RegisterDO extends BaseDO { + /** + * SDK 服务ip地址 + */ + private String clientAddress; + /** + * SDK 服务端口地址 + */ + private Integer clientPort; + /** + * SDK 服务服务唯一标识 + */ + private String appUniqueId; + /** + * 服务注册时间 + */ + private Date registerTime; + /** + * 上次注册更新时间 + */ + private Date lastUpdateTime; + + public String getClientAddress() { + return clientAddress; + } + + public void setClientAddress(String clientAddress) { + this.clientAddress = clientAddress; + } + + public int getClientPort() { + return clientPort; + } + + public void setClientPort(int clientPort) { + this.clientPort = clientPort; + } + + public void setClientPort(Integer clientPort) { + this.clientPort = clientPort; + } + + public String getAppUniqueId() { + return appUniqueId; + } + + public void setAppUniqueId(String appUniqueId) { + this.appUniqueId = appUniqueId; + } + + public Date getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(Date registerTime) { + this.registerTime = registerTime; + } + + public Date getLastUpdateTime() { + return lastUpdateTime; + } + + public void setLastUpdateTime(Date lastUpdateTime) { + this.lastUpdateTime = lastUpdateTime; + } + + @Override + public String toString() { + return new StringJoiner(",").add("clientAddress=" + clientAddress).add("clientPort=" + clientPort).add("appUniqueId=" + appUniqueId).add("registerTime=" + registerTime) + .add("lastUpdateTime=" + lastUpdateTime).toString(); + } +} diff --git a/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/TeamDO.java b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/TeamDO.java new file mode 100644 index 0000000000000000000000000000000000000000..0ecc889fbe98ee2850eca8e71977ef20d7e6a8dd --- /dev/null +++ b/admin/admin-dal/src/main/java/cn/icanci/ddk/admin/dal/model/TeamDO.java @@ -0,0 +1,53 @@ +package cn.icanci.ddk.admin.dal.model; + +import java.util.StringJoiner; + +/** + * 项目组 + * + * @author icanci + * @since 1.0 Created in 2022/12/11 17:40 + */ +public class TeamDO extends BaseDO { + /** + * 项目组id,唯一 + */ + private String teamId; + /** + * 项目组名字 + */ + private String teamName; + /** + * 事业群关联uuid + */ + private String groupUuid; + + public String getTeamId() { + return teamId; + } + + public void setTeamId(String teamId) { + this.teamId = teamId; + } + + public String getTeamName() { + return teamName; + } + + public void setTeamName(String teamName) { + this.teamName = teamName; + } + + public String getGroupUuid() { + return groupUuid; + } + + public void setGroupUuid(String groupUuid) { + this.groupUuid = groupUuid; + } + + @Override + public String toString() { + return new StringJoiner(",").add("teamId=" + teamId).add("teamName=" + teamName).add("groupUuid=" + groupUuid).toString(); + } +} diff --git a/client/pom.xml b/client/pom.xml index 67e94c1e10cdd6821d480254188576af79a5c8c6..6a97559530af54dda8ef4aa1d1aa9e1252d91f6b 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -16,4 +16,47 @@ 8 + + + cn.icanci.ddk + ddk-common + ${parent.version} + + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-autoconfigure + + + org.springframework.boot + spring-boot-configuration-processor + compile + true + + + org.apache.commons + commons-lang3 + + + org.apache.commons + commons-collections4 + + + com.google.guava + guava + + + io.netty + netty-all + + \ No newline at end of file