From 8fa79a6bed917714a819567a8cfb5bef2dd25e81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Wed, 30 Oct 2024 12:17:35 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E5=A4=9A=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E9=99=90=E5=88=B6=20sys=5Fcompany=5Fcontent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gxwebsoft/common/core/config/MybatisPlusConfig.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java index a45fd33..be98acb 100644 --- a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java +++ b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java @@ -101,7 +101,8 @@ public class MybatisPlusConfig { "cms_product", "cms_product_url", "cms_product_spec", - "cms_product_spec_value" + "cms_product_spec_value", + "sys_company_content" ).contains(tableName); } }; From 277026ed20b22152861465afd93d69e32b07487d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Thu, 31 Oct 2024 14:43:12 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=9C=BA=E6=99=AF?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=AA=8C=E8=AF=81=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=B7=B2=E6=B3=A8=E5=86=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gxwebsoft/common/system/controller/MainController.java | 7 +++++++ .../com/gxwebsoft/common/system/param/SmsCaptchaParam.java | 3 +++ 2 files changed, 10 insertions(+) diff --git a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java index bf4d5a6..03e6776 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java @@ -352,6 +352,13 @@ public class MainController extends BaseController { return fail("请输入有效的手机号码"); } + if (param.getScene() != null && param.getScene().equals("login")){ + final User byPhone = userService.getByPhone(param.getPhone()); + if (ObjectUtil.isEmpty(byPhone)) { + return fail("该手机号码未注册!"); + } + } + // 读取租户的短信配置 if (getTenantId() != null) { diff --git a/src/main/java/com/gxwebsoft/common/system/param/SmsCaptchaParam.java b/src/main/java/com/gxwebsoft/common/system/param/SmsCaptchaParam.java index 98945e6..98c3865 100644 --- a/src/main/java/com/gxwebsoft/common/system/param/SmsCaptchaParam.java +++ b/src/main/java/com/gxwebsoft/common/system/param/SmsCaptchaParam.java @@ -31,4 +31,7 @@ public class SmsCaptchaParam implements Serializable { @ApiModelProperty("租户ID") private String tenantId; + @ApiModelProperty("场景") + private String scene; + } From 80b0ff32ae558aaa5b92895757c5b2a3f124c290 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Fri, 1 Nov 2024 05:09:04 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=B2=E7=9F=A5?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/config/MybatisPlusConfig.java | 1 + .../gxwebsoft/common/core/web/BaseController.java | 14 +++++++------- .../common/system/controller/MainController.java | 7 ++++++- .../gxwebsoft/common/system/entity/Company.java | 8 ++++++++ 4 files changed, 22 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java index be98acb..1c9ddaa 100644 --- a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java +++ b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java @@ -53,6 +53,7 @@ public class MybatisPlusConfig { // 从请求头拿ID final String tenantId = request.getHeader("tenantId"); if(tenantId != null){ + System.out.println("从请求头拿ID = " + tenantId); return new LongValue(tenantId); } return getLoginUserTenantId(); diff --git a/src/main/java/com/gxwebsoft/common/core/web/BaseController.java b/src/main/java/com/gxwebsoft/common/core/web/BaseController.java index a2af9d0..cccc5d1 100644 --- a/src/main/java/com/gxwebsoft/common/core/web/BaseController.java +++ b/src/main/java/com/gxwebsoft/common/core/web/BaseController.java @@ -73,12 +73,7 @@ public class BaseController { * @return tenantId */ public Integer getTenantId() { - // 1 从登录用户拿tenantId - User loginUser = getLoginUser(); - if (loginUser != null) { - return loginUser.getTenantId(); - } - // 2 从域名拿ID + // 1 从域名拿ID String Domain = request.getHeader("Domain"); if (StrUtil.isNotBlank(Domain)) { String key = "Domain:" + Domain; @@ -88,11 +83,16 @@ public class BaseController { return Integer.valueOf(tenantId); } } - // 3 从请求头拿ID + // 2 从请求头拿ID String tenantId = request.getHeader("tenantId"); if(StrUtil.isNotBlank(tenantId)){ return Integer.valueOf(tenantId); } + // 1 从登录用户拿tenantId + User loginUser = getLoginUser(); + if (loginUser != null) { + return loginUser.getTenantId(); + } return null; } diff --git a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java index 03e6776..09a3daa 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java @@ -85,6 +85,8 @@ public class MainController extends BaseController { @Resource private CompanyMapper companyMapper; @Resource + private UserRoleService userRoleService; + @Resource private CompanyService companyService; @@ -194,7 +196,7 @@ public class MainController extends BaseController { String key = "TenantInfo:" + tenantId; final String tenantInfo = redisUtil.get(key); if(StrUtil.isNotBlank(tenantInfo)){ - return success(JSONObject.parseObject(tenantInfo,Company.class)); +// return success(JSONObject.parseObject(tenantInfo,Company.class)); } final Company company = companyMapper.getByTenantId(tenantId); // 是否过期 @@ -210,6 +212,9 @@ public class MainController extends BaseController { config.put("LICENSE_CODE", "dk9mcwJyetRWQlxWRiojIzJCLi8mcQ5Wa4ojI0NWZqJWd6ICZpJCL0kjNwl1NnhENahnIvl2cyVmdiwiIiATMuEjI6IibQf0NW=="); config.put("MAP_KEY", "8191620da39a742c6f18f010c084c772"); company.setConfig(config); + //应用菜单 + company.setRoles(userRoleService.listByUserId(company.getUserId())); + company.setAuthorities(roleMenuService.listMenuByUserId(company.getUserId(), null)); redisUtil.set(key,company,1L, TimeUnit.DAYS); return success(company); diff --git a/src/main/java/com/gxwebsoft/common/system/entity/Company.java b/src/main/java/com/gxwebsoft/common/system/entity/Company.java index df1bbd5..23fd9cb 100644 --- a/src/main/java/com/gxwebsoft/common/system/entity/Company.java +++ b/src/main/java/com/gxwebsoft/common/system/entity/Company.java @@ -313,6 +313,14 @@ public class Company implements Serializable { @TableField(exist = false) private Integer num; + @ApiModelProperty("角色列表") + @TableField(exist = false) + private List roles; + + @ApiModelProperty("权限列表") + @TableField(exist = false) + private List authorities; + public String getMobile() { return DesensitizedUtil.mobilePhone(this.phone); } From 761414cd84867d744610d568b4aea9d79638a400 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Fri, 1 Nov 2024 06:22:24 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=B2=E7=9F=A5?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/system/controller/DictionaryDataController.java | 1 - src/test/java/com/gxwebsoft/TestMain.java | 2 -- 2 files changed, 3 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/system/controller/DictionaryDataController.java b/src/main/java/com/gxwebsoft/common/system/controller/DictionaryDataController.java index 938a25e..57b48bb 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/DictionaryDataController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/DictionaryDataController.java @@ -33,7 +33,6 @@ public class DictionaryDataController extends BaseController { return success(dictionaryDataService.pageRel(param)); } - @PreAuthorize("hasAuthority('sys:dictionary:list')") @ApiOperation("查询全部字典数据") @GetMapping() public ApiResult> list(DictionaryDataParam param) { diff --git a/src/test/java/com/gxwebsoft/TestMain.java b/src/test/java/com/gxwebsoft/TestMain.java index 275adc3..c4b7670 100644 --- a/src/test/java/com/gxwebsoft/TestMain.java +++ b/src/test/java/com/gxwebsoft/TestMain.java @@ -5,8 +5,6 @@ import com.gxwebsoft.common.core.utils.DomainUtil; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; -import javax.annotation.Resource; - import static com.gxwebsoft.common.core.constants.DomainConstants.DOMAIN; /** From e623f8106c66e1c522290414d3086ee3bbf8c786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Sat, 2 Nov 2024 01:45:16 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=B2=E7=9F=A5?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gxwebsoft/common/core/config/MybatisPlusConfig.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java index 1c9ddaa..f19fe71 100644 --- a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java +++ b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java @@ -78,9 +78,9 @@ public class MybatisPlusConfig { // "sys_company", "sys_domain", "sys_white_domain", - "cms_website", +// "cms_website", "cms_domain", - "cms_website_field", +// "cms_website_field", "cms_navigation", "cms_design", "cms_design_record", From f49ec201f7153f3b2157c84c4c75883ba801f878 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Mon, 4 Nov 2024 13:20:08 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8E=B7=E5=8F=96tenantI?= =?UTF-8?q?D=E7=9A=84=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/config/MybatisPlusConfig.java | 15 ++++++++------- .../java/com/gxwebsoft/oa/entity/OaAssets.java | 1 + 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java index f19fe71..2e662a3 100644 --- a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java +++ b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java @@ -40,22 +40,23 @@ public class MybatisPlusConfig { @Override public Expression getTenantId() { + String tenantId; + // 从请求头拿ID + tenantId = request.getHeader("tenantId"); + if(tenantId != null){ + System.out.println("从请求头拿ID = " + tenantId); + return new LongValue(tenantId); + } // 从域名拿ID String Domain = request.getHeader("Domain"); if (StrUtil.isNotBlank(Domain)) { String key = "Domain:" + Domain; - String tenantId = redisUtil.get(key); + tenantId = redisUtil.get(key); if(tenantId != null){ System.out.println("授权域名" + Domain + " => " + tenantId); return new LongValue(tenantId); } } - // 从请求头拿ID - final String tenantId = request.getHeader("tenantId"); - if(tenantId != null){ - System.out.println("从请求头拿ID = " + tenantId); - return new LongValue(tenantId); - } return getLoginUserTenantId(); } diff --git a/src/main/java/com/gxwebsoft/oa/entity/OaAssets.java b/src/main/java/com/gxwebsoft/oa/entity/OaAssets.java index e45583f..36234f3 100644 --- a/src/main/java/com/gxwebsoft/oa/entity/OaAssets.java +++ b/src/main/java/com/gxwebsoft/oa/entity/OaAssets.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableLogic; import java.io.Serializable; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data;