feat:完成剩余修补尾巴
This commit is contained in:
parent
1c51ec78ab
commit
6fc717a186
|
@ -25,5 +25,5 @@ public @interface EnableReactiveMongoRepo {
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@AliasFor(annotation = EnableReactiveMongoRepositories.class)
|
@AliasFor(annotation = EnableReactiveMongoRepositories.class)
|
||||||
String[] basePackages() default "com.flyfish.framework";
|
String[] basePackages() default "com.flyfish";
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,12 +15,12 @@ public class DefaultReactiveRepositoryFactory extends ReactiveMongoRepositoryFac
|
||||||
*/
|
*/
|
||||||
public DefaultReactiveRepositoryFactory(ReactiveMongoOperations mongoOperations) {
|
public DefaultReactiveRepositoryFactory(ReactiveMongoOperations mongoOperations) {
|
||||||
super(mongoOperations);
|
super(mongoOperations);
|
||||||
this.setRepositoryBaseClass(DefaultReactiveRepositoryImpl.class);
|
this.setRepositoryBaseClass(DefaultReactiveRepositoryFactory.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@NonNull
|
@NonNull
|
||||||
protected Class<?> getRepositoryBaseClass(@NonNull RepositoryMetadata metadata) {
|
protected Class<?> getRepositoryBaseClass(@NonNull RepositoryMetadata metadata) {
|
||||||
return DefaultReactiveRepositoryImpl.class;
|
return DefaultReactiveRepositoryFactory.class;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,10 +4,14 @@ package com.flyfish.framework.dict.service;
|
||||||
import com.flyfish.framework.dict.domain.Dictionary;
|
import com.flyfish.framework.dict.domain.Dictionary;
|
||||||
import com.flyfish.framework.dict.repository.DictionaryRepository;
|
import com.flyfish.framework.dict.repository.DictionaryRepository;
|
||||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
||||||
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
|
import com.flyfish.framework.utils.RedisOperations;
|
||||||
|
import org.springframework.data.mongodb.core.MongoOperations;
|
||||||
|
import org.springframework.data.mongodb.core.query.Criteria;
|
||||||
|
import org.springframework.data.mongodb.core.query.Query;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -18,6 +22,13 @@ import java.util.Optional;
|
||||||
@Service
|
@Service
|
||||||
public class DictionaryService extends BaseReactiveServiceImpl<Dictionary> {
|
public class DictionaryService extends BaseReactiveServiceImpl<Dictionary> {
|
||||||
|
|
||||||
|
private final String DICT_KEY = "dict-";
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private MongoOperations mongoOperations;
|
||||||
|
@Resource
|
||||||
|
private RedisOperations redisOperations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过code查询
|
* 通过code查询
|
||||||
*
|
*
|
||||||
|
@ -27,4 +38,26 @@ public class DictionaryService extends BaseReactiveServiceImpl<Dictionary> {
|
||||||
DictionaryRepository repository = this.getRepository();
|
DictionaryRepository repository = this.getRepository();
|
||||||
return repository.findByCode(code);
|
return repository.findByCode(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过code同步查询
|
||||||
|
*
|
||||||
|
* @param code 编码
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public Optional<Dictionary> get(String code) {
|
||||||
|
String cacheKey = DICT_KEY + code;
|
||||||
|
if (redisOperations.hasKey(cacheKey)) {
|
||||||
|
return Optional.of(redisOperations.get(cacheKey)).map(obj -> (Dictionary) obj);
|
||||||
|
} else {
|
||||||
|
Dictionary dictionary = mongoOperations.findOne(Query.query(Criteria.where("code").is(code)).limit(1),
|
||||||
|
Dictionary.class);
|
||||||
|
if (null != dictionary) {
|
||||||
|
redisOperations.set(cacheKey, dictionary);
|
||||||
|
return Optional.of(dictionary);
|
||||||
|
} else {
|
||||||
|
return Optional.empty();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,6 +12,7 @@ import com.flyfish.framework.bean.Result;
|
||||||
import com.flyfish.framework.configuration.annotations.PagedQuery;
|
import com.flyfish.framework.configuration.annotations.PagedQuery;
|
||||||
import com.flyfish.framework.domain.base.Vo;
|
import com.flyfish.framework.domain.base.Vo;
|
||||||
import com.flyfish.framework.service.BaseReactiveService;
|
import com.flyfish.framework.service.BaseReactiveService;
|
||||||
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("#{uri}")
|
@RequestMapping("#{uri}")
|
||||||
|
|
Loading…
Reference in New Issue