From a43efe9a1de7be71451e84927d88054ff704ca82 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期三, 04 十二月 2024 09:45:24 +0800 Subject: [PATCH] 首页展示数据,根据当前角色进行筛选 --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/ReportServiceImpl.java | 22 ++++++++++++++++++++++ 1 files changed, 22 insertions(+), 0 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ReportServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ReportServiceImpl.java index d96f1e7..db0d87e 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ReportServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ReportServiceImpl.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.GetLook; @@ -30,6 +31,8 @@ private GetLook getLook; private ScheduleMapper scheduleMapper; private UserMapper userMapper; + private RoleMapper roleMapper; + private InsSampleUserMapper insSampleUserMapper; //姣忔棩涓氬姟缁熻 @Override @@ -208,6 +211,8 @@ //棣栭〉-->鏃ュ巻浠诲姟鍥� @Override public Map<String, Object> calendarWorkByWeek() { + Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); + String name = roleMapper.selectById(userMapper.selectById(userId).getRoleId()).getName(); Map<String, Object> map = new HashMap<>(); List<Integer> insState = new ArrayList<>(); insState.add(0); @@ -222,6 +227,23 @@ .eq(InsOrder::getState, 1) .in(InsOrder::getInsState, insState) .apply("DATE(create_time) = CURDATE() - INTERVAL " + j + " DAY")); + //濡傛灉褰撳墠鐧诲綍浜烘槸娴嬭瘯宸ョ▼甯堟垨鑰呮槸妫�娴嬬粍闀�,闇�瑕佽繃婊ゅ嚭妫�楠屼汉鏄粬浠殑璁㈠崟鎴栬�呮槸杩樻病妫�楠岀殑璁㈠崟 + if (name.equals("娴嬭瘯宸ョ▼甯�") || name.equals("妫�娴嬬粍闀�")){ + insOrders = insOrders.stream().filter(insOrder -> { + List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, insOrder.getId())); + List<Integer> sampleId = insSamples.stream().map(InsSample::getId).collect(Collectors.toList()); + List<InsSampleUser> insSampleUsers = insSampleUserMapper.selectList(Wrappers.<InsSampleUser>lambdaQuery() + .eq(InsSampleUser::getState, 0) //妫�楠屼汉 + .in(InsSampleUser::getInsSampleId, sampleId)); + return insSampleUsers.size() == 0 || insSampleUsers.stream().map(InsSampleUser::getUserId).collect(Collectors.toList()).contains(userId); + }).collect(Collectors.toList()); + } + //濡傛灉褰撳墠鐧诲綍浜烘槸閫佹牱鍛�,闇�杩囨护鍑哄崟瀛愮殑閫佹牱鍛樻槸褰撳墠浜虹殑璁㈠崟 + else if (name.equals("閫佹牱鍛�")){ + insOrders = insOrders.stream().filter(insOrder -> + ObjectUtils.isNotEmpty(insOrder.getIssueUser()) && insOrder.getIssueUser().equals(userId) + ).collect(Collectors.toList()); + } List<Map<String, Object>> works = insOrders.stream().map(insOrder -> { List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, insOrder.getId())); HashMap<String, Object> hashMap = new HashMap<>(); -- Gitblit v1.9.3