增加电商带吗
This commit is contained in:
+42
-2
@@ -1,22 +1,39 @@
|
||||
package cn.iocoder.yudao.framework.mybatis.config;
|
||||
|
||||
import cn.iocoder.yudao.framework.mybatis.core.handler.DefaultDBFieldHandler;
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.baomidou.dynamic.datasource.provider.DynamicDataSourceProvider;
|
||||
import com.baomidou.mybatisplus.core.config.GlobalConfig;
|
||||
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.session.SqlSession;
|
||||
import org.apache.ibatis.session.SqlSessionFactory;
|
||||
import org.apache.ibatis.session.defaults.DefaultSqlSessionFactory;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.mybatis.spring.annotation.MapperScans;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* MyBaits 配置类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
|
||||
@MapperScans({
|
||||
@MapperScan(basePackages ={"co.yixiang.**.service.mapper", "co.yixiang.config"},sqlSessionFactoryRef = "shangcheng"),
|
||||
@MapperScan(value = "${yudao.info.base-package}", annotationClass = Mapper.class,
|
||||
lazyInitialization = "${mybatis.lazy-initialization:false}") // Mapper 懒加载,目前仅用于单元测试
|
||||
})
|
||||
@Configuration
|
||||
@MapperScan(value = "${yudao.info.base-package}", annotationClass = Mapper.class,
|
||||
lazyInitialization = "${mybatis.lazy-initialization:false}") // Mapper 懒加载,目前仅用于单元测试
|
||||
public class YudaoMybatisAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
@@ -31,4 +48,27 @@ public class YudaoMybatisAutoConfiguration {
|
||||
return new DefaultDBFieldHandler(); // 自动填充参数类
|
||||
}
|
||||
|
||||
@Bean
|
||||
@Primary
|
||||
public SqlSessionFactory sqlSessionFactoryMaster(DynamicDataSourceProvider dynamicDataSourceProvider) throws Exception {
|
||||
//手动处理下原来的sqlsessionfactory
|
||||
MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
|
||||
Map<String, DataSource> map = dynamicDataSourceProvider.loadDataSources();
|
||||
factory.setDataSource(map.get("master"));
|
||||
GlobalConfig globalConfig = new GlobalConfig();
|
||||
globalConfig.setMetaObjectHandler(defaultMetaObjectHandler());
|
||||
factory.setPlugins(mybatisPlusInterceptor());
|
||||
factory.setGlobalConfig(globalConfig);
|
||||
return factory.getObject();
|
||||
}
|
||||
|
||||
@Bean("shangcheng")
|
||||
public SqlSessionFactory sqlSessionFactory(DynamicDataSourceProvider dynamicDataSourceProvider) throws Exception {
|
||||
MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
|
||||
Map<String, DataSource> map = dynamicDataSourceProvider.loadDataSources();
|
||||
factory.setDataSource(map.get("xiaohui"));
|
||||
return factory.getObject();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+40
@@ -5,6 +5,7 @@ import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils;
|
||||
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
||||
import org.apache.ibatis.reflection.MetaObject;
|
||||
|
||||
import java.sql.Timestamp;
|
||||
import java.util.Date;
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -41,6 +42,30 @@ public class DefaultDBFieldHandler implements MetaObjectHandler {
|
||||
if (Objects.nonNull(userId) && Objects.isNull(baseDO.getUpdater())) {
|
||||
baseDO.setUpdater(userId.toString());
|
||||
}
|
||||
|
||||
Timestamp time=new Timestamp(System.currentTimeMillis());
|
||||
if (metaObject.hasSetter("createTime")) {
|
||||
this.setFieldValByName("createTime", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("updateTime")) {
|
||||
this.setFieldValByName("updateTime", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("createDate")) {
|
||||
this.setFieldValByName("createDate", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("updateDate")) {
|
||||
this.setFieldValByName("updateDate", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("delFlag")) {
|
||||
this.setFieldValByName("delFlag", false, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("isDel")) {
|
||||
this.setFieldValByName("isDel", 0, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("addTime")) {
|
||||
String timestamp = String.valueOf(System.currentTimeMillis() / 1000);
|
||||
this.setFieldValByName("addTime", Integer.valueOf(timestamp), metaObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,5 +83,20 @@ public class DefaultDBFieldHandler implements MetaObjectHandler {
|
||||
if (Objects.nonNull(userId) && Objects.isNull(modifier)) {
|
||||
setFieldValByName("updater", userId.toString(), metaObject);
|
||||
}
|
||||
|
||||
|
||||
Timestamp time=new Timestamp(System.currentTimeMillis());
|
||||
if (metaObject.hasSetter("updateTime")) {
|
||||
this.setFieldValByName("updateTime", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("updateDate")) {
|
||||
this.setFieldValByName("updateDate", time, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("delFlag")) {
|
||||
this.setFieldValByName("delFlag", null, metaObject);
|
||||
}
|
||||
if (metaObject.hasSetter("createTime")) {
|
||||
this.setFieldValByName("createTime", null, metaObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user