fix: 完善帐号管理接口
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminAccountController.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminAccountController.java
index 0d5f4d6..dbb8dda 100644
--- a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminAccountController.java
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/v1/admin/AdminAccountController.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.AccountCreateRequest;
+import com.supwisdom.institute.backend.system.api.vo.request.AccountDeleteBatchRequest;
import com.supwisdom.institute.backend.system.api.vo.request.AccountQueryRequest;
import com.supwisdom.institute.backend.system.api.vo.request.AccountRelateGroupsRequest;
import com.supwisdom.institute.backend.system.api.vo.request.AccountRelateRolesRequest;
@@ -31,6 +33,7 @@
import com.supwisdom.institute.backend.system.api.vo.request.AccountRelatedRolesRequest;
import com.supwisdom.institute.backend.system.api.vo.request.AccountUpdateRequest;
import com.supwisdom.institute.backend.system.api.vo.response.AccountCreateResponseData;
+import com.supwisdom.institute.backend.system.api.vo.response.AccountDeleteBatchResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.AccountLoadResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.AccountQueryResponseData;
import com.supwisdom.institute.backend.system.api.vo.response.AccountRelateGroupsResponseData;
@@ -414,6 +417,21 @@
AccountRemoveResponseData data = AccountRemoveResponseData.build(tmp);
return new DefaultApiResponse<AccountRemoveResponseData>(data);
}
+
+ @DeleteMapping(path = "/batch", consumes = MimeTypeUtils.APPLICATION_JSON_VALUE, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ @ResponseBody
+ public DefaultApiResponse<AccountDeleteBatchResponseData> deleteBatch(
+ @RequestBody AccountDeleteBatchRequest deleteBatchRequest) {
+
+ System.out.println(deleteBatchRequest.getIds());
+ List<String> ids = deleteBatchRequest.getIds();
+
+ accountService.deleteBatch(ids);
+
+ AccountDeleteBatchResponseData data = AccountDeleteBatchResponseData.build(ids);
+ return new DefaultApiResponse<AccountDeleteBatchResponseData>(data);
+ }
/**
*
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/AccountDeleteBatchRequest.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/AccountDeleteBatchRequest.java
new file mode 100644
index 0000000..5b5df24
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/request/AccountDeleteBatchRequest.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 AccountDeleteBatchRequest implements IApiRequest {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -5886243153431313069L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+}
diff --git a/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/AccountDeleteBatchResponseData.java b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/AccountDeleteBatchResponseData.java
new file mode 100644
index 0000000..f712942
--- /dev/null
+++ b/system/api/src/main/java/com/supwisdom/institute/backend/system/api/vo/response/AccountDeleteBatchResponseData.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 AccountDeleteBatchResponseData implements IApiResponseData {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 8625399816385346436L;
+
+ @Getter
+ @Setter
+ private List<String> ids;
+
+ private AccountDeleteBatchResponseData() {
+
+ }
+
+ public static AccountDeleteBatchResponseData build(List<String> ids) {
+ AccountDeleteBatchResponseData data = new AccountDeleteBatchResponseData();
+ data.setIds(ids);
+
+ return data;
+ }
+
+}
diff --git a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/entity/Account.java b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/entity/Account.java
index 71e863f..d241d32 100644
--- a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/entity/Account.java
+++ b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/entity/Account.java
@@ -14,6 +14,10 @@
*
*/
private static final long serialVersionUID = 7955624268022038897L;
+
+ public static final String STATUS_ENABLED = "1";
+ public static final String STATUS_DISABLED = "0";
+
/**
* 用户名
@@ -53,7 +57,13 @@
*/
@Column(name = "NAME")
private String name;
-
+
+ /**
+ * 备注
+ */
+ @Column(name = "MEMO")
+ private String memo;
+
/**
* 状态(1 启用,0 停用)
*/
diff --git a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/AccountService.java b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/AccountService.java
index 83405ae..9e29e31 100644
--- a/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/AccountService.java
+++ b/system/domain/src/main/java/com/supwisdom/institute/backend/system/domain/service/AccountService.java
@@ -36,8 +36,35 @@
@Autowired
private AccountRoleRepository accountRoleRepository;
-
+
+ @Override
+ public Account insert(Account entity) {
+
+ entity.setEnabled(Account.STATUS_ENABLED.equals(entity.getStatus()));
+ entity.setAccountNonExpired(true);
+ entity.setAccountNonLocked(true);
+ entity.setCredentialsNonExpired(true);
+
+ return super.insert(entity);
+ }
+
+ @Override
+ public Account update(Account entity) {
+
+ entity.setEnabled(Account.STATUS_ENABLED.equals(entity.getStatus()));
+
+ return super.update(entity);
+ }
+
+
+ public void deleteBatch(List<String> ids) {
+
+ ids.stream().forEach(id -> {
+ this.deleteById(id);
+ });
+ }
+
public Page<AccountGroup> selectAccountGroups(int pageIndex, int pageSize, Map<String, Object> mapBean) {