feat: 新增批量删除接口
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminMenuController.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminMenuController.java
index 4bc4cb8..3c3a832 100644
--- a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminMenuController.java
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminMenuController.java
@@ -25,9 +25,11 @@
import com.supwisdom.institute.backend.common.framework.entity.EntityUtils;
import com.supwisdom.institute.backend.common.framework.vo.response.DefaultApiResponse;
import com.supwisdom.institute.backend.system.api.vo.request.PermissionCreateRequest;
+import com.supwisdom.institute.backend.system.api.vo.request.PermissionDeleteBatchRequest;
import com.supwisdom.institute.backend.system.api.vo.request.PermissionQueryRequest;
import com.supwisdom.institute.backend.system.api.vo.request.PermissionUpdateRequest;
import com.supwisdom.institute.backend.system.api.vo.response.PermissionCreateResponseData;
+import com.supwisdom.institute.backend.system.api.vo.response.PermissionDeleteBatchResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.PermissionLoadResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.PermissionQueryResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.PermissionRemoveResponseData;
@@ -164,6 +166,21 @@
return new DefaultApiResponse<PermissionRemoveResponseData>(data);
}
+
+ @DeleteMapping(path = "/batch", consumes = MimeTypeUtils.APPLICATION_JSON_VALUE, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ @ResponseBody
+ public DefaultApiResponse<PermissionDeleteBatchResponseData> deleteBatch(
+ @RequestBody PermissionDeleteBatchRequest deleteBatchRequest) {
+
+ System.out.println(deleteBatchRequest.getIds());
+ List<String> ids = deleteBatchRequest.getIds();
+
+ permissionService.deleteBatch(ids);
+
+ PermissionDeleteBatchResponseData data = PermissionDeleteBatchResponseData.build(ids);
+ return new DefaultApiResponse<PermissionDeleteBatchResponseData>(data);
+ }
@GetMapping(path = "/tree", produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
@ResponseStatus(value = HttpStatus.OK)
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminRoleController.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminRoleController.java
index b64adda..a198eeb 100644
--- a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminRoleController.java
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminRoleController.java
@@ -1,6 +1,7 @@
package com.supwisdom.institute.backend.system.api.v1.admin;
import java.util.HashMap;
+import java.util.List;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
@@ -24,6 +25,7 @@
import com.supwisdom.institute.backend.common.framework.entity.EntityUtils;
import com.supwisdom.institute.backend.common.framework.vo.response.DefaultApiResponse;
import com.supwisdom.institute.backend.system.api.vo.request.RoleCreateRequest;
+import com.supwisdom.institute.backend.system.api.vo.request.RoleDeleteBatchRequest;
import com.supwisdom.institute.backend.system.api.vo.request.RoleRelateAccountsRequest;
import com.supwisdom.institute.backend.system.api.vo.request.RoleRelateGroupsRequest;
import com.supwisdom.institute.backend.system.api.vo.request.RoleRelatePermissionsRequest;
@@ -33,6 +35,7 @@
import com.supwisdom.institute.backend.system.api.vo.request.RoleUpdateRequest;
import com.supwisdom.institute.backend.system.api.vo.request.RoleQueryRequest;
import com.supwisdom.institute.backend.system.api.vo.response.RoleCreateResponseData;
+import com.supwisdom.institute.backend.system.api.vo.response.RoleDeleteBatchResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.RoleLoadResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.RoleRelateAccountsResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.RoleRelateGroupsResponseData;
@@ -161,6 +164,21 @@
return new DefaultApiResponse<RoleRemoveResponseData>(data);
}
+ @DeleteMapping(path = "/batch", consumes = MimeTypeUtils.APPLICATION_JSON_VALUE, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ @ResponseBody
+ public DefaultApiResponse<RoleDeleteBatchResponseData> deleteBatch(
+ @RequestBody RoleDeleteBatchRequest deleteBatchRequest) {
+
+ System.out.println(deleteBatchRequest.getIds());
+ List<String> ids = deleteBatchRequest.getIds();
+
+ roleService.deleteBatch(ids);
+
+ RoleDeleteBatchResponseData data = RoleDeleteBatchResponseData.build(ids);
+ return new DefaultApiResponse<RoleDeleteBatchResponseData>(data);
+ }
+
@RequestMapping(method = RequestMethod.GET, path = "/{id}/accounts", produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
@ResponseBody
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/PermissionDeleteBatchRequest.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/PermissionDeleteBatchRequest.java
new file mode 100644
index 0000000..d868006
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/PermissionDeleteBatchRequest.java
@@ -0,0 +1,21 @@
+package com.supwisdom.institute.backend.system.api.vo.request;
+
+import java.util.List;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import com.supwisdom.institute.backend.common.framework.vo.request.IApiRequest;
+
+public class PermissionDeleteBatchRequest implements IApiRequest {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -9180558051324597595L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+}
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/RoleDeleteBatchRequest.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/RoleDeleteBatchRequest.java
new file mode 100644
index 0000000..14f65d3
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/RoleDeleteBatchRequest.java
@@ -0,0 +1,21 @@
+package com.supwisdom.institute.backend.system.api.vo.request;
+
+import java.util.List;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import com.supwisdom.institute.backend.common.framework.vo.request.IApiRequest;
+
+public class RoleDeleteBatchRequest implements IApiRequest {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 3121491905067659896L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+}
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/PermissionDeleteBatchResponseData.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/PermissionDeleteBatchResponseData.java
new file mode 100644
index 0000000..2923725
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/PermissionDeleteBatchResponseData.java
@@ -0,0 +1,35 @@
+package com.supwisdom.institute.backend.system.api.vo.response;
+
+import java.util.List;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import com.supwisdom.institute.backend.common.framework.vo.response.data.IApiResponseData;
+
+/**
+ * @author loie
+ */
+public class PermissionDeleteBatchResponseData implements IApiResponseData {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -7406287471651267066L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+ private PermissionDeleteBatchResponseData() {
+
+ }
+
+ public static PermissionDeleteBatchResponseData build(List<String> ids) {
+ PermissionDeleteBatchResponseData data = new PermissionDeleteBatchResponseData();
+ data.setIds(ids);
+
+ return data;
+ }
+
+}
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/RoleDeleteBatchResponseData.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/RoleDeleteBatchResponseData.java
new file mode 100644
index 0000000..c7a6ac0
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/RoleDeleteBatchResponseData.java
@@ -0,0 +1,35 @@
+package com.supwisdom.institute.backend.system.api.vo.response;
+
+import java.util.List;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import com.supwisdom.institute.backend.common.framework.vo.response.data.IApiResponseData;
+
+/**
+ * @author loie
+ */
+public class RoleDeleteBatchResponseData implements IApiResponseData {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -7775951512990321469L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+ private RoleDeleteBatchResponseData() {
+
+ }
+
+ public static RoleDeleteBatchResponseData build(List<String> ids) {
+ RoleDeleteBatchResponseData data = new RoleDeleteBatchResponseData();
+ data.setIds(ids);
+
+ return data;
+ }
+
+}
diff --git a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/PermissionService.java b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/PermissionService.java
index d7ebd1e..ff2f7f2 100644
--- a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/PermissionService.java
+++ b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/PermissionService.java
@@ -29,6 +29,13 @@
@Autowired
private PermissionRepository permissionRepository;
+ public void deleteBatch(List<String> ids) {
+
+ ids.stream().forEach(id -> {
+ this.deleteById(id);
+ });
+ }
+
public PermissionTreeNode selectPermissionTree(Map<String, Object> mapBean) {
List<Permission> permissions = permissionRepository.selectList(true, -1, -1, mapBean, null);
diff --git a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/RoleService.java b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/RoleService.java
index 068eeeb..5b533df 100644
--- a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/RoleService.java
+++ b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/RoleService.java
@@ -44,6 +44,13 @@
+ public void deleteBatch(List<String> ids) {
+
+ ids.stream().forEach(id -> {
+ this.deleteById(id);
+ });
+ }
+
public Page<AccountRole> selectRoleAccounts(int pageIndex, int pageSize, Map<String, Object> mapBean) {
AccountRole probe = new AccountRole();