|
@@ -8,6 +8,7 @@ import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.io.FileUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
+import cn.hutool.http.HttpStatus;
|
|
|
import cn.hutool.json.JSONArray;
|
|
|
import cn.hutool.json.JSONObject;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
@@ -52,6 +53,7 @@ import com.ruoyi.zhdd.feign.FeignNoticeInfoService;
|
|
|
import com.ruoyi.zhdd.service.IIncidentProcessService;
|
|
|
import com.ruoyi.zhdd.service.IIncidentService;
|
|
|
import com.ruoyi.zhdd.service.IIncidentTaskService;
|
|
|
+import com.ruoyi.zhdd.service.IIncidentUserService;
|
|
|
import com.ruoyi.zhdd.service.IPlanFileService;
|
|
|
import com.ruoyi.zhdd.service.IPlanService;
|
|
|
import com.ruoyi.zhdd.service.IPlanTaskService;
|
|
@@ -73,12 +75,7 @@ import javax.validation.constraints.NotNull;
|
|
|
import java.io.File;
|
|
|
import java.io.FileOutputStream;
|
|
|
import java.io.OutputStream;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -106,6 +103,7 @@ public class IncidentController extends BaseController {
|
|
|
private final IResourceDetailService resourceDetailService;
|
|
|
private final ISysUserService sysUserService;
|
|
|
private final ISysDeptService sysDeptService;
|
|
|
+ private final IIncidentUserService incidentUserService;
|
|
|
|
|
|
@Value("${spring.profiles.active}")
|
|
|
private String env;
|
|
@@ -124,6 +122,25 @@ public class IncidentController extends BaseController {
|
|
|
if (StrUtil.isNotBlank(bo.getStatuss())) {
|
|
|
bo.setStatuss(bo.getStatuss().replace("-", ""));
|
|
|
}
|
|
|
+ // 根据当前用户的角色及部门筛选可以查询到的事件
|
|
|
+ LoginUser cacheLoginUser = UserUtil.getCacheLoginUser();
|
|
|
+ // 查询角色如果包含admin的,直接查询全部
|
|
|
+ Set<String> userRole = cacheLoginUser.getUserRole();
|
|
|
+ boolean admin = CollUtil.containsAny(userRole, CollUtil.newHashSet("admin"));
|
|
|
+ if (!admin) {
|
|
|
+ // 查询当前用户和哪些事件相关
|
|
|
+ List<Object> objects = incidentUserService.listObjs(Wrappers.<IncidentUser>lambdaQuery().select(IncidentUser::getIncidentId).eq(IncidentUser::getUserId, cacheLoginUser.getUserId()));
|
|
|
+ if (objects.size() == 0) {
|
|
|
+ TableDataInfo<IncidentVo> rspData = new TableDataInfo<>();
|
|
|
+ rspData.setCode(HttpStatus.HTTP_OK);
|
|
|
+ rspData.setMsg("查询成功");
|
|
|
+ rspData.setRows(Collections.emptyList());
|
|
|
+ rspData.setTotal(0);
|
|
|
+ return rspData;
|
|
|
+ }
|
|
|
+ HashSet<Object> incidentIdSet = CollUtil.newHashSet(objects);
|
|
|
+ bo.setIds(incidentIdSet);
|
|
|
+ }
|
|
|
return iIncidentService.queryPageList(bo);
|
|
|
}
|
|
|
|
|
@@ -518,8 +535,10 @@ public class IncidentController extends BaseController {
|
|
|
}
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
- String a = FileUtil.getAbsolutePath("/profile/upload/2022/03/11/9a583b1a3844d664b06f53a92f8bf9b_8856.jpg");
|
|
|
- System.out.println(a);
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
+ set.add("common");
|
|
|
+ set.add("read");
|
|
|
+ System.out.println(CollUtil.containsAny(set, CollUtil.newHashSet("admin", "update")));
|
|
|
}
|
|
|
|
|
|
}
|