diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/LineServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/LineServiceImpl.java index cf902ea..40152ab 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/LineServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/LineServiceImpl.java @@ -18,6 +18,7 @@ import com.shxy.xymanager_common.vo.*; import com.shxy.xymanager_dao.dao.*; import com.shxy.xymanager_service.service.CacheService; import com.shxy.xymanager_service.service.LineService; +import com.shxy.xymanager_service.service.NewCacheService; import com.shxy.xymanager_service.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -57,6 +58,9 @@ public class LineServiceImpl implements LineService { @Autowired private CacheService cacheService; + @Autowired + private NewCacheService newCacheService; + @Autowired private UserService userService; @@ -184,41 +188,27 @@ public class LineServiceImpl implements LineService { */ @Override public ServiceBody getLineAndGt(LineAndGtAndChannelVo vo) { -// PermissionDetail permissionDetail = new PermissionDetail(); -// try { -// permissionDetail = userService.getPermissionList(); -// } catch (Exception e) { -// Asserts.fail("权限解析错误"); -// e.printStackTrace(); -// } -// -// List dypList = permissionDetail.getDypList(); -// List linepList = permissionDetail.getLinepList(); -// List towerpList = permissionDetail.getTowerpList(); -// List termpList = permissionDetail.getTermpList(); -// Integer aSuper = permissionDetail.getIsSuper(); -// Integer uid = permissionDetail.getUid(); -// -// View_Dy_Line_Tower_TerminalsExample example = new View_Dy_Line_Tower_TerminalsExample(); -// View_Dy_Line_Tower_TerminalsExample.Criteria criteria = example.createCriteria(); -// if (BeanUtil.isNotEmpty(dyid) && dyid.intValue() != -1) { -// criteria.andDyIdEqualTo(dyid); -// } -// if (BeanUtil.isNotEmpty(lineid) && lineid.intValue() != -1) { -// criteria.andLineIdEqualTo(lineid); -// } -// if (BeanUtil.isNotEmpty(tower) && tower.intValue() != -1) { -// criteria.andTowerIdEqualTo(tower); -// } -// -// List list = view_dy_line_tower_terminalsDao.selectByExample(example); -// if ((CollectionUtil.isNotEmpty(dypList) || CollectionUtil.isNotEmpty(linepList) || CollectionUtil.isNotEmpty(towerpList) || CollectionUtil.isNotEmpty(termpList)) || CommonStatus.EFFECTIVE.value().equals(aSuper)) { -// List list = dyLevelDao.selectTreeList(CommonStatus.EFFECTIVE.value(), dypList, linepList, towerpList, termpList, aSuper); -// } + PermissionDetail permissionDetail = new PermissionDetail(); + try { + permissionDetail = userService.getPermissionListFull(); + } catch (Exception e) { + Asserts.fail("权限解析错误"); + e.printStackTrace(); + } + + Integer aSuper = permissionDetail.getIsSuper(); + Integer type = vo.getType(); + if (BeanUtil.isEmpty(type)) { + Asserts.fail("请求参数出错"); + } + + List dypList = permissionDetail.getDypList(); + List linepList = permissionDetail.getLinepList(); + List towerpList = permissionDetail.getTowerpList(); + List termpList = permissionDetail.getTermpList(); LineAndGtAndChannelListModel model = new LineAndGtAndChannelListModel(); Integer id = vo.getId(); - Integer type = vo.getType(); if (id != null && id.intValue() == 0) { id = null; } @@ -226,18 +216,25 @@ public class LineServiceImpl implements LineService { //查询所有 if (type == 1) { DyLevelExample example = new DyLevelExample(); -// if (CommonStatus.DELETE.value().equals(aSuper)) { -// if (CollectionUtil.isNotEmpty(dypList)) { -// example.createCriteria().andIdIn(dypList); -// } else { -// -// } -// } + if (CommonStatus.DELETE.value().equals(aSuper)) { + if (CollectionUtil.isNotEmpty(dypList)) { + example.createCriteria().andIdIn(dypList); + } else { + return Asserts.success(model); + } + } List list = dyLevelDao.selectByExample(example); beans = BeanUtil.copyToList(list, LineAndGtAndChannelListModel.Bean.class); } else if (type == 2) { if (id != null) { LinesExample example = new LinesExample(); + if (CommonStatus.DELETE.value().equals(aSuper)) { + if (CollectionUtil.isNotEmpty(linepList)) { + example.createCriteria().andIdIn(linepList); + } else { + return Asserts.success(model); + } + } example.createCriteria().andDyLevelIdEqualTo(id); List list = linesDao.selectByExample(example); beans = BeanUtil.copyToList(list, LineAndGtAndChannelListModel.Bean.class); diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java index 1175b41..4feb3ca 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java @@ -71,6 +71,9 @@ public class TerminalPhotoServiceImpl implements TerminalPhotoService { @Autowired TerminalScheduleRuleService terminalScheduleRuleService; + @Autowired + NewCacheService newCacheService; + @Autowired RequestResultsDao requestResultsDao; diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UserServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UserServiceImpl.java index d392f3f..074dad8 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UserServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UserServiceImpl.java @@ -15,10 +15,7 @@ import com.shxy.xymanager_common.util.RsaUtils; import com.shxy.xymanager_common.util.StringUtils; import com.shxy.xymanager_common.util.TokenUtil; import com.shxy.xymanager_dao.dao.*; -import com.shxy.xymanager_service.service.PermissionService; -import com.shxy.xymanager_service.service.RolePermissionService; -import com.shxy.xymanager_service.service.SysUserService; -import com.shxy.xymanager_service.service.UserService; +import com.shxy.xymanager_service.service.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -37,13 +34,19 @@ public class UserServiceImpl implements UserService { @Resource PermissionService permissionService; + @Resource RolePermissionService rolePermissionService; @Autowired TerminalsDao terminalsDao; + @Autowired SysUserService sysUserService; + + @Autowired + NewCacheService newCacheService; + @Autowired TokenUtil tokenUtil; @@ -93,6 +96,28 @@ public class UserServiceImpl implements UserService { return permissionDetail; } + @Override + public PermissionDetail getPermissionListFull() throws Exception { + PermissionDetail permissionDetail = new PermissionDetail(); + SysUser sysUser = UserContextHolder.currentUserInfo(); + if (sysUser == null) { + Asserts.fail("未获取到当前用户信息"); + } + Integer uid = sysUser.getUid(); + if (uid == null) { + Asserts.fail("用户不存在"); + } + permissionDetail.setUid(uid); + Integer role = sysUser.getRole(); + if (role != SUPER_ADMIN) { + return newCacheService.getPermissionDetailFull(sysUser.getUid()); + } else { + permissionDetail.setIsSuper(CommonStatus.EFFECTIVE.value()); + } + return permissionDetail; + } + + @Override public List getPermssionTermIdList() { SysUser user = UserContextHolder.currentUserInfo(); diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UserService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UserService.java index 94e0a47..8917042 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UserService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UserService.java @@ -11,6 +11,8 @@ public interface UserService { PermissionDetail getPermissionList() throws Exception; + PermissionDetail getPermissionListFull() throws Exception; + List getPermssionTermIdList(); }