feat: 规范化包,避免重复扫描仓库
This commit is contained in:
parent
0ec52fd90a
commit
1d67d20416
@ -31,5 +31,11 @@
|
||||
<groupId>com.flyfish.framework</groupId>
|
||||
<artifactId>flyfish-data-common</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
@ -1,27 +1,74 @@
|
||||
package com.flyfish.framework.mongodb.config;
|
||||
|
||||
import com.flyfish.framework.mongodb.config.annotations.EnableMongoRepo;
|
||||
import com.flyfish.framework.mongodb.config.annotations.EnableReactiveMongoRepo;
|
||||
import com.flyfish.framework.mongodb.operations.MongoReactiveEntityOperations;
|
||||
import com.flyfish.framework.mongodb.repository.factory.DefaultReactiveRepositoryFactoryBean;
|
||||
import com.flyfish.framework.mongodb.repository.factory.DefaultRepositoryFactoryBean;
|
||||
import com.flyfish.framework.mongodb.repository.impl.DefaultReactiveRepositoryImpl;
|
||||
import com.flyfish.framework.mongodb.repository.impl.DefaultRepositoryImpl;
|
||||
import com.flyfish.framework.repository.ReactiveEntityOperations;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.context.annotation.ImportSelector;
|
||||
import org.springframework.core.type.AnnotationMetadata;
|
||||
import org.springframework.data.mongodb.config.EnableMongoAuditing;
|
||||
import org.springframework.data.mongodb.config.EnableReactiveMongoAuditing;
|
||||
import org.springframework.data.mongodb.core.ReactiveMongoOperations;
|
||||
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
|
||||
import org.springframework.data.mongodb.repository.config.EnableReactiveMongoRepositories;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@EnableMongoRepositories(
|
||||
repositoryFactoryBeanClass = DefaultRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultRepositoryImpl.class
|
||||
)
|
||||
@EnableMongoAuditing
|
||||
@Configuration
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static com.flyfish.framework.mongodb.config.MongoDataConfig.MongoRepositoriesImportSelector;
|
||||
|
||||
@AutoConfiguration(before = MongoDataAutoConfiguration.class)
|
||||
@Import(MongoRepositoriesImportSelector.class)
|
||||
public class MongoDataConfig {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnBean(ReactiveMongoOperations.class)
|
||||
public ReactiveEntityOperations mongoReactiveEntityOperations(ReactiveMongoOperations reactiveMongoOperations) {
|
||||
return new MongoReactiveEntityOperations(reactiveMongoOperations);
|
||||
static class MongoRepositoriesImportSelector implements ImportSelector {
|
||||
|
||||
@Override
|
||||
@NonNull
|
||||
public String[] selectImports(@NonNull AnnotationMetadata annotationMetadata) {
|
||||
List<String> imports = new ArrayList<>();
|
||||
if (annotationMetadata.hasMetaAnnotation(EnableMongoRepo.class.getName())) {
|
||||
imports.add(MongoRepoConfig.class.getName());
|
||||
}
|
||||
if (annotationMetadata.hasMetaAnnotation(EnableReactiveMongoRepo.class.getName())) {
|
||||
imports.add(ReactiveMongoRepoConfig.class.getName());
|
||||
}
|
||||
return imports.toArray(new String[]{});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@EnableReactiveMongoRepositories(
|
||||
repositoryFactoryBeanClass = DefaultReactiveRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultReactiveRepositoryImpl.class,
|
||||
basePackages = "com.flyfish.framework.*.repository"
|
||||
)
|
||||
@EnableReactiveMongoAuditing
|
||||
public static class ReactiveMongoRepoConfig {
|
||||
|
||||
@Bean
|
||||
public ReactiveEntityOperations mongoReactiveEntityOperations(ReactiveMongoOperations reactiveMongoOperations) {
|
||||
return new MongoReactiveEntityOperations(reactiveMongoOperations);
|
||||
}
|
||||
}
|
||||
|
||||
@EnableMongoRepositories(
|
||||
repositoryFactoryBeanClass = DefaultRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultRepositoryImpl.class,
|
||||
basePackages = "com.flyfish.framework.*.repository"
|
||||
)
|
||||
@EnableMongoAuditing
|
||||
public static class MongoRepoConfig {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -3,7 +3,6 @@ package com.flyfish.framework.mongodb.config.annotations;
|
||||
import com.flyfish.framework.mongodb.repository.factory.DefaultRepositoryFactoryBean;
|
||||
import com.flyfish.framework.mongodb.repository.impl.DefaultRepositoryImpl;
|
||||
import org.springframework.core.annotation.AliasFor;
|
||||
import org.springframework.data.mongodb.config.EnableMongoAuditing;
|
||||
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
@ -12,7 +11,6 @@ import java.lang.annotation.*;
|
||||
repositoryFactoryBeanClass = DefaultRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultRepositoryImpl.class
|
||||
)
|
||||
@EnableMongoAuditing
|
||||
@Target({ElementType.TYPE})
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Documented
|
||||
|
@ -3,7 +3,6 @@ package com.flyfish.framework.mongodb.config.annotations;
|
||||
import com.flyfish.framework.mongodb.repository.factory.DefaultReactiveRepositoryFactoryBean;
|
||||
import com.flyfish.framework.mongodb.repository.impl.DefaultReactiveRepositoryImpl;
|
||||
import org.springframework.core.annotation.AliasFor;
|
||||
import org.springframework.data.mongodb.config.EnableReactiveMongoAuditing;
|
||||
import org.springframework.data.mongodb.repository.config.EnableReactiveMongoRepositories;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
@ -12,7 +11,6 @@ import java.lang.annotation.*;
|
||||
repositoryFactoryBeanClass = DefaultReactiveRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultReactiveRepositoryImpl.class
|
||||
)
|
||||
@EnableReactiveMongoAuditing
|
||||
@Target({ElementType.TYPE})
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Documented
|
||||
@ -25,5 +23,5 @@ public @interface EnableReactiveMongoRepo {
|
||||
* @return 结果
|
||||
*/
|
||||
@AliasFor(annotation = EnableReactiveMongoRepositories.class)
|
||||
String[] basePackages() default "com.flyfish";
|
||||
String[] basePackages() default {};
|
||||
}
|
||||
|
@ -0,0 +1,39 @@
|
||||
package com.flyfish.test.mongo;
|
||||
|
||||
import com.flyfish.test.mongo.repository.TestDO;
|
||||
import com.flyfish.test.mongo.repository.TestQO;
|
||||
import com.flyfish.test.mongo.repository.TestRepository;
|
||||
import com.flyfish.framework.mongodb.config.MongoDataConfig;
|
||||
import com.flyfish.framework.mongodb.config.annotations.EnableReactiveMongoRepo;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@ExtendWith(SpringExtension.class)
|
||||
@SpringBootTest(classes = MongoRepositoryTest.class)
|
||||
@SpringBootApplication(scanBasePackages = "com.flyfish.framework")
|
||||
@Import(MongoDataConfig.class)
|
||||
@EnableReactiveMongoRepo
|
||||
public class MongoRepositoryTest {
|
||||
|
||||
@Resource
|
||||
private TestRepository testRepository;
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
TestQO qo = new TestQO();
|
||||
qo.setName("名");
|
||||
TestDO test = new TestDO();
|
||||
test.setId("1");
|
||||
test.setCode("ttt");
|
||||
test.setName("测试名称");
|
||||
|
||||
System.out.println(testRepository.insert(test).block());
|
||||
System.out.println(testRepository.findAll(qo).collectList().block());
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package com.flyfish.test.mongo.repository;
|
||||
|
||||
import com.flyfish.framework.domain.base.AuditDomain;
|
||||
import lombok.Data;
|
||||
import org.springframework.data.mongodb.core.mapping.Document;
|
||||
|
||||
@Document("test")
|
||||
@Data
|
||||
public class TestDO extends AuditDomain {
|
||||
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
package com.flyfish.test.mongo.repository;
|
||||
|
||||
import com.flyfish.framework.domain.base.NameLikeQo;
|
||||
|
||||
public class TestQO extends NameLikeQo<TestDO> {
|
||||
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
package com.flyfish.test.mongo.repository;
|
||||
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
||||
|
||||
/**
|
||||
* 测试仓库
|
||||
*/
|
||||
public interface TestRepository extends DefaultReactiveRepository<TestDO> {
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
spring:
|
||||
data:
|
||||
mongodb:
|
||||
host: 127.0.0.1
|
||||
port: 27017
|
@ -0,0 +1 @@
|
||||
DROP TABLE IF EXISTS `test`;
|
@ -0,0 +1,14 @@
|
||||
CREATE TABLE IF NOT EXISTS `test`
|
||||
(
|
||||
`id` VARCHAR(36) NOT NULL COMMENT '主键',
|
||||
`code` VARCHAR(32) NOT NULL COMMENT '编码',
|
||||
`name` VARCHAR(100) NOT NULL COMMENT '名称',
|
||||
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`modify_time` DATETIME NOT NULL COMMENT '修改时间',
|
||||
`creator` VARCHAR(36) NULL COMMENT '创建人名称',
|
||||
`creator_id` VARCHAR(36) NULL COMMENT '创建人id',
|
||||
`modifier` VARCHAR(36) NULL COMMENT '修改人名称',
|
||||
`modifier_id` VARCHAR(36) NULL COMMENT '修改人id',
|
||||
`delete` BIT(1) NOT NULL DEFAULT b'0',
|
||||
PRIMARY KEY (`id`)
|
||||
) COMMENT '测试表';
|
@ -29,7 +29,7 @@ import java.util.Optional;
|
||||
@EnableR2dbcRepositories(
|
||||
repositoryFactoryBeanClass = DefaultReactiveRepositoryFactoryBean.class,
|
||||
repositoryBaseClass = DefaultReactiveRepositoryImpl.class,
|
||||
basePackages = "com.flyfish.framework"
|
||||
basePackages = "com.flyfish.framework.*.repository"
|
||||
)
|
||||
@EnableR2dbcAuditing
|
||||
@AutoConfiguration(before = R2dbcAutoConfiguration.class)
|
||||
|
@ -0,0 +1,17 @@
|
||||
package com.flyfish.framework.r2dbc.query.fill;
|
||||
|
||||
import com.flyfish.framework.domain.base.Domain;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
/**
|
||||
* r2dbc引用填充
|
||||
*
|
||||
* @author wangyu
|
||||
*/
|
||||
public interface R2dbcReferenceFiller {
|
||||
|
||||
<T extends Domain> Flux<T> fill(Flux<T> beans);
|
||||
|
||||
<T extends Domain> Mono<T> fill(Mono<T> bean);
|
||||
}
|
@ -13,10 +13,12 @@ import org.springframework.data.domain.Sort;
|
||||
import org.springframework.data.r2dbc.convert.R2dbcConverter;
|
||||
import org.springframework.data.r2dbc.core.R2dbcEntityOperations;
|
||||
import org.springframework.data.r2dbc.repository.support.SimpleR2dbcRepository;
|
||||
import org.springframework.data.relational.core.mapping.RelationalPersistentEntity;
|
||||
import org.springframework.data.relational.core.query.Criteria;
|
||||
import org.springframework.data.relational.core.query.Query;
|
||||
import org.springframework.data.relational.repository.query.RelationalEntityInformation;
|
||||
import org.springframework.data.repository.core.EntityInformation;
|
||||
import org.springframework.data.util.Lazy;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.util.Assert;
|
||||
import reactor.core.publisher.Flux;
|
||||
@ -38,6 +40,8 @@ public class DefaultReactiveRepositoryImpl<T extends Domain> extends SimpleR2dbc
|
||||
|
||||
private final R2dbcEntityOperations entityOperations;
|
||||
|
||||
private final Lazy<RelationalPersistentEntity<T>> persistentEntity;
|
||||
|
||||
/**
|
||||
* 构造新的默认仓库
|
||||
*
|
||||
@ -49,6 +53,9 @@ public class DefaultReactiveRepositoryImpl<T extends Domain> extends SimpleR2dbc
|
||||
super(entity, entityOperations, converter);
|
||||
this.entity = entity;
|
||||
this.entityOperations = entityOperations;
|
||||
this.persistentEntity = Lazy.of(() -> (RelationalPersistentEntity<T>) converter
|
||||
.getMappingContext()
|
||||
.getRequiredPersistentEntity(this.entity.getJavaType()));
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,22 +1,17 @@
|
||||
package com.flyfish.framework.r2dbc;
|
||||
|
||||
import com.flyfish.framework.query.Queries;
|
||||
import com.flyfish.framework.r2dbc.config.R2dbcDataConfig;
|
||||
import com.flyfish.framework.r2dbc.config.annotations.EnableR2dbcRepo;
|
||||
import com.flyfish.framework.r2dbc.repository.TestDO;
|
||||
import com.flyfish.framework.r2dbc.repository.TestQO;
|
||||
import com.flyfish.framework.r2dbc.repository.TestRepository;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Arrays;
|
||||
|
||||
@ExtendWith(SpringExtension.class)
|
||||
@SpringBootTest(classes = R2DbcRepositoryTest.class)
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.flyfish.framework.annotations;
|
||||
package com.flyfish.framework.user.annotations;
|
||||
|
||||
import com.flyfish.framework.config.WebSecurityConfig;
|
||||
import com.flyfish.framework.user.config.WebSecurityConfig;
|
||||
import com.flyfish.framework.configuration.redis.EnableReactiveRedis;
|
||||
import org.springframework.context.annotation.Import;
|
||||
|
@ -1,11 +1,11 @@
|
||||
package com.flyfish.framework.config;
|
||||
package com.flyfish.framework.user.config;
|
||||
|
||||
import com.flyfish.framework.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.user.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.service.AuthenticationAuditor;
|
||||
import com.flyfish.framework.service.AuthenticationLogger;
|
||||
import com.flyfish.framework.service.UserService;
|
||||
import com.flyfish.framework.user.service.UserService;
|
||||
import com.flyfish.framework.transform.ResultDataTransformer;
|
||||
import org.springframework.security.authentication.BadCredentialsException;
|
||||
import org.springframework.security.core.AuthenticationException;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.config;
|
||||
package com.flyfish.framework.user.config;
|
||||
|
||||
/**
|
||||
* rsa密钥,使用PKCS8的私钥格式
|
@ -1,22 +1,22 @@
|
||||
package com.flyfish.framework.config;
|
||||
package com.flyfish.framework.user.config;
|
||||
|
||||
import com.flyfish.framework.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.config.converter.EncryptedAuthenticationConverter;
|
||||
import com.flyfish.framework.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.user.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.user.config.converter.EncryptedAuthenticationConverter;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.configuration.jwt.JwtProperties;
|
||||
import com.flyfish.framework.configuration.jwt.JwtSecurityContextRepository;
|
||||
import com.flyfish.framework.configuration.jwt.TokenProvider;
|
||||
import com.flyfish.framework.domain.UserQo;
|
||||
import com.flyfish.framework.user.domain.UserQo;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.enums.UserType;
|
||||
import com.flyfish.framework.handler.JsonAuthenticationFailureHandler;
|
||||
import com.flyfish.framework.handler.JsonAuthenticationSuccessHandler;
|
||||
import com.flyfish.framework.handler.JsonLogoutSuccessHandler;
|
||||
import com.flyfish.framework.initializer.UserInitializer;
|
||||
import com.flyfish.framework.user.initializer.UserInitializer;
|
||||
import com.flyfish.framework.service.AuthenticationAuditor;
|
||||
import com.flyfish.framework.service.AuthenticationLogger;
|
||||
import com.flyfish.framework.service.UserService;
|
||||
import com.flyfish.framework.user.service.UserService;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
import org.springframework.beans.factory.ObjectProvider;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.config.audit;
|
||||
package com.flyfish.framework.user.config.audit;
|
||||
|
||||
import com.flyfish.framework.utils.UserUtils;
|
||||
import org.springframework.data.domain.ReactiveAuditorAware;
|
@ -1,8 +1,8 @@
|
||||
package com.flyfish.framework.config.audit;
|
||||
package com.flyfish.framework.user.config.audit;
|
||||
|
||||
import com.flyfish.framework.auditor.ReactiveBeanPoster;
|
||||
import com.flyfish.framework.domain.po.Role;
|
||||
import com.flyfish.framework.service.UserDetailsConverter;
|
||||
import com.flyfish.framework.user.service.UserDetailsConverter;
|
||||
import com.flyfish.framework.utils.ReactiveRedisOperations;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.config.audit;
|
||||
package com.flyfish.framework.user.config.audit;
|
||||
|
||||
import com.flyfish.framework.context.UserContext;
|
||||
import com.flyfish.framework.domain.base.Domain;
|
@ -1,14 +1,14 @@
|
||||
package com.flyfish.framework.config.audit;
|
||||
package com.flyfish.framework.user.config.audit;
|
||||
|
||||
import com.flyfish.framework.auditor.ReactiveBeanAuditor;
|
||||
import com.flyfish.framework.auditor.ReactiveBeanPoster;
|
||||
import com.flyfish.framework.config.constants.UserCacheKeys;
|
||||
import com.flyfish.framework.user.service.UserDetailsConverter;
|
||||
import com.flyfish.framework.user.utils.StrengthUtils;
|
||||
import com.flyfish.framework.user.config.constants.UserCacheKeys;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserType;
|
||||
import com.flyfish.framework.service.UserDetailsConverter;
|
||||
import com.flyfish.framework.utils.Assert;
|
||||
import com.flyfish.framework.utils.ReactiveRedisOperations;
|
||||
import com.flyfish.framework.utils.StrengthUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
@ -1,13 +1,11 @@
|
||||
package com.flyfish.framework.config.captcha;
|
||||
package com.flyfish.framework.user.config.captcha;
|
||||
|
||||
import com.dingxianginc.ctu.client.CaptchaClient;
|
||||
import com.dingxianginc.ctu.client.model.CaptchaResponse;
|
||||
import com.flyfish.framework.config.properties.SecurityProperties;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.BooleanUtils;
|
||||
import org.springframework.security.authentication.BadCredentialsException;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* 顶象验证码验证器
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.config.constants;
|
||||
package com.flyfish.framework.user.config.constants;
|
||||
|
||||
public interface UserCacheKeys {
|
||||
|
@ -1,9 +1,9 @@
|
||||
package com.flyfish.framework.config.converter;
|
||||
package com.flyfish.framework.user.config.converter;
|
||||
|
||||
import com.flyfish.framework.config.RSAKeys;
|
||||
import com.flyfish.framework.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.utils.RSAUtils;
|
||||
import com.flyfish.framework.user.config.RSAKeys;
|
||||
import com.flyfish.framework.user.utils.RSAUtils;
|
||||
import com.flyfish.framework.user.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import lombok.val;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.config.properties;
|
||||
package com.flyfish.framework.user.config.properties;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
@ -1,12 +1,12 @@
|
||||
package com.flyfish.framework.controller;
|
||||
package com.flyfish.framework.user.controller;
|
||||
|
||||
import com.flyfish.framework.bean.Result;
|
||||
import com.flyfish.framework.controller.reactive.ReactiveTreeController;
|
||||
import com.flyfish.framework.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.domain.DepartmentQo;
|
||||
import com.flyfish.framework.user.service.DepartmentService;
|
||||
import com.flyfish.framework.user.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.user.domain.DepartmentQo;
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.enums.UserType;
|
||||
import com.flyfish.framework.service.DepartmentService;
|
||||
import com.flyfish.framework.utils.DepartUtils;
|
||||
import com.flyfish.framework.utils.UserUtils;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
@ -1,13 +1,9 @@
|
||||
package com.flyfish.framework.controller;
|
||||
package com.flyfish.framework.user.controller;
|
||||
|
||||
import com.flyfish.framework.bean.Result;
|
||||
import com.flyfish.framework.config.RSAKeys;
|
||||
import com.flyfish.framework.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.configuration.annotations.CurrentUser;
|
||||
import com.flyfish.framework.user.config.RSAKeys;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.configuration.jwt.TokenProvider;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.utils.UserUtils;
|
||||
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.context.ReactiveSecurityContextHolder;
|
||||
import org.springframework.web.bind.annotation.*;
|
@ -1,7 +1,7 @@
|
||||
package com.flyfish.framework.controller;
|
||||
package com.flyfish.framework.user.controller;
|
||||
|
||||
import com.flyfish.framework.controller.reactive.ReactiveTreeController;
|
||||
import com.flyfish.framework.domain.PermissionQo;
|
||||
import com.flyfish.framework.user.domain.PermissionQo;
|
||||
import com.flyfish.framework.domain.po.Permission;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
@ -1,7 +1,7 @@
|
||||
package com.flyfish.framework.controller;
|
||||
package com.flyfish.framework.user.controller;
|
||||
|
||||
import com.flyfish.framework.controller.reactive.ReactiveBaseController;
|
||||
import com.flyfish.framework.domain.RoleQo;
|
||||
import com.flyfish.framework.user.domain.RoleQo;
|
||||
import com.flyfish.framework.domain.po.Role;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
@ -1,18 +1,18 @@
|
||||
package com.flyfish.framework.controller;
|
||||
package com.flyfish.framework.user.controller;
|
||||
|
||||
import com.flyfish.framework.annotations.Operation;
|
||||
import com.flyfish.framework.bean.Result;
|
||||
import com.flyfish.framework.configuration.annotations.CurrentUser;
|
||||
import com.flyfish.framework.controller.reactive.ReactiveBaseController;
|
||||
import com.flyfish.framework.domain.UserPasswordDto;
|
||||
import com.flyfish.framework.domain.UserQo;
|
||||
import com.flyfish.framework.user.utils.StrengthUtils;
|
||||
import com.flyfish.framework.user.domain.UserPasswordDto;
|
||||
import com.flyfish.framework.user.domain.UserQo;
|
||||
import com.flyfish.framework.domain.base.IUser;
|
||||
import com.flyfish.framework.domain.po.Role;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.service.UserService;
|
||||
import com.flyfish.framework.user.service.UserService;
|
||||
import com.flyfish.framework.utils.Assert;
|
||||
import com.flyfish.framework.utils.StrengthUtils;
|
||||
import com.flyfish.framework.utils.UserUtils;
|
||||
import org.springframework.security.core.context.ReactiveSecurityContextHolder;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.domain.tree.TreeQo;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
|
||||
import com.flyfish.framework.domain.po.Permission;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import com.flyfish.framework.domain.base.NameLikeQo;
|
||||
import com.flyfish.framework.domain.po.Role;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import com.flyfish.framework.validation.annotations.Password;
|
||||
import lombok.Getter;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.domain;
|
||||
package com.flyfish.framework.user.domain;
|
||||
|
||||
import com.flyfish.framework.domain.base.NameLikeQo;
|
||||
import com.flyfish.framework.domain.po.User;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.initializer;
|
||||
package com.flyfish.framework.user.initializer;
|
||||
|
||||
import org.springframework.beans.factory.InitializingBean;
|
||||
|
@ -1,6 +1,7 @@
|
||||
package com.flyfish.framework.repository;
|
||||
package com.flyfish.framework.user.repository;
|
||||
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
||||
|
||||
/**
|
||||
* 部门仓库
|
@ -1,7 +1,8 @@
|
||||
package com.flyfish.framework.repository;
|
||||
package com.flyfish.framework.user.repository;
|
||||
|
||||
|
||||
import com.flyfish.framework.domain.po.Permission;
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
||||
|
||||
/**
|
||||
* 权限仓库
|
@ -1,6 +1,7 @@
|
||||
package com.flyfish.framework.repository;
|
||||
package com.flyfish.framework.user.repository;
|
||||
|
||||
import com.flyfish.framework.domain.po.Role;
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
||||
|
||||
/**
|
||||
* 角色仓库
|
@ -1,6 +1,7 @@
|
||||
package com.flyfish.framework.repository;
|
||||
package com.flyfish.framework.user.repository;
|
||||
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
/**
|
@ -1,6 +1,7 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.service.BaseReactiveService;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import java.util.Set;
|
@ -1,9 +1,10 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
import com.flyfish.framework.config.constants.UserCacheKeys;
|
||||
import com.flyfish.framework.user.config.constants.UserCacheKeys;
|
||||
import com.flyfish.framework.configuration.jwt.TokenProvider;
|
||||
import com.flyfish.framework.domain.base.IUser;
|
||||
import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.service.FlyfishUserDetailsService;
|
||||
import com.flyfish.framework.utils.Assert;
|
||||
import com.flyfish.framework.utils.ReactiveRedisOperations;
|
||||
import lombok.RequiredArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
|
||||
import com.flyfish.framework.domain.po.Permission;
|
@ -1,8 +1,8 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
|
||||
import com.flyfish.framework.domain.PermissionQo;
|
||||
import com.flyfish.framework.domain.RoleQo;
|
||||
import com.flyfish.framework.user.domain.PermissionQo;
|
||||
import com.flyfish.framework.user.domain.RoleQo;
|
||||
import com.flyfish.framework.domain.base.Domain;
|
||||
import com.flyfish.framework.domain.base.IUser;
|
||||
import com.flyfish.framework.domain.base.Qo;
|
@ -1,6 +1,6 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
import com.flyfish.framework.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.user.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.domain.base.IUser;
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.domain.po.Role;
|
@ -1,11 +1,12 @@
|
||||
package com.flyfish.framework.service;
|
||||
package com.flyfish.framework.user.service;
|
||||
|
||||
import com.flyfish.framework.domain.UserQo;
|
||||
import com.flyfish.framework.user.repository.UserRepository;
|
||||
import com.flyfish.framework.user.domain.UserQo;
|
||||
import com.flyfish.framework.domain.authorized.AuthorizedUserDetails;
|
||||
import com.flyfish.framework.domain.base.Qo;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserType;
|
||||
import com.flyfish.framework.repository.UserRepository;
|
||||
import com.flyfish.framework.service.UserFindService;
|
||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.data.domain.Page;
|
@ -1,7 +1,7 @@
|
||||
package com.flyfish.framework.service.impl;
|
||||
package com.flyfish.framework.user.service.impl;
|
||||
|
||||
import com.flyfish.framework.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.domain.DepartmentQo;
|
||||
import com.flyfish.framework.user.domain.AdminUserDetails;
|
||||
import com.flyfish.framework.user.domain.DepartmentQo;
|
||||
import com.flyfish.framework.domain.base.Qo;
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.enums.UserType;
|
@ -1,9 +1,10 @@
|
||||
package com.flyfish.framework.service.impl;
|
||||
package com.flyfish.framework.user.service.impl;
|
||||
|
||||
import com.flyfish.framework.domain.base.Qo;
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.domain.tree.TreeDomain;
|
||||
import com.flyfish.framework.service.DepartmentService;
|
||||
import com.flyfish.framework.user.service.DepartmentService;
|
||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.data.mongodb.core.ReactiveMongoOperations;
|
||||
@ -19,8 +20,6 @@ import java.util.Collection;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.flyfish.framework.service.impl.DepartmentServiceHelper.convertQo;
|
||||
|
||||
/**
|
||||
* 部门服务
|
||||
*
|
||||
@ -53,7 +52,7 @@ public class MongoDepartmentServiceImpl extends BaseReactiveServiceImpl<Departme
|
||||
*/
|
||||
@Override
|
||||
public Flux<Department> getList(Qo<Department> query) {
|
||||
return convertQo(query, this::getMinDepthInIds).flatMapMany(super::getList);
|
||||
return DepartmentServiceHelper.convertQo(query, this::getMinDepthInIds).flatMapMany(super::getList);
|
||||
}
|
||||
|
||||
/**
|
@ -1,8 +1,9 @@
|
||||
package com.flyfish.framework.service.impl;
|
||||
package com.flyfish.framework.user.service.impl;
|
||||
|
||||
import com.flyfish.framework.domain.base.Qo;
|
||||
import com.flyfish.framework.domain.po.Department;
|
||||
import com.flyfish.framework.service.DepartmentService;
|
||||
import com.flyfish.framework.user.service.DepartmentService;
|
||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.data.r2dbc.core.R2dbcEntityOperations;
|
||||
@ -17,7 +18,7 @@ import java.util.Collection;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.flyfish.framework.service.impl.DepartmentServiceHelper.convertQo;
|
||||
import static com.flyfish.framework.user.service.impl.DepartmentServiceHelper.convertQo;
|
||||
|
||||
/**
|
||||
* 部门服务
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.utils;
|
||||
package com.flyfish.framework.user.utils;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.lang.Nullable;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.utils;
|
||||
package com.flyfish.framework.user.utils;
|
||||
|
||||
import com.flyfish.framework.validation.validators.PasswordValidator;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.beans.excel;
|
||||
package com.flyfish.framework.excel;
|
||||
|
||||
|
||||
import com.flyfish.framework.controller.reactive.ReactiveBaseController;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.beans.excel;
|
||||
package com.flyfish.framework.excel;
|
||||
|
||||
import com.flyfish.framework.domain.po.ExcelMapping;
|
||||
import com.flyfish.framework.repository.DefaultReactiveRepository;
|
@ -1,4 +1,4 @@
|
||||
package com.flyfish.framework.beans.excel;
|
||||
package com.flyfish.framework.excel;
|
||||
|
||||
import com.flyfish.framework.domain.po.ExcelMapping;
|
||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
Loading…
x
Reference in New Issue
Block a user