diff --git a/pom.xml b/pom.xml
index cb84441d6..312f06daa 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,6 +19,9 @@
yudao-module-pay
yudao-module-report
yudao-module-mp
+ yudao-module-market
+ yudao-module-market/yudao-module-market-api
+ yudao-module-market/yudao-module-market-biz
${project.artifactId}
diff --git a/yudao-dependencies/pom.xml b/yudao-dependencies/pom.xml
index 17e1cb508..74f52736f 100644
--- a/yudao-dependencies/pom.xml
+++ b/yudao-dependencies/pom.xml
@@ -31,6 +31,7 @@
3.6.1
1.4.5
3.18.0
+ 0.3.2
8.1.2.141
@@ -287,6 +288,24 @@
${revision}
+
+ cn.iocoder.cloud
+ yudao-spring-boot-starter-clickhouse
+ ${revision}
+
+
+
+ org.redisson
+ redisson-spring-boot-starter
+ ${redisson.version}
+
+
+
+ ru.yandex.clickhouse
+ clickhouse-jdbc
+ ${clickhouse.version}
+
+
org.redisson
redisson-spring-boot-starter
diff --git a/yudao-framework/pom.xml b/yudao-framework/pom.xml
index c2e7d6123..594948931 100644
--- a/yudao-framework/pom.xml
+++ b/yudao-framework/pom.xml
@@ -15,6 +15,7 @@
yudao-spring-boot-starter-banner
yudao-spring-boot-starter-mybatis
yudao-spring-boot-starter-redis
+ yudao-spring-boot-starter-clickhouse
yudao-spring-boot-starter-web
yudao-spring-boot-starter-security
@@ -26,6 +27,7 @@
yudao-spring-boot-starter-mq
yudao-spring-boot-starter-rpc
+
yudao-spring-boot-starter-excel
yudao-spring-boot-starter-test
@@ -44,6 +46,7 @@
yudao-spring-boot-starter-flowable
yudao-spring-boot-starter-captcha
yudao-spring-boot-starter-desensitize
+ yudao-spring-boot-starter-clickhouse
yudao-framework
diff --git a/yudao-framework/yudao-spring-boot-starter-clickhouse/pom.xml b/yudao-framework/yudao-spring-boot-starter-clickhouse/pom.xml
new file mode 100644
index 000000000..251c5de62
--- /dev/null
+++ b/yudao-framework/yudao-spring-boot-starter-clickhouse/pom.xml
@@ -0,0 +1,38 @@
+
+
+ 4.0.0
+
+ cn.iocoder.cloud
+ yudao-framework
+ ${revision}
+
+
+ yudao-spring-boot-starter-clickhouse
+ ${project.artifactId}
+ 验证码拓展
+ 1. springBoot集成clickhouse数据源
+
+ jar
+
+
+
+ cn.iocoder.cloud
+ yudao-common
+
+
+
+ ru.yandex.clickhouse
+ clickhouse-jdbc
+
+
+ org.springframework.boot
+ spring-boot-autoconfigure
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
+
\ No newline at end of file
diff --git a/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/ClickHouseSqlInjector.java b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/ClickHouseSqlInjector.java
new file mode 100644
index 000000000..60461ecc8
--- /dev/null
+++ b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/ClickHouseSqlInjector.java
@@ -0,0 +1,35 @@
+package cn.iocoder.yudao.framework.clickhouse.injector;
+
+import cn.iocoder.yudao.framework.clickhouse.injector.enums.SqlMethodDiv;
+import cn.iocoder.yudao.framework.clickhouse.injector.methods.DeleteClickHouse;
+import cn.iocoder.yudao.framework.clickhouse.injector.methods.UpdateByIdClickHouse;
+import cn.iocoder.yudao.framework.clickhouse.injector.methods.UpdateClickHouse;
+import com.baomidou.mybatisplus.core.injector.AbstractMethod;
+import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
+import com.baomidou.mybatisplus.core.metadata.TableInfo;
+
+
+import java.util.List;
+
+/**
+ * 注册方法
+ *
+ * @author coder
+ */
+public class ClickHouseSqlInjector extends DefaultSqlInjector {
+
+ @Override
+ public List getMethodList(Class> mapperClass, TableInfo tableInfo) {
+ /**
+ * 这里很重要,先要通过父类方法,获取到原有的集合,不然会自带的通用方法会失效的
+ */
+ List methodList = super.getMethodList(mapperClass,tableInfo);
+ /***
+ * 添加自定义方法类
+ */
+ methodList.add(new UpdateByIdClickHouse(SqlMethodDiv.UPDATE_BY_ID.getMethod()));
+ methodList.add(new UpdateClickHouse(SqlMethodDiv.UPDATE.getMethod()));
+ methodList.add(new DeleteClickHouse(SqlMethodDiv.DELETE_BY_ID.getMethod()));
+ return methodList;
+ }
+}
diff --git a/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/CkProperties.java b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/CkProperties.java
new file mode 100644
index 000000000..57d088492
--- /dev/null
+++ b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/CkProperties.java
@@ -0,0 +1,35 @@
+package cn.iocoder.yudao.framework.clickhouse.injector.config;//package com.w3.framework.clickhouse.config;
+//
+//import lombok.Data;
+//import org.springframework.boot.context.properties.ConfigurationProperties;
+//
+///**
+// * jdbc基本配置参数
+// */
+//@ConfigurationProperties(prefix = "spring.datasource.click")
+//@Data
+//public class CkProperties {
+//
+// public String address;
+//
+// public String username;
+//
+// public String password;
+//
+// public String dbName;
+//
+// public int socketTimeout;
+//
+// private String driverClassName;
+//
+// private String url;
+//
+// private int initialSize;
+//
+// private int maxActive;
+//
+// private int minIdle;
+//
+// private int maxWait;
+//
+//}
diff --git a/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/ClickHouseConfig.java b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/ClickHouseConfig.java
new file mode 100644
index 000000000..7a5a219a9
--- /dev/null
+++ b/yudao-framework/yudao-spring-boot-starter-clickhouse/src/main/java/cn/iocoder/yudao/framework/clickhouse/injector/config/ClickHouseConfig.java
@@ -0,0 +1,57 @@
+package cn.iocoder.yudao.framework.clickhouse.injector.config;//package com.w3.framework.clickhouse.config;
+//
+//import lombok.Data;
+//import org.springframework.boot.autoconfigure.AutoConfiguration;
+//import org.springframework.boot.context.properties.EnableConfigurationProperties;
+//import org.springframework.context.annotation.Bean;
+//import ru.yandex.clickhouse.ClickHouseDataSource;
+//import ru.yandex.clickhouse.settings.ClickHouseProperties;
+//
+//
+///**
+// * @desc ClickHouse基本配置参数
+// * SQL方式执行
+// */
+//@AutoConfiguration
+//@EnableConfigurationProperties({CkProperties.class})
+//@Data
+//public class ClickHouseConfig {
+//
+//// private static ClickHouseDataSource clickHouseDataSource;
+//
+// @Bean
+// public ClickHouseDataSource clickHouseDataSource(CkProperties ckProperties) {
+// ClickHouseProperties properties = new ClickHouseProperties();
+// properties.setUser(ckProperties.username);
+// properties.setPassword(ckProperties.getPassword());
+// properties.setDatabase(ckProperties.dbName);
+// properties.setSocketTimeout(ckProperties.socketTimeout);
+//// clickHouseDataSource = new ClickHouseDataSource(clickhouseProperties.address, properties);
+//// return clickHouseDataSource;
+// return new ClickHouseDataSource(ckProperties.address, properties);
+// }
+//
+//// public static List