|
|
|
@@ -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<Long> investAdminList = JSON.parseArray(logicPermissions.getPermission(), Long.class); |
|
|
|
// 1. 获取已有管理员 |
|
|
|
MallRole mrQ = new MallRole(); |
|
|
|
mrQ.setName("系统管理员"); |
|
|
|
mrQ.setAvailable("0"); |
|
|
|
List<MallRole> mallRoleList = mallRoleService.getList(mrQ); |
|
|
|
// 2. 获取全部permission |
|
|
|
MallPermission mpQ = new MallPermission(); |
|
|
|
mpQ.setAvailable("Y"); |
|
|
|
List<MallPermission> mpList = mallPermissionService.getList(mpQ); |
|
|
|
for (MallRole mallRole : mallRoleList) { |
|
|
|
MallRolePermission qRP = new MallRolePermission(); |
|
|
|
qRP.setRoleId(mallRole.getId()); |
|
|
|
List<MallRolePermission> 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()); |
|
|
|
} |
|
|
|
} |
|
|
|
//} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |