diff --git a/src/main/java/com/xdap/self_development/controller/PermissionController.java b/src/main/java/com/xdap/self_development/controller/PermissionController.java index ab1ee96..e6b8794 100644 --- a/src/main/java/com/xdap/self_development/controller/PermissionController.java +++ b/src/main/java/com/xdap/self_development/controller/PermissionController.java @@ -22,6 +22,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.constraints.NotBlank; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -139,5 +140,13 @@ public class PermissionController { List list = parameterService.getAllParameters(subsystem); return Response.ok().data(list); } + // 查看角色绑定的人员或部门列表 + @GetMapping("/selectUserOrDeptByRole") + public Response selectUserOrDeptByRole( + @NotBlank String roleID + ) { + HashMap> map = modelRoleService.selectUserOrDeptByRole(roleID); + return Response.ok().data(map); + } } diff --git a/src/main/java/com/xdap/self_development/service/ModelRoleService.java b/src/main/java/com/xdap/self_development/service/ModelRoleService.java index 955af15..476d96e 100644 --- a/src/main/java/com/xdap/self_development/service/ModelRoleService.java +++ b/src/main/java/com/xdap/self_development/service/ModelRoleService.java @@ -8,7 +8,9 @@ import com.xdap.self_development.pojo.ModelRolesPojo; import com.xdap.self_development.pojo.dto.PageResultDTO; import com.xdap.self_development.pojo.view.MenuParamView; +import javax.validation.constraints.NotBlank; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; public interface ModelRoleService { @@ -30,4 +32,6 @@ public interface ModelRoleService { void removeRoles(String roleID, String userID); void userRoleBinding(UserRoleBindingRequest userRoleBindingRequest); + + HashMap> selectUserOrDeptByRole(@NotBlank String roleID); } diff --git a/src/main/java/com/xdap/self_development/service/impl/EngineParamDetailServiceImpl.java b/src/main/java/com/xdap/self_development/service/impl/EngineParamDetailServiceImpl.java index 73dc9b6..e647d15 100644 --- a/src/main/java/com/xdap/self_development/service/impl/EngineParamDetailServiceImpl.java +++ b/src/main/java/com/xdap/self_development/service/impl/EngineParamDetailServiceImpl.java @@ -395,20 +395,20 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService { List detailPojos = selectByResId(userID); List paramDetailPojos = detailPojos.stream() .filter(x -> x.getEngineModelId().equals(engineModelId) && ObjectUtils.isEmpty(x.getFilledBy())).collect(Collectors.toList()); - if (ObjectUtils.isNotEmpty(paramDetailPojos)) { + if (ObjectUtils.isEmpty(paramDetailPojos)) { //软删除这个代办人的任务 sw.buildFromDatasource("xdap_app_223770822127386625") .eq("owner_id", userID) .eq("model_id", engineModelId) .update("is_delete", 1) .doUpdate(TodoTaskPojo.class); - //机型的分发状态改为已分发 - DistributeStatusEnum byDesc = DistributeStatusEnum.getByDesc("已分发"); - Integer status = byDesc != null ? byDesc.getCode() : null; - sw.buildFromDatasource("xdap_app_223770822127386625") - .eq("id", engineModelId) - .update("status", status) - .doUpdate(DataEntryEngineModelPojo.class); +// //机型的分发状态改为已分发 +// DistributeStatusEnum byDesc = DistributeStatusEnum.getByDesc("已分发"); +// Integer status = byDesc != null ? byDesc.getCode() : null; +// sw.buildFromDatasource("xdap_app_223770822127386625") +// .eq("id", engineModelId) +// .update("status", status) +// .doUpdate(DataEntryEngineModelPojo.class); } } diff --git a/src/main/java/com/xdap/self_development/service/impl/ModelRoleServiceImpl.java b/src/main/java/com/xdap/self_development/service/impl/ModelRoleServiceImpl.java index 7e5bcf2..2432314 100644 --- a/src/main/java/com/xdap/self_development/service/impl/ModelRoleServiceImpl.java +++ b/src/main/java/com/xdap/self_development/service/impl/ModelRoleServiceImpl.java @@ -1,6 +1,8 @@ package com.xdap.self_development.service.impl; +import com.xdap.api.moudle.department.pojo.entity.XdapDepartments; +import com.xdap.api.moudle.user.pojo.XdapUsers; import com.xdap.self_development.config.BusinessDatabase; import com.xdap.self_development.controller.request.ModelRolesRequest; import com.xdap.self_development.controller.request.RolePerJoinRequest; @@ -13,6 +15,7 @@ import com.xdap.self_development.pojo.view.MenuListView; import com.xdap.self_development.pojo.view.MenuParamView; import com.xdap.self_development.service.ModelMenuPermissionService; import com.xdap.self_development.service.ModelRoleService; +import com.xdap.self_development.service.XdapDeptUsersService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.BeanUtils; @@ -32,6 +35,8 @@ public class ModelRoleServiceImpl implements ModelRoleService { BusinessDatabase businessDatabase; @Autowired ModelMenuPermissionService modelMenuPermissionService; + @Autowired + XdapDeptUsersService xdapDeptUsersService; @Override public void addRoles(ModelRolesRequest request) { @@ -226,6 +231,7 @@ public class ModelRoleServiceImpl implements ModelRoleService { businessDatabase.getBusinessDatabase() .update("is_enable", 0) .eq("role_id", roleId) + .eq("is_dep",isDept) .doUpdate(ModelDepUserRolePojo.class); } for (String userOrDeptId : userRoleBindingRequest.getUserOrDeptIds()) { @@ -244,4 +250,36 @@ public class ModelRoleServiceImpl implements ModelRoleService { } + @Override + public HashMap> selectUserOrDeptByRole(String roleID) { + if (ObjectUtils.isEmpty(roleID)) { + return null; + } + List modelDepUserRolePojos = businessDatabase.getBusinessDatabase() + .eq("role_id", roleID) + .eq("is_enable", 1) + .doQuery(ModelDepUserRolePojo.class); + HashMap> map = new HashMap<>(); + if (ObjectUtils.isNotEmpty(modelDepUserRolePojos)) { + List deptList = modelDepUserRolePojos.stream().filter(x -> x.getIsDep() == 1).collect(Collectors.toList()); + List userList = modelDepUserRolePojos.stream().filter(x -> x.getIsDep() == 0).collect(Collectors.toList()); + ArrayList stringsDept = new ArrayList<>(); + ArrayList stringsUser = new ArrayList<>(); + for (ModelDepUserRolePojo userRolePojo : deptList) { + String depId = userRolePojo.getUserOrDep(); + XdapDepartments xdapDepartments = xdapDeptUsersService.selectDeptByID(depId); + stringsDept.add(xdapDepartments.getName()); + } + map.put("部门", stringsDept); + for (ModelDepUserRolePojo userRolePojo : userList) { + String userId = userRolePojo.getUserOrDep(); + XdapUsers xdapUsers = xdapDeptUsersService.selectUserByID(userId); + stringsUser.add(xdapUsers.getUsername()+"-"+xdapUsers.getAccount()); + } + map.put("人员", stringsUser); + return map; + } + return null; + } + } diff --git a/src/main/java/com/xdap/self_development/service/impl/TodoTaskServiceImpl.java b/src/main/java/com/xdap/self_development/service/impl/TodoTaskServiceImpl.java index bf2a3fd..d4cd8de 100644 --- a/src/main/java/com/xdap/self_development/service/impl/TodoTaskServiceImpl.java +++ b/src/main/java/com/xdap/self_development/service/impl/TodoTaskServiceImpl.java @@ -6,6 +6,7 @@ import com.xdap.api.moudle.user.pojo.XdapUsers; import com.xdap.self_development.controller.request.TodoReturnRequest; import com.xdap.self_development.controller.request.TodoTaskRequest; import com.xdap.self_development.enums.CurrentNodeEnum; +import com.xdap.self_development.enums.DistributeStatusEnum; import com.xdap.self_development.pojo.*; import com.xdap.self_development.pojo.dto.EngineParamDetailDTO; import com.xdap.self_development.pojo.dto.PageResultDTO; @@ -155,6 +156,18 @@ public class TodoTaskServiceImpl implements TodoTaskService { todoTaskPojos.add(todoTaskPojo); } batchInsertTodoTask(todoTaskPojos); + List detailPojos = engineParamDetailService.selectByModelNewVersion(modelId); + List paramDetailPojos = detailPojos.stream() + .filter(x -> ObjectUtils.isEmpty(x.getResponsiblePersonId())).collect(Collectors.toList()); +// 机型的分发状态改为已分发 + if (ObjectUtils.isEmpty(paramDetailPojos)) { + DistributeStatusEnum byDesc = DistributeStatusEnum.getByDesc("已分发"); + Integer status = byDesc != null ? byDesc.getCode() : null; + sw.buildFromDatasource("xdap_app_223770822127386625") + .eq("id", modelId) + .update("distribute_status", status) + .doUpdate(DataEntryEngineModelPojo.class); + } } @Override