Search in sources :

Example 1 with Wraps

use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.

the class ApplicationServiceImpl method getByClient.

@Override
public ApplicationDo getByClient(String clientId, String clientSecret) {
    LbqWrapper<ApplicationDo> wrapper = Wraps.<ApplicationDo>lbQ().select(ApplicationDo::getId).eq(ApplicationDo::getClientId, clientId).eq(ApplicationDo::getClientSecret, clientSecret);
    Function<CacheKey, Object> loader = k -> super.getObj(wrapper, Convert::toLong);
    CacheKey cacheKey = new ApplicationClientCacheKeyBuilder().key(clientId, clientSecret);
    return getByKey(cacheKey, loader);
}
Also used : Wraps(com.albedo.java.plugins.database.mybatis.conditions.Wraps) ApplicationClientCacheKeyBuilder(com.albedo.java.modules.sys.cache.ApplicationClientCacheKeyBuilder) ApplicationDo(com.albedo.java.modules.sys.domain.ApplicationDo) LbqWrapper(com.albedo.java.plugins.database.mybatis.conditions.query.LbqWrapper) ApplicationDto(com.albedo.java.modules.sys.domain.dto.ApplicationDto) CacheKeyBuilder(com.albedo.java.common.core.cache.model.CacheKeyBuilder) Function(java.util.function.Function) ApplicationService(com.albedo.java.modules.sys.service.ApplicationService) ApplicationRepository(com.albedo.java.modules.sys.repository.ApplicationRepository) Service(org.springframework.stereotype.Service) AbstractDataCacheServiceImpl(com.albedo.java.plugins.database.mybatis.service.impl.AbstractDataCacheServiceImpl) Convert(cn.hutool.core.convert.Convert) CacheKey(com.albedo.java.common.core.cache.model.CacheKey) Convert(cn.hutool.core.convert.Convert) ApplicationDo(com.albedo.java.modules.sys.domain.ApplicationDo) ApplicationClientCacheKeyBuilder(com.albedo.java.modules.sys.cache.ApplicationClientCacheKeyBuilder) CacheKey(com.albedo.java.common.core.cache.model.CacheKey)

Example 2 with Wraps

use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.

the class ParameterServiceImpl method getValue.

@Override
public String getValue(String key, String defVal) {
    if (StrUtil.isEmpty(key)) {
        return defVal;
    }
    Function<CacheKey, String> loader = k -> {
        ParameterDo parameterDo = getOne(Wraps.<ParameterDo>lbQ().eq(ParameterDo::getKey, key));
        return parameterDo == null ? defVal : parameterDo.getValue();
    };
    CacheKey cacheKey = new ParameterKeyCacheKeyBuilder().key(key);
    return cacheOps.get(cacheKey, loader);
}
Also used : Wraps(com.albedo.java.plugins.database.mybatis.conditions.Wraps) CacheOps(com.albedo.java.plugins.cache.repository.CacheOps) java.util(java.util) ArgumentAssert(com.albedo.java.common.core.util.ArgumentAssert) ParameterRepository(com.albedo.java.modules.sys.repository.ParameterRepository) SpringContextHolder(com.albedo.java.common.core.util.SpringContextHolder) SqlHelper(com.baomidou.mybatisplus.extension.toolkit.SqlHelper) RequiredArgsConstructor(lombok.RequiredArgsConstructor) ParameterDo(com.albedo.java.modules.sys.domain.ParameterDo) ParameterDto(com.albedo.java.modules.sys.domain.dto.ParameterDto) DataServiceImpl(com.albedo.java.plugins.database.mybatis.service.impl.DataServiceImpl) Function(java.util.function.Function) Serializable(java.io.Serializable) ParameterUpdate(com.albedo.java.common.event.model.ParameterUpdate) CollUtil(cn.hutool.core.collection.CollUtil) StrUtil(cn.hutool.core.util.StrUtil) ParameterUpdateEvent(com.albedo.java.common.event.listener.ParameterUpdateEvent) ParameterKeyCacheKeyBuilder(com.albedo.java.modules.sys.cache.ParameterKeyCacheKeyBuilder) ParameterService(com.albedo.java.modules.sys.service.ParameterService) Service(org.springframework.stereotype.Service) CollectionUtils(com.baomidou.mybatisplus.core.toolkit.CollectionUtils) ContextUtil(com.albedo.java.common.core.context.ContextUtil) CacheKey(com.albedo.java.common.core.cache.model.CacheKey) Transactional(org.springframework.transaction.annotation.Transactional) ParameterKeyCacheKeyBuilder(com.albedo.java.modules.sys.cache.ParameterKeyCacheKeyBuilder) CacheKey(com.albedo.java.common.core.cache.model.CacheKey) ParameterDo(com.albedo.java.modules.sys.domain.ParameterDo)

Example 3 with Wraps

use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.

the class TenantServiceImpl method getByCode.

/**
 * tenant_name:{tenantCode} -> id 只存租户的id,然后根据id再次查询缓存,这样子的好处是,删除或者修改租户信息时,只需要根据id淘汰缓存即可
 * 缺点就是 每次查询,需要多查一次缓存
 *
 * @param tenant
 * @return
 */
@Override
public Tenant getByCode(String tenant) {
    Function<CacheKey, Object> loader = (k) -> getObj(Wraps.<Tenant>lbQ().select(Tenant::getId).eq(Tenant::getCode, tenant), Convert::toLong);
    CacheKey cacheKey = new TenantCodeCacheKeyBuilder().key(tenant);
    return getByKey(cacheKey, loader);
}
Also used : Wraps(com.albedo.java.plugins.database.mybatis.conditions.Wraps) TenantConnectDto(com.albedo.java.modules.tenant.domain.dto.TenantConnectDto) ArgumentAssert(com.albedo.java.common.core.util.ArgumentAssert) InitSystemContext(com.albedo.java.modules.tenant.strategy.InitSystemContext) Tenant(com.albedo.java.modules.tenant.domain.Tenant) TenantService(com.albedo.java.modules.tenant.service.TenantService) RequiredArgsConstructor(lombok.RequiredArgsConstructor) BeanUtil(com.albedo.java.common.core.util.BeanUtil) CacheKeyBuilder(com.albedo.java.common.core.cache.model.CacheKeyBuilder) TenantRepository(com.albedo.java.modules.tenant.repository.TenantRepository) Function(java.util.function.Function) TenantDto(com.albedo.java.modules.tenant.domain.dto.TenantDto) TenantCacheKeyBuilder(com.albedo.java.modules.tenant.TenantCacheKeyBuilder) TenantTypeEnum(com.albedo.java.modules.tenant.enumeration.TenantTypeEnum) Slf4j(lombok.extern.slf4j.Slf4j) List(java.util.List) Service(org.springframework.stereotype.Service) AbstractDataCacheServiceImpl(com.albedo.java.plugins.database.mybatis.service.impl.AbstractDataCacheServiceImpl) Convert(cn.hutool.core.convert.Convert) AppendixService(com.albedo.java.modules.file.service.AppendixService) TenantStatusEnum(com.albedo.java.modules.tenant.enumeration.TenantStatusEnum) CacheKey(com.albedo.java.common.core.cache.model.CacheKey) TenantCodeCacheKeyBuilder(com.albedo.java.modules.tenant.TenantCodeCacheKeyBuilder) Transactional(org.springframework.transaction.annotation.Transactional) TenantCodeCacheKeyBuilder(com.albedo.java.modules.tenant.TenantCodeCacheKeyBuilder) Tenant(com.albedo.java.modules.tenant.domain.Tenant) Convert(cn.hutool.core.convert.Convert) CacheKey(com.albedo.java.common.core.cache.model.CacheKey)

Aggregations

CacheKey (com.albedo.java.common.core.cache.model.CacheKey)3 Wraps (com.albedo.java.plugins.database.mybatis.conditions.Wraps)3 Function (java.util.function.Function)3 Service (org.springframework.stereotype.Service)3 Convert (cn.hutool.core.convert.Convert)2 CacheKeyBuilder (com.albedo.java.common.core.cache.model.CacheKeyBuilder)2 ArgumentAssert (com.albedo.java.common.core.util.ArgumentAssert)2 AbstractDataCacheServiceImpl (com.albedo.java.plugins.database.mybatis.service.impl.AbstractDataCacheServiceImpl)2 RequiredArgsConstructor (lombok.RequiredArgsConstructor)2 Transactional (org.springframework.transaction.annotation.Transactional)2 CollUtil (cn.hutool.core.collection.CollUtil)1 StrUtil (cn.hutool.core.util.StrUtil)1 ContextUtil (com.albedo.java.common.core.context.ContextUtil)1 BeanUtil (com.albedo.java.common.core.util.BeanUtil)1 SpringContextHolder (com.albedo.java.common.core.util.SpringContextHolder)1 ParameterUpdateEvent (com.albedo.java.common.event.listener.ParameterUpdateEvent)1 ParameterUpdate (com.albedo.java.common.event.model.ParameterUpdate)1 AppendixService (com.albedo.java.modules.file.service.AppendixService)1 ApplicationClientCacheKeyBuilder (com.albedo.java.modules.sys.cache.ApplicationClientCacheKeyBuilder)1 ParameterKeyCacheKeyBuilder (com.albedo.java.modules.sys.cache.ParameterKeyCacheKeyBuilder)1