From d00d02d2289ed7bcc829f8b243c4efbc7137308e Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Tue, 4 Dec 2018 15:44:28 +0800 Subject: [PATCH] =?UTF-8?q?[=E7=A7=BB=E5=8A=A8=E7=AB=AF=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=A1=94=E5=8F=B0=E6=9D=83=E9=99=90=E6=A3=80=E6=9F=A5][?= =?UTF-8?q?=E6=96=B0=E5=A2=9E]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/controller/HomeController.java | 25 +++++++++++++++++-- .../iformall/controller/WxInfoController.java | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/HomeController.java b/mallinkAdmin/src/main/java/com/iformall/controller/HomeController.java index 66503982c..c388e715b 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/HomeController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/HomeController.java @@ -134,6 +134,27 @@ public class HomeController extends BaseController { return data; } + private boolean isInMobileAdmin(MallUserInfo user) { + // 检查用户是否有 移动端数据塔台 权限 + boolean isInMobile = false; + MallUserRole ur = new MallUserRole(); + ur.setUid(user.getId()); + PageInfo page = mallUserRoleService.listAsPage(ur, 1, 1); + if (page.getSize() > 0) { + Long roleId = page.getList().get(0).getRoleId(); + MallRolePermission p = new MallRolePermission(); + p.setRoleId(roleId); + p.setTenantId(user.getTenantId()); + PageInfo listAsPage = mallRolePermissionService.listAsPage(p, 1, 100); + for (MallRolePermission rp : listAsPage.getList()) { + if (rp.getPermissionId().equals(8L)) { /// 移动端数据塔台 + isInMobile = true; + } + } + } + return isInMobile; + } + @ApiOperation("B端登录") @PostMapping("/bHidLogin") public ResultData bLogin(@RequestBody MallUserInfo user) { @@ -142,13 +163,13 @@ public class HomeController extends BaseController { if(StringUtils.isNotBlank(user.getPhone())) { // 领导登录 user = mallUserInfoService.getByPhone(user.getPhone()); - if(!user.getIsAdmin().equals(EnumUserAdmin.ADMIN.getCode())) { + if(!isInMobileAdmin(user)) { return new ResultData(ErrorCode.USER_NOT_ADMIN); } } else if(StringUtils.isNotBlank(user.getOpenId())) { // 领导登录 user = mallUserInfoService.getByOpenId(user.getOpenId()); - if(!user.getIsAdmin().equals(EnumUserAdmin.ADMIN.getCode())) { + if(!isInMobileAdmin(user)) { return new ResultData(ErrorCode.USER_NOT_ADMIN); } } else { diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java index c621dffe9..62a17f1b0 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java @@ -119,7 +119,7 @@ public class WxInfoController extends BaseController { p.setTenantId(user.getTenantId()); PageInfo listAsPage = mallRolePermissionService.listAsPage(p, 1, 100); for (MallRolePermission rp : listAsPage.getList()) { - if (rp.getPermissionId().equals(8)) { /// 移动端数据塔台 + if (rp.getPermissionId().equals(8L)) { /// 移动端数据塔台 isInMobile = true; } }