From e60569fce44e0ffcf13748e33ccac9b6af2fe9fe Mon Sep 17 00:00:00 2001 From: Burce Date: Wed, 6 Nov 2019 00:38:32 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=8B=9B=E5=95=86=E6=9D=83=E9=99=90]=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/sys/DataInitController.java | 5 +- .../controller/sys/SysMenuController.java | 76 ++++++++++++++++++- 2 files changed, 73 insertions(+), 8 deletions(-) diff --git a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/DataInitController.java b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/DataInitController.java index 172c04f4c..f09a779f3 100644 --- a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/DataInitController.java +++ b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/DataInitController.java @@ -10,7 +10,7 @@ import com.iformall.enums.EnumMsgModel; import com.iformall.enums.EnumScoreType; import com.iformall.enums.EnumUserType; import com.iformall.mapper.*; -import com.iformall.service.WxCreditHistoryService; +import com.iformall.service.*; import lombok.extern.slf4j.Slf4j; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -53,9 +53,6 @@ public class DataInitController extends BaseController { @Resource private WxMerchantBUserMapper merchantBUserMapper; - @Resource - private WxMerchantMapper wxMerchantMapper; - @PostMapping("/createMsgModel") public ResultData createMsgModel(@RequestParam String content, @RequestParam Integer code) { diff --git a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java index 63c136265..9c8a4780b 100644 --- a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java +++ b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java @@ -1,18 +1,17 @@ package com.iformall.controller.sys; +import com.alibaba.fastjson.JSON; import com.iformall.annotation.SystemControllerLog; import com.iformall.common.ErrorCode; import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; -import com.iformall.domain.po.MallPermission; -import com.iformall.domain.po.MallRole; -import com.iformall.domain.po.MallRolePermission; -import com.iformall.domain.po.MallUserInfo; +import com.iformall.domain.po.*; import com.iformall.enums.EnumPermissionType; import com.iformall.exception.MallinkException; import com.iformall.mapper.MallMenuMapper; import com.iformall.mapper.MallPermissionMapper; +import com.iformall.mapper.WxLogicPermissionMapper; import com.iformall.service.MallPermissionService; import com.iformall.service.MallRolePermissionService; import com.iformall.service.MallRoleService; @@ -63,6 +62,9 @@ public class SysMenuController extends BaseController { @Autowired private MallPermissionMapper mallPermissionMapper; + @Autowired + private WxLogicPermissionMapper permissionMapper; + @ApiOperation("导航菜单") @GetMapping("/nav") public ResultData nav(){ @@ -180,6 +182,9 @@ public class SysMenuController extends BaseController { for(MallPermission mp: mpList) { if (mallRolePermissionList.stream().anyMatch(mallRolePermission -> mp.getId().equals(mallRolePermission.getPermissionId()))) continue; + // TODO 过滤招商权限 + if(Objects.equals(mp.getParentId(),11L)) + continue; // 3.1 添加到mall_role_permission try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ @@ -592,5 +597,68 @@ public class SysMenuController extends BaseController { } } + /** + * 初始化超过招商权限 + * + * @return + */ + @GetMapping("/addInvestPerm") + public ResultData addInvestPerm() { + try { + MallUserInfo userInfo = getUser(); + if (userInfo.isFmSuperAdmin()) { + doAddInvestPerm(); + return new ResultData(); + } + } catch (Exception e) { + logger.error("DataInitController::fixCredit error ", e); + return new ResultData(ErrorCode.MSG_METHOD_REQUEST_ERROR, e.getMessage()); + } + + return new ResultData(); + } + + private void doAddInvestPerm() { + WxLogicPermission logicPermissions = permissionMapper.selectById(1L); + List investAdminList = JSON.parseArray(logicPermissions.getPermission(), Long.class); + // 1. 获取已有管理员 + MallRole mrQ = new MallRole(); + mrQ.setName("系统管理员"); + mrQ.setAvailable("0"); + List mallRoleList = mallRoleService.getList(mrQ); + // 2. 获取全部permission + MallPermission mpQ = new MallPermission(); + mpQ.setAvailable("Y"); + List mpList = mallPermissionService.getList(mpQ); + for (MallRole mallRole : mallRoleList) { + MallRolePermission qRP = new MallRolePermission(); + qRP.setRoleId(mallRole.getId()); + List mallRolePermissionList = mallRolePermissionService.getList(qRP); + //if (mpList.size() != mallRolePermissionList.size()) { + // 3. permission不一致, 添加到mall_role_permission + for (MallPermission mp : mpList) { + if (mallRolePermissionList.stream().anyMatch(mallRolePermission -> mp.getId().equals(mallRolePermission.getPermissionId()))) + continue; + //过滤非招商权限 + if (!investAdminList.contains(mp.getId())) { + continue; + } + // 3.1 添加到mall_role_permission + try { + MallRolePermission perm = new MallRolePermission() {{ + updateTenantInfo(mallRole); + setPermissionId(mp.getId()); + setRoleId(mallRole.getId()); + }}; + mallRolePermissionService.saveOrUpdate(perm); + logger.info("add perm {}", JSON.toJSONString(perm)); + } catch (Exception e) { + logger.error(e.getMessage()); + } + } + //} + } + } + }