Search in sources :

Example 1 with DictItemVO

use of com.hccake.ballcat.system.model.vo.DictItemVO in project ballcat by ballcat-projects.

the class SysDictManager method queryDictDataAndHashVO.

/**
 * 查询字典数据
 * @param dictCodes 字典标识
 * @return DictDataAndHashVO
 */
public List<DictDataVO> queryDictDataAndHashVO(String[] dictCodes) {
    List<DictDataVO> list = new ArrayList<>();
    // 查询对应hash值,以及字典项数据
    List<SysDict> sysDictList = sysDictService.listByCodes(dictCodes);
    if (CollectionUtil.isNotEmpty(sysDictList)) {
        for (SysDict sysDict : sysDictList) {
            List<SysDictItem> dictItems = sysDictItemService.listByDictCode(sysDict.getCode());
            // 排序并转换为VO
            List<DictItemVO> setDictItems = dictItems.stream().sorted(Comparator.comparingInt(SysDictItem::getSort)).map(SysDictItemConverter.INSTANCE::poToItemVo).collect(Collectors.toList());
            // 组装DataVO
            DictDataVO dictDataVO = new DictDataVO();
            dictDataVO.setValueType(sysDict.getValueType());
            dictDataVO.setDictCode(sysDict.getCode());
            dictDataVO.setHashCode(sysDict.getHashCode());
            dictDataVO.setDictItems(setDictItems);
            list.add(dictDataVO);
        }
    }
    return list;
}
Also used : SysDictItemConverter(com.hccake.ballcat.system.converter.SysDictItemConverter) SysDict(com.hccake.ballcat.system.model.entity.SysDict) DictDataVO(com.hccake.ballcat.system.model.vo.DictDataVO) ArrayList(java.util.ArrayList) SysDictItem(com.hccake.ballcat.system.model.entity.SysDictItem) DictItemVO(com.hccake.ballcat.system.model.vo.DictItemVO)

Aggregations

SysDictItemConverter (com.hccake.ballcat.system.converter.SysDictItemConverter)1 SysDict (com.hccake.ballcat.system.model.entity.SysDict)1 SysDictItem (com.hccake.ballcat.system.model.entity.SysDictItem)1 DictDataVO (com.hccake.ballcat.system.model.vo.DictDataVO)1 DictItemVO (com.hccake.ballcat.system.model.vo.DictItemVO)1 ArrayList (java.util.ArrayList)1