优化删除接口,增加用户删除事件

This commit is contained in:
zhou-hao
2020-03-09 09:55:53 +08:00
parent b12609211e
commit c07c4b1e06
3 changed files with 24 additions and 2 deletions

View File

@@ -45,6 +45,7 @@ public class UserEntity extends GenericEntity<String> implements RecordCreationE
private String type;
@Column
@DefaultValue("1")
private Byte status;
@Column(name = "creator_id", updatable = false)

View File

@@ -0,0 +1,17 @@
package org.hswebframework.web.system.authorization.api.event;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hswebframework.web.system.authorization.api.entity.UserEntity;
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class UserDeletedEvent {
private UserEntity user;
}

View File

@@ -10,6 +10,7 @@ import org.hswebframework.web.id.IDGenerator;
import org.hswebframework.web.system.authorization.api.PasswordEncoder;
import org.hswebframework.web.system.authorization.api.entity.UserEntity;
import org.hswebframework.web.system.authorization.api.event.UserCreatedEvent;
import org.hswebframework.web.system.authorization.api.event.UserDeletedEvent;
import org.hswebframework.web.system.authorization.api.event.UserModifiedEvent;
import org.hswebframework.web.system.authorization.api.service.reactive.ReactiveUserService;
import org.hswebframework.web.validator.CreateGroup;
@@ -165,7 +166,10 @@ public class DefaultReactiveUserService extends GenericReactiveCrudService<UserE
@Override
public Mono<Boolean> deleteUser(String userId) {
return deleteById(Mono.just(userId))
.map(integer -> integer > 0);
return this.findById(userId)
.flatMap(user -> this
.deleteById(Mono.just(userId))
.doOnNext(i -> eventPublisher.publishEvent(new UserDeletedEvent(user)))
.thenReturn(true));
}
}