Example usage for org.springframework.data.redis.core.query SortQueryBuilder sort

List of usage examples for org.springframework.data.redis.core.query SortQueryBuilder sort

Introduction

In this page you can find the example usage for org.springframework.data.redis.core.query SortQueryBuilder sort.

Prototype

public static <K> SortQueryBuilder<K> sort(K key) 

Source Link

Usage

From source file:com.greenline.guahao.biz.manager.cache.hrs.DictCacheManager.java

/**
 * ?// ww  w  .  ja va2s.c  o  m
 * 
 * @return List<DictDO>
 */
public List<DictDO> listDicts(String dictId) {
    if (StringUtils.isEmpty(dictId)) {
        return null;
    }
    String key = dictListKey(dictId);
    SortQuery<String> query = SortQueryBuilder.sort(key).noSort().get("#").build();
    BulkMapper<DictDO, String> hm = new BulkMapper<DictDO, String>() {
        @Override
        public DictDO mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            return jackjson.read(iterator.next(), DictDO.class);
        }
    };
    return template.sort(query, hm);
}

From source file:com.greenline.guahao.biz.manager.cache.hrs.ShiftCaseCacheManager.java

/**
 * ??//from   ww w  . j  a v  a2s . c o  m
 * 
 * @return
 */
public CacheControlResult<List<ShiftCaseDO>> listShiftCases(ShiftQuery query) {
    CacheControlResult<List<ShiftCaseDO>> ret = new CacheControlResult<List<ShiftCaseDO>>();
    ret.setInvoteControl(InvoteControl.DO_BIZ_FETCH);
    if (query == null) {
        ret.setInvoteControl(InvoteControl.STOP_BIZ_FETCH_PUT);
        return ret;
    }
    // key
    String key = queryKey(query);
    SortQuery<String> sortQuery = SortQueryBuilder.sort(key).noSort().get("#").build();
    BulkMapper<ShiftCaseDO, String> hm = new BulkMapper<ShiftCaseDO, String>() {
        @Override
        public ShiftCaseDO mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            return jackjson.read(iterator.next(), ShiftCaseDO.class);
        }
    };
    List<ShiftCaseDO> cacheResult = cleanExpireData(key, template.sort(sortQuery, hm));

    if (cacheResult == null || cacheResult.isEmpty()) {
        String isCached = template.opsForValue().get(getIsCachedKey(key));
        if (StringUtils.isNotEmpty(isCached)) {
            // ?????
            ret.setInvoteControl(InvoteControl.STOP_BIZ_FETCH_PUT);
        }
    } else {
        ret.setResult(cacheResult);
        ret.setInvoteControl(InvoteControl.STOP_BIZ_FETCH);
    }
    return ret;

}

From source file:com.greenline.guahao.biz.manager.cache.hrs.DepartmentCacheManager.java

/**
 * ? ??./*from w  ww  .  j  ava  2 s .  c  o m*/
 * 
 * @param hospitalId ID
 * @return
 */
public Map<String, Integer> getDeptDoctorCounts(String hospitalId) {
    if (hospitalId == null) {
        return null;
    }
    // 
    String cacheCounted = template.opsForValue().get(hDeptDoctorCountedKey(hospitalId));
    if (StringUtils.isEmpty(cacheCounted)) {
        return null;
    }

    String key = hDeptsKey(hospitalId);
    SortQuery<String> query = SortQueryBuilder.sort(key).noSort().get("#").get(hDeptDoctorCntKey("*")).build();

    BulkMapper<String[], String> hm = new BulkMapper<String[], String>() {
        @Override
        public String[] mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            String[] d = new String[2];
            d[0] = iterator.next();
            d[1] = iterator.next();
            if (d[1] == null) {
                d[1] = "0";
            }
            return d;
        }
    };
    List<String[]> list = template.sort(query, hm);
    if (list == null) {
        return null;
    }
    Map<String, Integer> ret = new HashMap<String, Integer>();
    for (String[] o : list) {
        ret.put(o[0], toInt(o[1]));
    }
    return ret;
}

From source file:com.greenline.guahao.biz.manager.cache.hrs.HospitalCacheManager.java

/**
 * ??//from w w w.ja va2 s. c  o  m
 * 
 * @param key
 * @return
 */
private List<ClinicTypeDO> listClinicTypeByKey(String key) {
    SortQuery<String> query = SortQueryBuilder.sort(key).noSort().get(CLINIC_TYPE + "*").build();

    BulkMapper<ClinicTypeDO, String> hm = new BulkMapper<ClinicTypeDO, String>() {
        @Override
        public ClinicTypeDO mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            ClinicTypeDO c = jackjson.read(iterator.next(), ClinicTypeDO.class);
            return c;
        }
    };
    return cleanExpireData(key, template.sort(query, hm));
}

From source file:com.greenline.guahao.biz.manager.cache.hrs.HospitalCacheManager.java

/**
 * ?/*from  w w w  .j a v a2 s  . co  m*/
 * 
 * @return
 */
public List<HospitalLevelDO> listHospLevels() {
    SortQuery<String> query = SortQueryBuilder.sort(HOSPITAL_LEVEL).noSort().get("#").build();
    BulkMapper<HospitalLevelDO, String> hm = new BulkMapper<HospitalLevelDO, String>() {
        @Override
        public HospitalLevelDO mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            return jackjson.read(iterator.next(), HospitalLevelDO.class);
        }
    };
    return template.sort(query, hm);
}

From source file:com.greenline.guahao.biz.manager.cache.hrs.DepartmentCacheManager.java

/**
 * ?//from  w ww.jav a2 s. c om
 * 
 * @param hospitalId ID
 * @return
 */
public List<HospitalDepartmentDO> listHospitalDepts(String hospitalId) {
    if (hospitalId == null) {
        return null;
    }
    String dept = HOSPITAL_DEPARTMENT + "*->";
    String key = hDeptsKey(hospitalId);
    SortQuery<String> query = SortQueryBuilder.sort(key).noSort().get(dept + "id").get(dept + "name")
            .get(dept + "description").get(dept + "category").get(dept + "deptId").get(dept + "profitType")
            .build();

    BulkMapper<HospitalDepartmentDO, String> hm = new BulkMapper<HospitalDepartmentDO, String>() {
        @Override
        public HospitalDepartmentDO mapBulk(List<String> bulk) {
            Iterator<String> iterator = bulk.iterator();
            HospitalDepartmentDO d = new HospitalDepartmentDO();
            d.setId(iterator.next());
            if (d.getId() == null) {
                // ?null
                return null;
            }
            d.setName(iterator.next());
            d.setDescription(iterator.next());
            d.setCategory(iterator.next());
            d.setDeptId(iterator.next());
            String profitType = iterator.next();
            d.setProfitType(profitType == null ? 1 : Integer.valueOf(profitType));
            return d;
        }
    };
    return cleanExpireData(key, template.sort(query, hm));
}

From source file:com.afousan.service.RetwisRepository.java

private List<String> covertUidsToNames(String key) {
    return template.sort(SortQueryBuilder.sort(key).noSort().get("uid:*->name").build());
}

From source file:com.afousan.service.RetwisRepository.java

private List<WebPost> convertPidsToPosts(String key, Range range) {
    String pid = "pid:*->";
    final String pidKey = "#";
    final String uid = "uid";
    final String content = "content";
    final String replyPid = "replyPid";
    final String replyUid = "replyUid";
    final String time = "time";

    SortQuery<String> query = SortQueryBuilder.sort(key).noSort().get(pidKey).get(pid + uid).get(pid + content)
            .get(pid + replyPid).get(pid + replyUid).get(pid + time).limit(range.begin, range.end).build();
    BulkMapper<WebPost, String> hm = new BulkMapper<WebPost, String>() {
        @Override/*from ww  w.  j ava  2  s .  c  o m*/
        public WebPost mapBulk(List<String> bulk) {
            Map<String, String> map = new LinkedHashMap<String, String>();
            Iterator<String> iterator = bulk.iterator();

            String pid = iterator.next();
            map.put(uid, iterator.next());
            map.put(content, iterator.next());
            map.put(replyPid, iterator.next());
            map.put(replyUid, iterator.next());
            map.put(time, iterator.next());

            return convertPost(pid, map);
        }
    };
    List<WebPost> sort = template.sort(query, hm);

    return sort;
}