From 7efb7973efacdddbe249c7f99a18953f36344c5b Mon Sep 17 00:00:00 2001 From: yang <2119157836@qq.com> Date: Wed, 15 Jan 2025 18:49:40 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=A4=9A=E7=A7=9F=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mcwl-admin/pom.xml | 6 ++ .../communityCenter/CommunityController.java | 26 ++++++++ .../communityCenter/PublishController.java | 28 +++++++++ .../communityCenter/domain/Community.java | 42 +++++++++++++ .../mcwl/communityCenter/domain/Publish.java | 44 ++++++++++++++ .../mcwl/communityCenter/domain/Question.java | 59 +++++++++++++++++++ .../communityCenter/domain/UserCommunity.java | 32 ++++++++++ .../handler/CustomTenantHandler.java | 55 +++++++++++++++++ .../mapper/CommunityMapper.java | 9 +++ .../communityCenter/mapper/PublishMapper.java | 9 +++ .../mapper/QuestionMapper.java | 10 ++++ .../mapper/UserCommunityMapper.java | 10 ++++ .../service/CommunityCenterService.java | 7 +++ .../service/PublishService.java | 8 +++ .../service/QuestionService.java | 8 +++ .../service/UserCommunityService.java | 8 +++ .../impl/CommunityCenterServiceImpl.java | 11 ++++ .../service/impl/PublishServiceImpl.java | 11 ++++ .../service/impl/QuestionServiceImpl.java | 14 +++++ .../impl/UserCommunityServiceImpl.java | 14 +++++ mcwl-framework/pom.xml | 6 ++ .../framework/config/MybatisPlusConfig.java | 21 +++++++ 22 files changed, 438 insertions(+) create mode 100644 mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityController.java create mode 100644 mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/PublishController.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Community.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Publish.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Question.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/UserCommunity.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/handler/CustomTenantHandler.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityMapper.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/PublishMapper.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/QuestionMapper.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/UserCommunityMapper.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityCenterService.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/PublishService.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/QuestionService.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/UserCommunityService.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityCenterServiceImpl.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/QuestionServiceImpl.java create mode 100644 mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/UserCommunityServiceImpl.java diff --git a/mcwl-admin/pom.xml b/mcwl-admin/pom.xml index 2ed9bfd..a98088b 100644 --- a/mcwl-admin/pom.xml +++ b/mcwl-admin/pom.xml @@ -89,6 +89,12 @@ mcwl-myInvitation 3.8.8 + + + com.mcwl + mcwl-communityCenter + 3.8.8 + com.mcwl diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityController.java new file mode 100644 index 0000000..fd6861e --- /dev/null +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/CommunityController.java @@ -0,0 +1,26 @@ +package com.mcwl.web.controller.communityCenter; + + +import com.mcwl.communityCenter.domain.Community; +import com.mcwl.communityCenter.service.CommunityCenterService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("community") +@RequiredArgsConstructor +public class CommunityController { + + private final CommunityCenterService communityCenterService; + + + @GetMapping("list") + public List getCommunityList(){ + return communityCenterService.list(); + } + +} diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/PublishController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/PublishController.java new file mode 100644 index 0000000..fae508f --- /dev/null +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/communityCenter/PublishController.java @@ -0,0 +1,28 @@ +package com.mcwl.web.controller.communityCenter; + + +import com.mcwl.communityCenter.domain.Community; +import com.mcwl.communityCenter.domain.Publish; +import com.mcwl.communityCenter.service.CommunityCenterService; +import com.mcwl.communityCenter.service.PublishService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("publish") +@RequiredArgsConstructor +public class PublishController { + + private final PublishService publishService; + + + @GetMapping("list") + public List getCommunityList(){ + return publishService.list(); + } + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Community.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Community.java new file mode 100644 index 0000000..2f6af0b --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Community.java @@ -0,0 +1,42 @@ +package com.mcwl.communityCenter.domain; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.mcwl.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 社区信息 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("cc_community") +public class Community extends BaseEntity { + + @TableId + private Long id; + + /** + * 社区名称 + */ + private String communityName; + + /** + * 社区类型 + */ + private Integer type; + + /** + * 价格 + */ + private Double price; + + /** + * 有效期类型 + */ + private Integer validityType; + + + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Publish.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Publish.java new file mode 100644 index 0000000..b65ad98 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Publish.java @@ -0,0 +1,44 @@ +package com.mcwl.communityCenter.domain; + + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.mcwl.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + + +/** + * 发布 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("cc_publish") +public class Publish extends BaseEntity { + + @TableId + private Long id; + + /** + * 用户id - 租户id + */ + private Long tenantId; + + /** + * 内容 + */ + private String content; + + /** + * 发布时间 - 定时发布 + */ + private Date publishTime; + + /** + * 状态 + */ + private Integer status; + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Question.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Question.java new file mode 100644 index 0000000..e743f36 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/Question.java @@ -0,0 +1,59 @@ +package com.mcwl.communityCenter.domain; + + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.mcwl.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 提问 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("cc_question") +public class Question extends BaseEntity { + + @TableId + private Long id; + + + /** + * 用户id - 租户id + */ + private Long tenantId; + + /** + * 提问用户id + */ + private Long questionUserId; + + /** + * 提问内容 + */ + private String content; + + /** + * 回复内容 + */ + private String reply; + + /** + * 提问图片 + */ + private String questionUrl; + + /** + * 是否匿名 + */ + private Integer isAnonymous; + + /** + * 状态 + */ + private Integer status; + + + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/UserCommunity.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/UserCommunity.java new file mode 100644 index 0000000..b0e24eb --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/domain/UserCommunity.java @@ -0,0 +1,32 @@ +package com.mcwl.communityCenter.domain; + + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.mcwl.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +/** + * 用户和社区关联表 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("cc_user_community") +public class UserCommunity extends BaseEntity { + + @TableId + private Long id; + + /** + * 用户id - 多租户id + */ + private Long tenantId; + + /** + * 社区id + */ + private Long communityId; + +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/handler/CustomTenantHandler.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/handler/CustomTenantHandler.java new file mode 100644 index 0000000..2a3aa95 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/handler/CustomTenantHandler.java @@ -0,0 +1,55 @@ +package com.mcwl.communityCenter.handler; + +import com.baomidou.mybatisplus.extension.plugins.handler.TenantLineHandler; +import com.mcwl.common.utils.SecurityUtils; +import lombok.extern.slf4j.Slf4j; +import net.sf.jsqlparser.expression.Expression; +import net.sf.jsqlparser.expression.LongValue; +import org.springframework.stereotype.Component; + +import java.util.HashSet; +import java.util.Set; + +@Component +@Slf4j +public class CustomTenantHandler implements TenantLineHandler { + + private static final Set tables = new HashSet<>(); + + /** + * 按id隔离 + * 需要根据业务需要进行调整.需要多租户的表名 + */ + static { + tables.add("cc_publish"); + tables.add("cc_question"); + tables.add("cc_user_community"); + } + + + + @Override + public Expression getTenantId() { + // 假设有一个租户上下文,能够从中获取当前用户的租户 + Long tenantId; + try { + tenantId = SecurityUtils.getUserId(); + } catch (Exception e) { + return new LongValue(-1L); + } + // 返回租户ID的表达式,LongValue 是 JSQLParser 中表示 bigint 类型的 class + return new LongValue(tenantId); + } + + @Override + public String getTenantIdColumn() { + return "tenant_id"; + } + + @Override + public boolean ignoreTable(String tableName) { + // 根据需要返回是否忽略该表,true:表示忽略,false:需要解析并拼接多租户条件 + return !tables.contains(tableName); + } + +} \ No newline at end of file diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityMapper.java new file mode 100644 index 0000000..aa1670d --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/CommunityMapper.java @@ -0,0 +1,9 @@ +package com.mcwl.communityCenter.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mcwl.communityCenter.domain.Community; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface CommunityMapper extends BaseMapper { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/PublishMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/PublishMapper.java new file mode 100644 index 0000000..7da8fb6 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/PublishMapper.java @@ -0,0 +1,9 @@ +package com.mcwl.communityCenter.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mcwl.communityCenter.domain.Publish; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface PublishMapper extends BaseMapper { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/QuestionMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/QuestionMapper.java new file mode 100644 index 0000000..64467e0 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/QuestionMapper.java @@ -0,0 +1,10 @@ +package com.mcwl.communityCenter.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mcwl.communityCenter.domain.Community; +import com.mcwl.communityCenter.domain.Question; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface QuestionMapper extends BaseMapper { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/UserCommunityMapper.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/UserCommunityMapper.java new file mode 100644 index 0000000..f5801df --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/mapper/UserCommunityMapper.java @@ -0,0 +1,10 @@ +package com.mcwl.communityCenter.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mcwl.communityCenter.domain.Question; +import com.mcwl.communityCenter.domain.UserCommunity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface UserCommunityMapper extends BaseMapper { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityCenterService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityCenterService.java new file mode 100644 index 0000000..35a13ac --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/CommunityCenterService.java @@ -0,0 +1,7 @@ +package com.mcwl.communityCenter.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mcwl.communityCenter.domain.Community; + +public interface CommunityCenterService extends IService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/PublishService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/PublishService.java new file mode 100644 index 0000000..7b2cb58 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/PublishService.java @@ -0,0 +1,8 @@ +package com.mcwl.communityCenter.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mcwl.communityCenter.domain.Community; +import com.mcwl.communityCenter.domain.Publish; + +public interface PublishService extends IService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/QuestionService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/QuestionService.java new file mode 100644 index 0000000..cce3800 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/QuestionService.java @@ -0,0 +1,8 @@ +package com.mcwl.communityCenter.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mcwl.communityCenter.domain.Publish; +import com.mcwl.communityCenter.domain.Question; + +public interface QuestionService extends IService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/UserCommunityService.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/UserCommunityService.java new file mode 100644 index 0000000..f1392bd --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/UserCommunityService.java @@ -0,0 +1,8 @@ +package com.mcwl.communityCenter.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mcwl.communityCenter.domain.Question; +import com.mcwl.communityCenter.domain.UserCommunity; + +public interface UserCommunityService extends IService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityCenterServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityCenterServiceImpl.java new file mode 100644 index 0000000..b45a0f9 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/CommunityCenterServiceImpl.java @@ -0,0 +1,11 @@ +package com.mcwl.communityCenter.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mcwl.communityCenter.domain.Community; +import com.mcwl.communityCenter.mapper.CommunityMapper; +import com.mcwl.communityCenter.service.CommunityCenterService; +import org.springframework.stereotype.Service; + +@Service +public class CommunityCenterServiceImpl extends ServiceImpl implements CommunityCenterService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java new file mode 100644 index 0000000..536eaa2 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/PublishServiceImpl.java @@ -0,0 +1,11 @@ +package com.mcwl.communityCenter.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mcwl.communityCenter.domain.Publish; +import com.mcwl.communityCenter.mapper.PublishMapper; +import com.mcwl.communityCenter.service.PublishService; +import org.springframework.stereotype.Service; + +@Service +public class PublishServiceImpl extends ServiceImpl implements PublishService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/QuestionServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/QuestionServiceImpl.java new file mode 100644 index 0000000..352ebb5 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/QuestionServiceImpl.java @@ -0,0 +1,14 @@ +package com.mcwl.communityCenter.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mcwl.communityCenter.domain.Publish; +import com.mcwl.communityCenter.domain.Question; +import com.mcwl.communityCenter.mapper.PublishMapper; +import com.mcwl.communityCenter.mapper.QuestionMapper; +import com.mcwl.communityCenter.service.PublishService; +import com.mcwl.communityCenter.service.QuestionService; +import org.springframework.stereotype.Service; + +@Service +public class QuestionServiceImpl extends ServiceImpl implements QuestionService { +} diff --git a/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/UserCommunityServiceImpl.java b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/UserCommunityServiceImpl.java new file mode 100644 index 0000000..5327783 --- /dev/null +++ b/mcwl-communityCenter/src/main/java/com/mcwl/communityCenter/service/impl/UserCommunityServiceImpl.java @@ -0,0 +1,14 @@ +package com.mcwl.communityCenter.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mcwl.communityCenter.domain.Question; +import com.mcwl.communityCenter.domain.UserCommunity; +import com.mcwl.communityCenter.mapper.QuestionMapper; +import com.mcwl.communityCenter.mapper.UserCommunityMapper; +import com.mcwl.communityCenter.service.QuestionService; +import com.mcwl.communityCenter.service.UserCommunityService; +import org.springframework.stereotype.Service; + +@Service +public class UserCommunityServiceImpl extends ServiceImpl implements UserCommunityService { +} diff --git a/mcwl-framework/pom.xml b/mcwl-framework/pom.xml index 295fa24..1e27348 100644 --- a/mcwl-framework/pom.xml +++ b/mcwl-framework/pom.xml @@ -58,6 +58,12 @@ com.mcwl mcwl-system + + com.mcwl + mcwl-communityCenter + 3.8.8 + compile + diff --git a/mcwl-framework/src/main/java/com/mcwl/framework/config/MybatisPlusConfig.java b/mcwl-framework/src/main/java/com/mcwl/framework/config/MybatisPlusConfig.java index 3c7e5a9..e9e3ece 100644 --- a/mcwl-framework/src/main/java/com/mcwl/framework/config/MybatisPlusConfig.java +++ b/mcwl-framework/src/main/java/com/mcwl/framework/config/MybatisPlusConfig.java @@ -5,12 +5,16 @@ import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; +import com.mcwl.communityCenter.handler.CustomTenantHandler; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.transaction.annotation.EnableTransactionManagement; /** * MybatisPlus + * * @author DaiZibo * @date 2024/12/31 * @apiNote @@ -20,9 +24,15 @@ import org.springframework.transaction.annotation.EnableTransactionManagement; @EnableTransactionManagement(proxyTargetClass = true) @Configuration public class MybatisPlusConfig { + + @Autowired + private CustomTenantHandler customTenantHandler; + @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + // 多租户插件 + interceptor.addInnerInterceptor(tenantLineInnerInterceptor()); // 分页插件 interceptor.addInnerInterceptor(paginationInnerInterceptor()); // 乐观锁插件 @@ -32,6 +42,17 @@ public class MybatisPlusConfig { return interceptor; } + /** + * 多租户插件 https://baomidou.com/guide/interceptor-tenant-line.html + */ + public TenantLineInnerInterceptor tenantLineInnerInterceptor() { + + TenantLineInnerInterceptor tenantInterceptor = new TenantLineInnerInterceptor(); + tenantInterceptor.setTenantLineHandler(customTenantHandler); + + return tenantInterceptor; + } + /** * 分页插件,自动识别数据库类型 https://baomidou.com/guide/interceptor-pagination.html */