diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index ba090149..c86250ff 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -2,6 +2,8 @@ package com.ruoyi.web.controller.system; import java.util.List; import java.util.Set; + +import com.ruoyi.common.core.domain.entity.SysRole; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -65,6 +67,14 @@ public class SysLoginController // 权限集合 Set permissions = permissionService.getMenuPermission(user); AjaxResult ajax = AjaxResult.success(); + List list= user.getRoles(); + long roleId= list.get(0).getRoleId(); + for(SysRole role :list){ + if(role.getRoleId() getProjectIds(){ + String ids=getCookie("__ids__"); + List list=new ArrayList<>(); + if(StringUtils.isNotEmpty(ids)){ + String[] tmps= ids.split(","); + for(String s:tmps){ + if(s.length()>0){ + try{ + list.add(Long.parseLong(s)); + }catch (Exception e){ + + } + } + } + } + return list; + } + + protected HttpServletRequest getRequest(){ + ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + return servletRequestAttributes.getRequest(); + } + + protected String getCookie(String key){ + Cookie[] cookies =getRequest().getCookies(); + if(cookies!=null && cookies.length>0){ + for(Cookie cookie :cookies){ + if(cookie.getName().toLowerCase().equals(key.toLowerCase())){ + return cookie.getValue(); + } + } + } + return ""; + } + /** * 返回成功 */ diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java index 018d8825..704976d9 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java @@ -3,6 +3,7 @@ package com.ruoyi.common.core.domain; import java.io.Serializable; import java.util.Date; import java.util.HashMap; +import java.util.List; import java.util.Map; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -17,6 +18,18 @@ public class BaseEntity implements Serializable { private static final long serialVersionUID = 1L; + public List getPrjIds() { + return prjIds; + } + + public void setPrjIds(List prjIds) { + this.prjIds = prjIds; + } + + /** + * 保存项目ID列表,用于B类用户 b.监理单位、总包单位、分包单位用户不展示项目概况菜单,二级菜单只展示自已参与的项目 + */ + private List prjIds; /** 搜索值 */ @JsonIgnore private String searchValue; diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/SecurityUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/SecurityUtils.java index a6f3d538..465b327c 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/SecurityUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/SecurityUtils.java @@ -1,5 +1,6 @@ package com.ruoyi.common.utils; +import com.ruoyi.common.core.domain.entity.SysRole; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; @@ -7,6 +8,8 @@ import com.ruoyi.common.constant.HttpStatus; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.exception.ServiceException; +import java.util.List; + /** * 安全服务工具类 * @@ -21,7 +24,7 @@ public class SecurityUtils { try { - return getLoginUser().getUserId(); + return getLoginUser().getUserId(); } catch (Exception e) { @@ -29,6 +32,24 @@ public class SecurityUtils } } + public static long getRoleId(){ + try + { + List list= getLoginUser().getUser().getRoles(); + long roleId= list.get(0).getRoleId(); + for(SysRole role :list){ + if(role.getRoleId() getRootDept(Long deptId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java index 8870ac31..7f97bc0f 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java @@ -130,4 +130,6 @@ public interface ISysDeptService * @return 结果 */ public Long getZGSDeptId(Long deptId); + + public Long getRootDept(Long deptId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index 88c125dc..07bded4a 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -321,6 +321,18 @@ public class SysDeptServiceImpl implements ISysDeptService } } + @Override + public Long getRootDept(Long deptId) { + if(deptId==null || deptId<=0){ + return 0l; + } + List list=deptMapper.getRootDept(deptId); + if(list.size()>0){ + return list.get(0).getDeptId(); + } + return 0l; + } + /** * 递归列表 */ diff --git a/ruoyi-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml b/ruoyi-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml index 4d0a23b1..98350016 100644 --- a/ruoyi-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/flowable/FlowBusinessKeyMapper.xml @@ -114,33 +114,77 @@ LEFT JOIN (SELECT category,COUNT(1) cnt FROM vw_flow_all WHERE finishTime IS NOT NULL and businessDeptId=#{deployId} and businessKey=#{businessKey} - GROUP BY category) b ON a.dict_value=b.category + + and businessKey in + + #{item} + + + + GROUP BY category) b ON a.dict_value=b.category LEFT JOIN (SELECT category,COUNT(1) cnt FROM vw_flow_all WHERE finishTime IS NULL AND taskName!='提交申请' and businessDeptId=#{deployId} and businessKey=#{businessKey} - GROUP BY category) c ON a.dict_value=c.category + + and businessKey in + + #{item} + + + + GROUP BY category) c ON a.dict_value=c.category @@ -155,6 +199,12 @@ and businessDeptId=#{deptId} and businessKey=#{projectId} + + and businessKey in + + #{item} + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 19c453bf..4ed13149 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -200,4 +200,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where u.user_name = #{userName} + + \ No newline at end of file diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkFileController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkFileController.java index 7ee76317..b32bb9e2 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkFileController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkFileController.java @@ -2,6 +2,8 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.service.ISysDeptService; import com.yanzhu.jh.work.domain.WorkFile; import com.yanzhu.jh.work.service.IWorkFileService; import org.springframework.beans.factory.annotation.Autowired; @@ -19,6 +21,9 @@ public class BgWorkFileController extends BaseController { @Autowired IWorkFileService workFileService; + @Autowired + ISysDeptService sysDeptService; + /** * 根据文件归属查询文件 * @param fileBelong @@ -29,6 +34,11 @@ public class BgWorkFileController extends BaseController { WorkFile workFile = new WorkFile(); workFile.setFileBelong(fileBelong); workFile.setDeptId(deptId); + if(deptId==0){ + if(SecurityUtils.isUserB()){ + workFile.setDeptId(sysDeptService.getRootDept(getDeptId())); + } + } return getDataTable(workFileService.selectWorkFileListLimit20(workFile)); } diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkTrainController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkTrainController.java index ff1626f2..ca34df26 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkTrainController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/BgWorkTrainController.java @@ -3,6 +3,7 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.yanzhu.jh.work.domain.WorkTrain; import com.yanzhu.jh.work.service.IWorkTrainService; @@ -32,6 +33,10 @@ public class BgWorkTrainController extends BaseController { workTrain.setTrainType(trainType); if(deptId!=null && !"0".equals(deptId)){ workTrain.setNowDept(deptId); + }else{ + if (SecurityUtils.isUserB()) { + workTrain.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ workTrain.setProjectId(Convert.toLong(projectId)); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/DeptController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/DeptController.java index dc08b0f4..4b64fdf2 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/DeptController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/DeptController.java @@ -1,23 +1,59 @@ package com.yanzhu.jh.bigscreen.web.controller; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysDept; +import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.enums.SysRoleEnum; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.service.ISysDeptService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.CookieValue; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import javax.servlet.http.Cookie; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; import java.util.List; @RestController @RequestMapping("/bgscreen/dept") -public class DeptController { +public class DeptController extends BaseController { @Autowired private ISysDeptService deptService; + @Autowired + private ISysDeptService sysDeptService; @GetMapping("/list") public AjaxResult list(){ + long roleId=SecurityUtils.getRoleId(); + if(roleId<4){ + return getDeptTypeA(); + } + return getDeptTypeC(); + } + + /** + * c.子公司用户只能查看自己子公司相关的项目 + * @return + */ + private AjaxResult getDeptTypeC() { + Long deptId= sysDeptService.getZGSDeptId(getDeptId()); + SysDept dept=new SysDept(); + dept.setComFlag("1"); + dept.setDeptId(deptId); + List list=deptService.selectAllDeptList(dept); + return AjaxResult.success(list); + } + + /** + * 集团公司用户和集团子公司的用户可以看到所有菜单 + * 1,2,3 + * @return + */ + private AjaxResult getDeptTypeA(){ SysDept dept=new SysDept(); dept.setComFlag("1"); List list=deptService.selectAllDeptList(dept); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/FloweController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/FloweController.java index 0fffbd45..2b080b50 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/FloweController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/FloweController.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.flowable.service.IFlowBusinessKeyService; import com.ruoyi.system.domain.FlowTaskEntity; import org.springframework.beans.factory.annotation.Autowired; @@ -31,6 +32,11 @@ public class FloweController extends BaseController { } FlowTaskEntity where=new FlowTaskEntity(); + if(deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } where.setDeployId(deptId<1?null:""+deptId); where.setBusinessKey(projectId<1?null:""+projectId); List list=flowBusinessKeyService.groupByCategory(where); @@ -46,6 +52,11 @@ public class FloweController extends BaseController { return AjaxResult.success(obj); } FlowTaskEntity where=new FlowTaskEntity(); + if(deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } where.setDeployId(deptId<1?"":""+deptId); where.setBusinessKey(projectId<1?"":""+projectId); List list=flowBusinessKeyService.groupByUnit(where); @@ -58,6 +69,11 @@ public class FloweController extends BaseController { public TableDataInfo listByUnit(@RequestBody FlowTaskEntity where){ startPage(); List list=flowBusinessKeyService.listByUnit(where); + if(where.getDeptId()<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return getDataTable(list); } @@ -65,6 +81,11 @@ public class FloweController extends BaseController { public TableDataInfo listByState(@RequestBody FlowTaskEntity where){ startPage(); List list=flowBusinessKeyService.listByState(where); + if(where.getDeptId()<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return getDataTable(list); } diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProblemmodifyController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProblemmodifyController.java index ccfe0a5d..ac052ec5 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProblemmodifyController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProblemmodifyController.java @@ -7,6 +7,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.trouble.domain.SmzSspProblemmodify; import com.yanzhu.jh.trouble.domain.where.SmzSspProblemmodifyWhere; import com.yanzhu.jh.trouble.service.ISmzSspProblemmodifyService; @@ -47,6 +48,12 @@ public class ProblemmodifyController extends BaseController { if(obj!=null){ return (List) obj; } + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list = smzSspProblemmodifyService.selectSummary(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return list; @@ -71,6 +78,12 @@ public class ProblemmodifyController extends BaseController { if(obj!=null){ return (List) obj; } + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list = smzSspProblemmodifyService.selectSummary(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return list; @@ -95,6 +108,12 @@ public class ProblemmodifyController extends BaseController { if(obj!=null){ return (List) obj; } + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list = smzSspProblemmodifyService.selectSummaryByProject(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return list; @@ -120,6 +139,12 @@ public class ProblemmodifyController extends BaseController { if(obj!=null){ return (List) obj; } + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list = smzSspProblemmodifyService.selectSummaryByProject(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return list; @@ -128,16 +153,34 @@ public class ProblemmodifyController extends BaseController { @PostMapping("/countByDate") public AjaxResult countByDate(@RequestBody SmzSspProblemmodifyWhere where){ List list=smzSspProblemmodifyService.countByDate(where); + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return AjaxResult.success(list); } @PostMapping("/countByDateRange") public AjaxResult countByDateRange(@RequestBody SmzSspProblemmodifyWhere where){ List list=smzSspProblemmodifyService.countByDateRange(where); + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return AjaxResult.success(list); } @PostMapping("/groupByInfotypeCheckState") public AjaxResult groupByInfotypeCheckState(@RequestBody SmzSspProblemmodifyWhere where){ + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=smzSspProblemmodifyService.groupByInfotypeCheckState(where); SmzSspProblemmodify obj=new SmzSspProblemmodify(); obj.setId(smzSspProblemmodifyService.countTimeout(where)); @@ -163,6 +206,11 @@ public class ProblemmodifyController extends BaseController { where.setDeptId(deptId); where.setProjectId(projectId); where.setStartDate(new Date()); + if(deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } Map> map=new HashMap<>(); map.put("today",smzSspProblemmodifyService.countByDate(where)); Date[] dts=DateUtils.getCurrentWeekDate(); @@ -176,6 +224,12 @@ public class ProblemmodifyController extends BaseController { @PostMapping("/listSspProblemmodify") public AjaxResult listSspProblemmodify(@RequestBody SmzSspProblemmodifyWhere where){ + Long deptId=where.getDeptId(); + if(deptId==null||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return AjaxResult.success(smzSspProblemmodifyService.selectSmzSspProblemmodifyListAndUnitName(where)); } } diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java index 6e215161..8305504a 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.text.Convert; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.yanzhu.jh.project.domain.SurProjectAttendanceData; import com.yanzhu.jh.project.domain.SurProjectAttendanceUser; @@ -17,6 +18,7 @@ import com.yanzhu.jh.project.service.ISurProjectWorkAttendanceService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.List; @@ -39,6 +41,8 @@ public class ProjectAttendanceController extends BaseController { @Autowired ISurProjectAttendanceUserService attendanceUserService; + @Autowired + HttpServletRequest request; /** * 查询在岗人数 * @param deptId @@ -48,8 +52,13 @@ public class ProjectAttendanceController extends BaseController { @GetMapping("/getDeptWorksList") public TableDataInfo getDeptWorksList(String deptId,String projectId){ SurProjectDeptWroks surProjectDeptWroks = new SurProjectDeptWroks(); + if(deptId!=null && !"0".equals(deptId)){ surProjectDeptWroks.setDeptId(Convert.toLong(deptId)); + }else{ + if(SecurityUtils.isUserB()){ + surProjectDeptWroks.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ surProjectDeptWroks.setProjectId(Convert.toLong(projectId)); @@ -69,6 +78,10 @@ public class ProjectAttendanceController extends BaseController { SurProjectWorkAttendance surProjectWorkAttendance = new SurProjectWorkAttendance(); if(deptId!=null && !"0".equals(deptId)){ surProjectWorkAttendance.setDeptId(Convert.toLong(deptId)); + }else{ + if(SecurityUtils.isUserB()){ + surProjectWorkAttendance.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ surProjectWorkAttendance.setProjectId(Convert.toLong(projectId)); @@ -88,6 +101,12 @@ public class ProjectAttendanceController extends BaseController { */ @PostMapping("/groupByComany") public AjaxResult groupByComany(@RequestBody SurProjectAttendanceData where){ + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=attendanceDataService.groupByComany(where); return AjaxResult.success(list); } @@ -97,6 +116,11 @@ public class ProjectAttendanceController extends BaseController { */ @PostMapping("/todayAttendance") public TableDataInfo todayAttendance(@RequestBody SurProjectAttendanceUser where){ + if(where.getDeptId()==null || where.getDeptId()<=0) { + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } long cnt=attendanceUserService.countTodayAttendance(where); List list=attendanceUserService.todayAttendance(where); TableDataInfo dataInfo=new TableDataInfo(); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectBuildNodeController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectBuildNodeController.java index 396c0e38..b0ea35a5 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectBuildNodeController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectBuildNodeController.java @@ -1,8 +1,10 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectBuildNodeData; import com.yanzhu.jh.project.service.ISurProjectBuildNodeDataService; import org.springframework.beans.factory.annotation.Autowired; @@ -14,7 +16,7 @@ import java.util.concurrent.TimeUnit; @RestController @RequestMapping("/bgscreen/projectBuildNode") -public class ProjectBuildNodeController { +public class ProjectBuildNodeController extends BaseController { @Autowired ISurProjectBuildNodeDataService surProjectBuildNodeDataService; @@ -27,6 +29,12 @@ public class ProjectBuildNodeController { */ @PostMapping("/selectScheduledAlerts") public AjaxResult selectScheduledAlerts(@RequestBody SurProjectBuildNodeData where){ + Long deptId= where.getId(); + if(deptId==null ||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return AjaxResult.success(surProjectBuildNodeDataService.selectScheduledAlerts(where)); } @@ -37,6 +45,12 @@ public class ProjectBuildNodeController { */ @PostMapping("/countCompletionRate") public AjaxResult countCompletionRate(@RequestBody SurProjectBuildNodeData where){ + Long deptId= where.getId(); + if(deptId==null ||deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } return AjaxResult.success(surProjectBuildNodeDataService.countCompletionRate(where)); } /** @@ -90,7 +104,7 @@ public class ProjectBuildNodeController { String key="bgscreen_projectBuildNode_queryFinishProject_"+projectId; Object obj=redisCache.getCacheObject(key); if(obj!=null){ - //return AjaxResult.success(obj); + return AjaxResult.success(obj); } List list=surProjectBuildNodeDataService.queryFinishProject(projectId); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckDetectionController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckDetectionController.java index 3b617494..f4c431b2 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckDetectionController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckDetectionController.java @@ -2,8 +2,10 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectCheckDetection; import com.yanzhu.jh.project.service.ISurProjectCheckDetectionService; import org.springframework.beans.factory.annotation.Autowired; @@ -17,7 +19,7 @@ import java.util.concurrent.TimeUnit; @RestController @RequestMapping("/bgscreen/checkDetection") -public class ProjectCheckDetectionController { +public class ProjectCheckDetectionController extends BaseController { @Autowired ISurProjectCheckDetectionService checkDetectionService; @Autowired @@ -35,6 +37,12 @@ public class ProjectCheckDetectionController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=checkDetectionService.groupByCheckType(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); @@ -46,6 +54,12 @@ public class ProjectCheckDetectionController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=checkDetectionService.getList(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckingController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckingController.java index a2aba3ed..ecf39f1f 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckingController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectCheckingController.java @@ -4,6 +4,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectChecking; import com.yanzhu.jh.project.service.ISurProjectCheckingService; import org.springframework.beans.factory.annotation.Autowired; @@ -32,6 +33,10 @@ public class ProjectCheckingController extends BaseController { SurProjectChecking surProjectChecking = new SurProjectChecking(); if(deptId!=null && !"0".equals(deptId)){ surProjectChecking.setProjectDeptId(deptId); + }else{ + if (SecurityUtils.isUserB()) { + surProjectChecking.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ surProjectChecking.setProjectId(Convert.toLong(projectId)); @@ -50,6 +55,10 @@ public class ProjectCheckingController extends BaseController { SurProjectChecking surProjectChecking = new SurProjectChecking(); if(deptId!=null && !"0".equals(deptId)){ surProjectChecking.setProjectDeptId(deptId); + }else{ + if (SecurityUtils.isUserB()) { + surProjectChecking.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ surProjectChecking.setProjectId(Convert.toLong(projectId)); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java index 6cbe8a54..eca6f06d 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java @@ -1,8 +1,10 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProject; import com.yanzhu.jh.project.domain.SurProjectUserinfo; import com.yanzhu.jh.project.service.ISurProjectService; @@ -18,7 +20,7 @@ import java.util.concurrent.TimeUnit; @RestController @RequestMapping("/bgscreen/project") -public class ProjectController { +public class ProjectController extends BaseController { @Autowired private ISurProjectService isurProjectService; @@ -36,6 +38,16 @@ public class ProjectController { @GetMapping("findProjectByDept") public AjaxResult findProjectByDept(Long deptId){ SurProject surProject=new SurProject(); + if(deptId==-1){ + long roleId= SecurityUtils.getRoleId(); + if(5==roleId||6==roleId||7==roleId){ + surProject.setDeptId(getDeptId()); + }else{ + surProject.setId(SecurityUtils.getUserId()); + } + return AjaxResult.success(isurProjectService.selectSurProjectListByBuser(surProject)); + } + if(deptId!=null && deptId.longValue()>0){ surProject.setDeptId(deptId); } diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectInsuranceController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectInsuranceController.java index 511a6093..fd165d53 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectInsuranceController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectInsuranceController.java @@ -6,6 +6,7 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.yanzhu.jh.project.domain.SurProjectInsurance; import com.yanzhu.jh.project.service.ISurProjectInsuranceService; @@ -39,6 +40,11 @@ public class ProjectInsuranceController extends BaseController { SurProjectInsurance surProjectInsurance = new SurProjectInsurance(); if(deptId!=null && !"0".equals(deptId)){ surProjectInsurance.setNowDept(deptId); + }else{ + if (SecurityUtils.isUserB()) { + surProjectInsurance.setPrjIds(getProjectIds()); + } + } if(projectId!=null && !"0".equals(projectId)){ surProjectInsurance.setProjectId(Convert.toLong(projectId)); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMaterialSealController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMaterialSealController.java index e390afe8..2825a3ee 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMaterialSealController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMaterialSealController.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectMaterialSeal; import com.yanzhu.jh.project.service.ISurProjectMaterialSealService; import org.springframework.beans.factory.annotation.Autowired; @@ -34,6 +35,12 @@ public class ProjectMaterialSealController extends BaseController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId=where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=materialSealService.selectTop20(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); @@ -45,6 +52,12 @@ public class ProjectMaterialSealController extends BaseController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId=where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=materialSealService.groupTop12Month(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); @@ -52,6 +65,12 @@ public class ProjectMaterialSealController extends BaseController { @PostMapping("/selectTop12Month") public TableDataInfo selectTop12Month(@RequestBody SurProjectMaterialSeal where){ startPage(); + Long deptId=where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=materialSealService.selectTop12Month(where); return getDataTable(list); } diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMeasureController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMeasureController.java index 34b018c2..55cc16bd 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMeasureController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectMeasureController.java @@ -1,8 +1,10 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectMeasure; import com.yanzhu.jh.project.service.ISurProjectMeasureService; import org.springframework.beans.factory.annotation.Autowired; @@ -16,7 +18,7 @@ import java.util.concurrent.TimeUnit; @RestController @RequestMapping("/bgscreen/measure") -public class ProjectMeasureController { +public class ProjectMeasureController extends BaseController { @Autowired ISurProjectMeasureService measureService; @Autowired @@ -33,6 +35,12 @@ public class ProjectMeasureController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=measureService.groupMeasureInfo(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); @@ -44,6 +52,12 @@ public class ProjectMeasureController { if(obj!=null){ return AjaxResult.success(obj); } + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } List list=measureService.getList(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectQuarterlyAssessController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectQuarterlyAssessController.java index 27a6bf89..0bf4930d 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectQuarterlyAssessController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectQuarterlyAssessController.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SmzProjectQuarterlyAssess; import com.yanzhu.jh.project.service.ISmzProjectQuarterlyAssessService; import org.springframework.beans.factory.annotation.Autowired; @@ -33,6 +34,11 @@ public class ProjectQuarterlyAssessController extends BaseController { } SmzProjectQuarterlyAssess smzProjectQuarterlyAssess=new SmzProjectQuarterlyAssess(); smzProjectQuarterlyAssess.setDeptId(deptId); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + smzProjectQuarterlyAssess.setPrjIds(getProjectIds()); + } + } Calendar calendar=Calendar.getInstance(); smzProjectQuarterlyAssess.setYear((long)calendar.get(Calendar.YEAR)); int month=calendar.get(Calendar.MONTH); @@ -54,7 +60,6 @@ public class ProjectQuarterlyAssessController extends BaseController { if(obj!=null){ return AjaxResult.success(obj); } - List list=smzProjectQuarterlyAssessService.queryByProjectType(where); redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectScheduleController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectScheduleController.java index 948649fc..81df5125 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectScheduleController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectScheduleController.java @@ -1,8 +1,10 @@ package com.yanzhu.jh.bigscreen.web.controller; import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; +import com.ruoyi.common.utils.SecurityUtils; import com.yanzhu.jh.project.domain.SurProjectSchedule; import com.yanzhu.jh.project.domain.vo.SurProjectScheduleWhere; import com.yanzhu.jh.project.service.ISurProjectScheduleService; @@ -16,7 +18,7 @@ import java.util.concurrent.TimeUnit; @RestController @RequestMapping("/bgscreen/schedule") -public class ProjectScheduleController { +public class ProjectScheduleController extends BaseController { @Autowired private ISurProjectScheduleService isurProjectScheduleService; diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectSpecialController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectSpecialController.java index c7fb3340..a61baed6 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectSpecialController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectSpecialController.java @@ -4,6 +4,7 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.yanzhu.jh.project.domain.SurProjectWorkSpecial; import com.yanzhu.jh.project.service.ISurProjectWorkSpecialService; @@ -33,6 +34,10 @@ public class ProjectSpecialController extends BaseController { SurProjectWorkSpecial surProjectWorkSpecial = new SurProjectWorkSpecial(); if(deptId!=null && !"0".equals(deptId)){ surProjectWorkSpecial.setNowDept(deptId); + }else{ + if (SecurityUtils.isUserB()) { + surProjectWorkSpecial.setPrjIds(getProjectIds()); + } } if(projectId!=null && !"0".equals(projectId)){ surProjectWorkSpecial.setProjectId(Convert.toLong(projectId)); diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java index 217a9191..4f45019d 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java @@ -77,5 +77,14 @@ public interface SurProjectMapper public List selectProgressProjects(long deptId); public List groupByProjectCategory(long deptId); + + /** + * 监理单位、总包单位、分包单位用户不展示项目概况菜单,二级菜单只展示自已参与的项目 + * roleId(15,16,17,99)(select spu.project_id from sur_project_userinfo spu where spu.user_id = #{id} and spu.is_del=0) id-->userId + * roleId(5,6,7) select spui.projectId from sur_project_unit_info spui where spui.unitId = #{deptId} and spui.del_flag=0 --->deptId * + * @param where + * @return + */ + public List selectSurProjectListByBuser(SurProject where); } diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java index 8e9ae500..ee5af959 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java @@ -66,4 +66,13 @@ public interface ISurProjectService public List groupByCategory(SurProject surProject); public List groupByLevel(SurProject surProject); + + /** + * 监理单位、总包单位、分包单位用户不展示项目概况菜单,二级菜单只展示自已参与的项目 + * roleId(15,16,17,99)(select spu.project_id from sur_project_userinfo spu where spu.user_id = #{id} and spu.is_del=0) id-->userId + * roleId(5,6,7) select spui.projectId from sur_project_unit_info spui where spui.unitId = #{deptId} and spui.del_flag=0 --->deptId * + * @param surProject + * @return + */ + public List selectSurProjectListByBuser(SurProject surProject); } diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java index 10db716b..783cddee 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java @@ -115,4 +115,16 @@ public class SurProjectServiceImpl implements ISurProjectService public List groupByLevel(SurProject surProject) { return surProjectMapper.groupByLevel(surProject); } + + /** + * 监理单位、总包单位、分包单位用户不展示项目概况菜单,二级菜单只展示自已参与的项目 + * roleId(15,16,17,99)(select spu.project_id from sur_project_userinfo spu where spu.user_id = #{id} and spu.is_del=0) id-->userId + * roleId(5,6,7) select spui.projectId from sur_project_unit_info spui where spui.unitId = #{deptId} and spui.del_flag=0 --->deptId * + * @param surProject + * @return + */ + @Override + public List selectSurProjectListByBuser(SurProject where) { + return surProjectMapper.selectSurProjectListByBuser(where); + } } diff --git a/yanzhu-jh/src/main/resources/mapper/project/SmzProjectQuarterlyAssessMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SmzProjectQuarterlyAssessMapper.xml index 26713354..23aa8534 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SmzProjectQuarterlyAssessMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SmzProjectQuarterlyAssessMapper.xml @@ -65,6 +65,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" (SELECT id FROM sur_project deptid=#{deptId} + + and id in + + #{item} + + ) AND a.project_id=p.id and plan_target is not null AND p.deptId=d.dept_id @@ -79,6 +85,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" FROM sur_project p LEFT JOIN smz_project_quarterly_assess a ON a.project_id=p.id WHERE p.projecttype=#{id} AND a.year=#{year} AND a.quarterly=#{quarterly} AND p.isdel=0 and p.deptId=#{deptId} + + and p.id in + + #{item} + + + order by p.projectSort \ No newline at end of file diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml index ded2212b..abd2bc1e 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml @@ -149,6 +149,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE LENGTH(node_lvl)=2 and project_id=#{projectId} and project_id in (SELECT id FROM sur_project WHERE deptid=#{id}) + + and project_id in + + #{item} + + GROUP BY project_id) order by projectSort @@ -168,6 +174,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE LENGTH(node_lvl)=2 and project_id=#{projectId} and project_id in (SELECT id FROM sur_project WHERE deptid=#{id}) + + and project_id in + + #{item} + + GROUP BY project_id)) a LEFT JOIN ( @@ -178,6 +190,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE LENGTH(node_lvl)=2 and project_id=#{projectId} and project_id in (SELECT id FROM sur_project WHERE deptid=#{id}) + + and project_id in + + #{item} + + GROUP BY project_id)) b WHERE a.project_id=b.project_id AND LEFT(a.node_lvl,2)=b.node_lvl AND LENGTH(a.node_lvl)>2 GROUP BY a.project_id) b ON a.project_id =b.project_id @@ -188,6 +206,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE LENGTH(node_lvl)=2 and project_id=#{projectId} and project_id in (SELECT id FROM sur_project WHERE deptid=#{id}) + + and project_id in + + #{item} + + GROUP BY project_id)) b WHERE a.project_id=b.project_id AND LEFT(a.node_lvl,2)=b.node_lvl AND LENGTH(a.node_lvl)>2 AND a.end_date IS NOT NULL GROUP BY a.project_id ) c ON a.project_id=c.project_id diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckDetectionMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckDetectionMapper.xml index bc382ad1..461c4568 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckDetectionMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckDetectionMapper.xml @@ -239,6 +239,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and project_id in + + #{item} + + and project_id=#{projectId} @@ -254,6 +260,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and project_id in + + #{item} + + and project_id=#{projectId} @@ -269,6 +281,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and project_id in + + #{item} + + and project_id=#{projectId} @@ -282,6 +300,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and spcd.project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and spcd.project_id in + + #{item} + + and spcd.project_id=#{projectId} diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckingMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckingMapper.xml index 76f66c53..3568a2ac 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckingMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectCheckingMapper.xml @@ -95,6 +95,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and spc.is_del=0 and spc.project_id = #{projectId} + + and spc.project_id in + + #{item} + + and sp.projectName like concat('%', #{projectName}, '%') and spc.dept_id = #{deptId} and sd.dept_name like concat('%', #{deptName}, '%') @@ -131,6 +137,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and spc.is_del=0 and spc.project_id = #{projectId} and sp.deptId = #{projectDeptId} + + and spc.project_id in + + #{item} + + group by check_result diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectDeptWroksMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectDeptWroksMapper.xml index 52ffcf3c..aeb9868c 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectDeptWroksMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectDeptWroksMapper.xml @@ -85,8 +85,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" left join sur_project sp on spdw.project_id=sp.id and spdw.is_del=0 - and spdw.project_id = #{projectId} - and sp.deptId = #{deptId} + and spdw.project_id = #{projectId} + and sp.deptId = #{deptId} + + and spdw.project_id in + + #{item} + + group by spdw.project_id group by sp.deptId diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectInsuranceMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectInsuranceMapper.xml index 1a247711..f477bc86 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectInsuranceMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectInsuranceMapper.xml @@ -181,6 +181,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where sp.isDel=0 and sp.deptId = #{nowDept} and sp.id = #{projectId} + + and sp.id in + + #{item} + + GROUP BY sp.id,sp.projectName ORDER BY sp.projectSort ASC diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml index 3de8b66d..b76af84b 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml @@ -344,4 +344,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ON p.projectType=d.dict_value GROUP BY d.dict_value,d.dict_label,p.projectSchedule + + \ No newline at end of file diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMaterialSealMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMaterialSealMapper.xml index 9af5c8a7..21628c57 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMaterialSealMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMaterialSealMapper.xml @@ -192,6 +192,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where spme.is_del=0 and sp.deptId = #{deptId} and sp.id = #{projectId} + + and sp.id in + + #{item} + + ) spme order by spme.create_time desc LIMIT 0,20 @@ -201,6 +207,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from sur_project_material_seal where is_del=0 and project_id in ( SELECT id FROM sur_project WHERE deptid= #{deptId}) + + and project_id in + + #{item} + + and project_id = #{projectId} and seal_date>=DATE_SUB(CURDATE(),interval 12 month) group by year(seal_date),month(seal_date) @@ -216,6 +228,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and spme.seal_date>=DATE_SUB(CURDATE(),interval 12 month) and sp.deptId = #{deptId} and sp.id = #{projectId} + + and sp.id in + + #{item} + + order by spme.seal_date desc ) spme diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMeasureMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMeasureMapper.xml index d1b1949a..c9abf941 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMeasureMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMeasureMapper.xml @@ -197,6 +197,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and project_id in + + #{item} + + AND project_id=#{projectId} @@ -221,6 +227,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND spm.project_id IN (SELECT id FROM sur_project WHERE deptid=#{deptId}) + + and spm.project_id in + + #{item} + + AND spm.project_id=#{projectId} diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectScheduleMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectScheduleMapper.xml index f0a2cabd..0d2b1675 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectScheduleMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectScheduleMapper.xml @@ -182,6 +182,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT id FROM sur_project WHERE isdel=0 AND projecttype=#{prjType} and deptId=#{deptId} + + and id in + + #{item} + + ) AND IF(is_del IS NULL ,0,is_del)=0 GROUP BY project_id ) diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectWorkSpecialMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectWorkSpecialMapper.xml index fe7dca8d..1cb11b40 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectWorkSpecialMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectWorkSpecialMapper.xml @@ -161,7 +161,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" s1.is_del = 0 and sp1.deptId = #{nowDept} and s1.project_id = #{projectId} - AND s1.credential_expiration_time > NOW() + + and s1.project_id in + + #{item} + + + + AND s1.credential_expiration_time > NOW() AND DATE_SUB( s1.credential_expiration_time, INTERVAL 1 MONTH @@ -180,6 +187,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" s2.is_del = 0 and sp2.deptId = #{nowDept} and s2.project_id = #{projectId} + + and s2.project_id in + + #{item} + + AND s2.credential_expiration_time NOW() GROUP BY s2.project_id @@ -188,6 +201,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" spws.is_del = 0 and sp.deptId = #{nowDept} and spws.project_id = #{projectId} + + and spws.project_id in + + #{item} + + GROUP BY spws.project_id ORDER BY diff --git a/yanzhu-jh/src/main/resources/mapper/trouble/SmzSspProblemmodifyMapper.xml b/yanzhu-jh/src/main/resources/mapper/trouble/SmzSspProblemmodifyMapper.xml index 77eff5a6..4d1b411d 100644 --- a/yanzhu-jh/src/main/resources/mapper/trouble/SmzSspProblemmodifyMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/trouble/SmzSspProblemmodifyMapper.xml @@ -426,7 +426,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where isDel=0 and projectId=#{projectId} AND deptid = #{deptId} - + + and projectId in + + #{item} + + ) AND infotype=#{infoType} and isDel=0 AND roletype=#{roleType} and DATE(createtime)>=DATE(#{startDate}) @@ -444,6 +449,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where infoType=#{infoType} AND isDel=0 and projectId=#{projectId} AND deptid = #{deptId} + + and projectId in + + #{item} + + AND roletype=#{roleType} and DATE(createtime)>=DATE(#{startDate}) and DATE(createtime) <= DATE(#{endDate}) @@ -456,6 +467,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and infoType=#{infoType} AND isDel=0 and projectId=#{projectId} AND deptid = #{deptId} + + and projectId in + + #{item} + + AND roletype=#{roleType} and DATE(createtime)>=DATE(#{startDate}) and DATE(createtime) <= DATE(#{endDate}) @@ -468,6 +485,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and infoType=#{infoType} AND isDel=0 and projectId=#{projectId} AND deptid = #{deptId} + + and projectId in + + #{item} + + AND roletype=#{roleType} and DATE(createtime)>=DATE(#{startDate}) and DATE(createtime) <= DATE(#{endDate}) @@ -481,6 +504,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and infoType=#{infoType} AND isDel=0 and projectId=#{projectId} AND deptid = #{deptId} + + and projectId in + + #{item} + + AND roletype=#{roleType} and DATE(createtime)>=DATE(#{startDate}) and DATE(createtime) <= DATE(#{endDate}) @@ -500,6 +529,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND deptid = #{deptId} ) + + and projectId in + + #{item} + + and DATE(createTime)=Date(#{startDate}) GROUP BY infotype @@ -514,6 +549,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND deptid = #{id} ) + + and projectId in + + #{item} + + =Date(#{startDate}) and Date(createTime)<=Date(#{endDate}) ]]> @@ -533,6 +574,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND deptid = #{deptId} ) + + and projectId in + + #{item} + + GROUP BY infotype,checkState @@ -571,6 +624,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and ssp.isDel=0 and ssp.projectId = #{projectId} + + and ssp.projectId in + + #{item} + + and ssp.infoType = #{infoType} and ssp.roleType = #{roleType} and ssp.problemArea like concat('%', #{problemArea}, '%') diff --git a/yanzhu-jh/src/main/resources/mapper/work/WorkTrainMapper.xml b/yanzhu-jh/src/main/resources/mapper/work/WorkTrainMapper.xml index 594dcfb7..3e4c6e43 100644 --- a/yanzhu-jh/src/main/resources/mapper/work/WorkTrainMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/work/WorkTrainMapper.xml @@ -109,6 +109,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sp.deptId = #{nowDept} and wt.train_type = #{trainType} and wt.project_id = #{projectId} + + and wt.project_id in + + #{item} + + group by wt.id order by wt.create_time desc