From 30acdf38e771ab9da417af7c17ef1333e4e9516a Mon Sep 17 00:00:00 2001 From: liyawei Date: Wed, 2 Nov 2022 15:44:16 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=BE=85=E5=8A=9E=E4=B8=AD=E5=BF=83-?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E5=8F=82=E6=95=B0-=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=BE=85=E5=8A=9E?= =?UTF-8?q?=E6=A0=87=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SysPermissionController.java | 1 + .../system/mapper/TodoCenterMapper.java | 7 + .../system/mapper/xml/TodoCenterMapper.xml | 35 ++ .../system/service/ISysPermissionService.java | 8 +- .../impl/SysPermissionServiceImpl.java | 51 ++- .../mapper/ParamsCollectManifestEOMapper.java | 2 +- .../xml/ParamsCollectManifestEOMapper.xml | 4 + .../mapper/xml/ParamsManifestEOMapper.xml | 16 + .../ParamsManifestTodoCenterServiceImpl.java | 317 +++--------------- .../vo/ParamsManifestTodoCenterEOPage.java | 4 + 10 files changed, 151 insertions(+), 294 deletions(-) diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysPermissionController.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysPermissionController.java index f9b86374a..fcb31c6e8 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysPermissionController.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysPermissionController.java @@ -684,6 +684,7 @@ public class SysPermissionController { //项目参数任务 if(StringUtils.equals(permission.getId(), SysPermissionEnum.PROJECT_PARAMETER_TASKS.getId())){ boolean existTaskFlag = false; + existTaskFlag = sysPermissionService.judgeToDo(); meta.put("existTask",existTaskFlag); } json.put("meta", meta); diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/TodoCenterMapper.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/TodoCenterMapper.java index b6e0e59ca..d5b9363e4 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/TodoCenterMapper.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/TodoCenterMapper.java @@ -2,6 +2,7 @@ package com.jero.modules.system.mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; import java.util.Map; /** @@ -11,4 +12,10 @@ import java.util.Map; **/ public interface TodoCenterMapper { int todoCenterTaskCount(@Param("params") Map params); + + List listInfoHomo(@Param("userId") String userId, @Param("state") String state); + + Integer countSdtDre(@Param("userName") String userName); + + Integer countState(@Param("manifestId") String manifestId); } diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/TodoCenterMapper.xml b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/TodoCenterMapper.xml index 29d53a4d9..a3a40b79c 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/TodoCenterMapper.xml +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/TodoCenterMapper.xml @@ -18,4 +18,39 @@ + + + + + + diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysPermissionService.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysPermissionService.java index 8f48db4f1..f9ab61583 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysPermissionService.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysPermissionService.java @@ -1,13 +1,11 @@ package com.jero.modules.system.service; -import java.util.List; - -import org.apache.ibatis.annotations.Param; +import com.baomidou.mybatisplus.extension.service.IService; import com.jero.common.exception.JeroBootException; import com.jero.modules.system.entity.SysPermission; import com.jero.modules.system.model.TreeModel; -import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; /** *

@@ -61,4 +59,6 @@ public interface ISysPermissionService extends IService { * @return */ public boolean hasPermission(String username, String url); + + boolean judgeToDo(); } diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysPermissionServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysPermissionServiceImpl.java index 042ce05df..af4973242 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysPermissionServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysPermissionServiceImpl.java @@ -1,33 +1,32 @@ package com.jero.modules.system.service.impl; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import javax.annotation.Resource; - +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.constant.CacheConstant; import com.jero.common.constant.CommonConstant; import com.jero.common.exception.JeroBootException; +import com.jero.common.system.vo.LoginUser; import com.jero.common.util.oConvertUtils; import com.jero.modules.system.entity.SysPermission; import com.jero.modules.system.entity.SysPermissionDataRule; -import com.jero.modules.system.mapper.SysDepartPermissionMapper; -import com.jero.modules.system.mapper.SysDepartRolePermissionMapper; -import com.jero.modules.system.mapper.SysPermissionMapper; -import com.jero.modules.system.mapper.SysRolePermissionMapper; +import com.jero.modules.system.mapper.*; import com.jero.modules.system.model.TreeModel; import com.jero.modules.system.service.ISysPermissionDataRuleService; import com.jero.modules.system.service.ISysPermissionService; +import org.apache.shiro.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import javax.annotation.Resource; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** *

@@ -55,6 +54,9 @@ public class SysPermissionServiceImpl extends ServiceImpl queryListByParentId(String parentId) { return sysPermissionMapper.queryListByParentId(parentId); @@ -263,4 +265,25 @@ public class SysPermissionServiceImpl extends ServiceImpl 0) { + return true; + } + + List manifestIdList = todoCenterMapper.listInfoHomo(loginUser.getId(),"收集中"); + if(CollectionUtil.isNotEmpty(manifestIdList)) { + for (int i = 0; i < manifestIdList.size(); i++) { + int coutState = todoCenterMapper.countState(manifestIdList.get(i)); + if (coutState > 0) { + return true; + } + } + } + + return false; + } + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/ParamsCollectManifestEOMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/ParamsCollectManifestEOMapper.java index 76eedb79c..a59ccabfb 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/ParamsCollectManifestEOMapper.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/ParamsCollectManifestEOMapper.java @@ -18,7 +18,7 @@ public interface ParamsCollectManifestEOMapper extends BaseMapper listInfo(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO); - List listInfoOfTodoCenter(); + List listInfoOfTodoCenter(@Param("manifestIdList") List manifestIdList); List> listInfoForExport(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml index 026244f6a..8230233d7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml @@ -82,6 +82,10 @@ + + \ No newline at end of file diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ParamsManifestTodoCenterServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ParamsManifestTodoCenterServiceImpl.java index c3fa55d10..8c4a807f0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ParamsManifestTodoCenterServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ParamsManifestTodoCenterServiceImpl.java @@ -58,6 +58,7 @@ public class ParamsManifestTodoCenterServiceImpl implements IParamsManifestTodoC return page; } + List manifestIdListHomo = paramsManifestEOMapper.listInfoHomo(loginUser.getId(), ManifestStateEnum.COLLECTING.getValue());// 获取当前登录人 拥有认证工程师角色的清单 for(ParamsManifestTodoCenterEO paramsManifestEO : paramsManifestEOListAll) { // 查询清单的所有参数项 List pcmList = pcmListAll.stream().filter(e->paramsManifestEO.getId().equals(e.getParamsManifestId())).collect(Collectors.toList()); @@ -68,26 +69,48 @@ public class ParamsManifestTodoCenterServiceImpl implements IParamsManifestTodoC } int count = 0; - // 统计待发起数量 包括状态:待发起收集,变更,工程接口人退回 - count = (int) pcmList.stream().filter(e-> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) - || CollectManifestStateEnum.SDT_BACK.getValue().equals(e.getState()) - || CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count(); - if (count > 0) { - paramsManifestEO.setWaitCollectNum(count); - } - // 统计待分配数量 包括状态:待工程接口人处理,填写人退回 - count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState()) - || CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState()))).count(); - if (count > 0) { - paramsManifestEO.setWaitSdtNum(count); - } - // 统计待填写数量 包括状态:待填写,认证工程师退回 - count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState()) - || CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))).count(); - if (count > 0) { - paramsManifestEO.setWaitFillNum(count); + + if(CollectionUtil.isNotEmpty(manifestIdListHomo) && manifestIdListHomo.contains(paramsManifestEO.getId())) { // 认证工程师 可以看到三种数量 + // 统计待发起数量 包括状态:待发起收集,变更,工程接口人退回 + count = (int) pcmList.stream().filter(e -> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) + || CollectManifestStateEnum.SDT_BACK.getValue().equals(e.getState()) + || CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count(); + if (count > 0) { + paramsManifestEO.setWaitCollectNum(count); + } + + // 统计待分配数量 包括状态:待工程接口人处理,填写人退回 + count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState()) + || CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState()))).count(); + if (count > 0) { + paramsManifestEO.setWaitSdtNum(count); + } + + // 统计待填写数量 包括状态:待填写,认证工程师退回 + count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState()) + || CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))).count(); + if (count > 0) { + paramsManifestEO.setWaitFillNum(count); + } + } else { // 工程接口人和填写人 只能看到 工程接口人是自己 或 填写人是自己 的数量 + // 统计待分配数量 包括状态:待工程接口人处理,填写人退回 + count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState()) + || CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState())) + && loginUser.getUsername().equals(e.getSdt())).count(); + if (count > 0) { + paramsManifestEO.setWaitSdtNum(count); + } + + // 统计待填写数量 包括状态:待填写,认证工程师退回 + count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState()) + || CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState())) + && loginUser.getUsername().equals(e.getDre())).count(); + if (count > 0) { + paramsManifestEO.setWaitFillNum(count); + } } + } // 分页 From abe7dcafaa02c37600efbc79b0daf051bb9cd183 Mon Sep 17 00:00:00 2001 From: "zyx.net" Date: Wed, 2 Nov 2022 18:16:04 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=94=B6=E9=9B=86?= =?UTF-8?q?=E5=BE=85=E5=8A=9E=E4=BB=BB=E5=8A=A1=E8=B7=B3=E8=BD=AC=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ParameterItemCollectionList.vue | 11 +- .../projectParameterTasks/index.vue | 109 +++++++++++++----- 2 files changed, 87 insertions(+), 33 deletions(-) diff --git a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue index 3ce895f7f..643c7897c 100644 --- a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue +++ b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue @@ -670,12 +670,11 @@ // } }, mounted() { - console.log(this.$route.query) + this.GetgetLoginUserType() + console.log(this.currentPersonRole) if(this.$route.query.type == '1'){ this.handleOkRoleSwitching() } - this.GetgetLoginUserType() - console.log(this.currentPersonRole) setTimeout(() => { if (this.currentPersonRole == 'dre') { this.handlePreservation() @@ -710,7 +709,7 @@ handleOkRoleSwitching() { if(this.$route.query.type == '1'){ let query = { - userType:this.$route.query.userType, + userType:this.formInlineRoleSwitching.roleSwitchingCode ? this.formInlineRoleSwitching.roleSwitchingCode : this.$route.query.userType, paramsManifestId: this.$route.query.id, projectId: this.$route.query.projectId, userId: this.userInfo().id @@ -718,10 +717,10 @@ this.confirmLoadingRoleSwitching = true postAction('/params/userTypeLog/edit', query).then((res) => { if (res.success) { - this.currentPersonRole = this.$route.query.userType + this.currentPersonRole = this.formInlineRoleSwitching.roleSwitchingCode ? this.formInlineRoleSwitching.roleSwitchingCode : this.$route.query.userType this.visibleRoleSwitching = false this.confirmLoadingRoleSwitching = false - localStorage.setItem('currentPersonRole', JSON.stringify(this.$route.query.userType)) + localStorage.setItem('currentPersonRole', JSON.stringify(this.formInlineRoleSwitching.roleSwitchingCode ? this.formInlineRoleSwitching.roleSwitchingCode : this.$route.query.userType)) this.RoleType.forEach((item,index) => { if(item.value == this.currentPersonRole){ this.rolename = item.label diff --git a/jero-web/src/views/toDoCenter/projectParameterTasks/index.vue b/jero-web/src/views/toDoCenter/projectParameterTasks/index.vue index 0216f842b..33e86e093 100644 --- a/jero-web/src/views/toDoCenter/projectParameterTasks/index.vue +++ b/jero-web/src/views/toDoCenter/projectParameterTasks/index.vue @@ -167,42 +167,97 @@ }, //待填写数量 waitFillClick(item) { - let _this = this - item.type = '1' - item.userType = 'dre' - console.log(item) - let newUrl = _this.$router.resolve({ - path: '/ParameterItemCollection', - query: item - // projectName:this.$route.query.projectName + let query = { + paramsManifestId: item.id, + projectId: item.projectId + } + this.loading = true + let userType = '' + let valueList = [] + getAction('params/collectManifest/getLoginUserType', query).then((res) => { + if(res.result){ + res.result.find((item,index) => { + if(item.value){ + valueList.push(item.value) + } + }) + let flag = valueList.find((item,index) => { + return item == 'dre' + }) + let _this = this + item.type = '1' + item.userType = _this.flag == undefined ? valueList[0] : 'dre' + let newUrl = _this.$router.resolve({ + path: '/ParameterItemCollection', + query: item + // projectName:this.$route.query.projectName + }) + window.open(newUrl.href, '_blank') + } }) - window.open(newUrl.href, '_blank') }, //待分配填写人数量 waitSdtClick(item) { - let _this = this - item.type = '1' - item.userType = 'sdt' - console.log(item) - let newUrl = _this.$router.resolve({ - path: '/ParameterItemCollection', - query: item - // projectName:this.$route.query.projectName + let query = { + paramsManifestId: item.id, + projectId: item.projectId + } + this.loading = true + let userType = '' + let valueList = [] + getAction('params/collectManifest/getLoginUserType', query).then((res) => { + if(res.result){ + res.result.find((item,index) => { + if(item.value){ + valueList.push(item.value) + } + }) + let flag = valueList.find((item,index) => { + return item == 'sdt' + }) + let _this = this + item.type = '1' + item.userType = _this.flag == undefined ? valueList[0] : 'sdt' + let newUrl = _this.$router.resolve({ + path: '/ParameterItemCollection', + query: item + // projectName:this.$route.query.projectName + }) + window.open(newUrl.href, '_blank') + } }) - window.open(newUrl.href, '_blank') + }, //参数待发起数量 waitCollectClick(item) { - let _this = this - item.type = '1' - item.userType = 'homo' - console.log(item) - let newUrl = _this.$router.resolve({ - path: '/ParameterItemCollection', - query: item - // projectName:this.$route.query.projectName + let query = { + paramsManifestId: item.id, + projectId: item.projectId + } + this.loading = true + let userType = '' + let valueList = [] + getAction('params/collectManifest/getLoginUserType', query).then((res) => { + if(res.result){ + res.result.find((item,index) => { + if(item.value){ + valueList.push(item.value) + } + }) + let flag = valueList.find((item,index) => { + return item == 'homo' + }) + let _this = this + item.type = '1' + item.userType = _this.flag == undefined ? valueList[0] : 'homo' + let newUrl = _this.$router.resolve({ + path: '/ParameterItemCollection', + query: item + // projectName:this.$route.query.projectName + }) + window.open(newUrl.href, '_blank') + } }) - window.open(newUrl.href, '_blank') }, SizeChange(page, pageSize) { this.pageNo = 1