瀏覽代碼

合同段编辑用户角色

cr 2 周之前
父節點
當前提交
4ced921c2e

+ 9 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/UpdateBatchUserRoleDto.java

@@ -0,0 +1,9 @@
+package org.springblade.manager.dto;
+
+import lombok.Data;
+
+@Data
+public class UpdateBatchUserRoleDto {
+    private Long id;
+    private Long roleId;
+}

+ 10 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/UpdateBatchUserRoleDto1.java

@@ -0,0 +1,10 @@
+package org.springblade.manager.dto;
+
+import lombok.Data;
+
+import java.util.List;
+@Data
+public class UpdateBatchUserRoleDto1 {
+    private List<UpdateBatchUserRoleDto> list;
+    private Long userId;
+}

+ 6 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/SaveUserInfoByProjectVO2.java

@@ -39,4 +39,10 @@ public class SaveUserInfoByProjectVO2 implements Serializable {
     @JsonProperty(value = "roleType")
     private String roleType;
 
+    /**
+     * 角色id
+     */
+    @JsonProperty(value = "roleId")
+    private String roleId;
+
 }

+ 24 - 3
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ContractInfoController.java

@@ -22,12 +22,11 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.*;
-import org.springblade.manager.dto.FindAllUserByConditionDTO;
-import org.springblade.manager.dto.SaveUserInfoByProjectDTO;
-import org.springblade.manager.dto.WbsTreeContractDTO;
+import org.springblade.manager.dto.*;
 import org.springblade.manager.entity.ContractRelationJlyz;
 import org.springblade.manager.entity.WbsTreeContract;
 import org.springblade.manager.entity.ProjectInfo;
+import org.springblade.manager.feign.ProjectAssignmentUserClient;
 import org.springblade.manager.mapper.SaveUserInfoByProjectMapper;
 import org.springblade.manager.service.IWbsTreeContractService;
 import org.springblade.manager.service.SaveUserInfoByProjectService;
@@ -493,6 +492,28 @@ public class ContractInfoController extends BladeController {
         return R.fail("保存失败");
     }
 
+    @PostMapping("/update-batch-user-role")
+    @ApiOperation(value = "批量更新用户roleId")
+    @ApiOperationSupport(order = 13)
+    public R updateBatchUserRole(@RequestBody UpdateBatchUserRoleDto1 dtos){
+        if(!dtos.getList().isEmpty()){
+            for (UpdateBatchUserRoleDto dto : dtos.getList()) {
+                if(dto.getRoleId()!=null){
+                    String update="update m_project_assignment_user set role_id="+dto.getRoleId()+" where id="+dto.getId();
+                    jdbcTemplate.update(update);
+                }
+            }
+            String sql="select * from m_project_assignment_user where user_id="+dtos.getUserId()+" and is_deleted=0";
+            List<SaveUserInfoByProjectDTO> userRoleInfo = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(SaveUserInfoByProjectDTO.class));
+            if(!userRoleInfo.isEmpty()){
+                String roleId = userRoleInfo.stream().filter(u -> u.getRoleId() != null).map(u -> u.getRoleId()).distinct().collect(Collectors.joining(","));
+                String sql1="update blade_user set role_id='"+roleId+"' where id="+dtos.getUserId();
+                jdbcTemplate.update(sql1);
+            }
+        }
+        return R.success("更新成功");
+    }
+
     /**
      * 项目分配用户删除 - 全部删除 or 单删除
      */

+ 1 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeMapper.xml

@@ -519,6 +519,7 @@
              , ci.contract_name                                          as "contractName"
              , (SELECT role_name FROM blade_role WHERE id = r.parent_id) as "roleType"
              , r.role_name                                               as "roleName"
+             , mpau.role_id                                              as "roleId"
         FROM m_project_assignment_user mpau
                  INNER JOIN blade_role r ON r.id = mpau.role_id
                  INNER JOIN m_contract_info ci ON ci.id = mpau.contract_id