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
*/