简历解析结构修改和字典逻辑修改
This commit is contained in:
@@ -5,6 +5,8 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.annotation.PostConstruct;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -73,20 +75,46 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService
|
||||
@Override
|
||||
public List<SysDictData> selectDictDataByType(String dictType)
|
||||
{
|
||||
List<SysDictData> dictDatas = DictUtils.getDictCache(dictType);
|
||||
// List<SysDictData> dictDataTops = DictUtils.getDictCache(dictType);
|
||||
// if (StringUtils.isNotEmpty(dictDataTops))
|
||||
// {
|
||||
// return dictDataTops;
|
||||
// }
|
||||
List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dictType);
|
||||
if (StringUtils.isNotEmpty(dictDatas))
|
||||
{
|
||||
return dictDatas;
|
||||
}
|
||||
dictDatas = dictDataMapper.selectDictDataByType(dictType);
|
||||
if (StringUtils.isNotEmpty(dictDatas))
|
||||
{
|
||||
DictUtils.setDictCache(dictType, dictDatas);
|
||||
return dictDatas;
|
||||
//先查询父类字典数据
|
||||
List<SysDictData> dictParentDatas = dictDatas.stream().filter(e->e.getDictParentCode().longValue() == -1L).toList();
|
||||
if(CollectionUtil.isNotEmpty(dictParentDatas)){
|
||||
//递归查询子集
|
||||
for(SysDictData dictData : dictParentDatas){
|
||||
//查询对应的子级数据
|
||||
getChildrenDictData(dictDatas,dictData);
|
||||
}
|
||||
}
|
||||
// DictUtils.setDictCache(dictType, dictParentDatas);
|
||||
return dictParentDatas;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询子级字典数据
|
||||
* @param dictDatas
|
||||
* @param dictParentData
|
||||
*/
|
||||
private void getChildrenDictData(List<SysDictData> dictDatas,SysDictData dictParentData){
|
||||
List<SysDictData> dictChildrenDatas = dictDatas.stream().
|
||||
filter(e->e.getDictParentCode().longValue() == dictParentData.getDictCode().longValue()).toList();
|
||||
if(CollectionUtil.isNotEmpty(dictChildrenDatas)){
|
||||
for(SysDictData dictChildData : dictChildrenDatas){
|
||||
getChildrenDictData(dictDatas,dictChildData);
|
||||
}
|
||||
dictParentData.setChildrenDictData(dictChildrenDatas);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 根据字典类型ID查询信息
|
||||
*
|
||||
|
||||
@@ -6,6 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
|
||||
<resultMap type="SysDictData" id="SysDictDataResult">
|
||||
<id property="dictCode" column="dict_code" />
|
||||
<result property="dictParentCode" column="dict_parent_code" />
|
||||
<result property="dictSort" column="dict_sort" />
|
||||
<result property="dictLabel" column="dict_label" />
|
||||
<result property="dictValue" column="dict_value" />
|
||||
@@ -21,13 +22,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectDictDataVo">
|
||||
select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
|
||||
select dict_code, dict_parent_code,dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
|
||||
from sys_dict_data
|
||||
</sql>
|
||||
|
||||
<select id="selectDictDataList" parameterType="SysDictData" resultMap="SysDictDataResult">
|
||||
<include refid="selectDictDataVo"/>
|
||||
<where>
|
||||
<if test="dictParentCode != null and dictParentCode != ''">
|
||||
AND dict_parent_code = #{dictParentCode}
|
||||
</if>
|
||||
<if test="dictType != null and dictType != ''">
|
||||
AND dict_type = #{dictType}
|
||||
</if>
|
||||
|
||||
@@ -6,6 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
|
||||
<resultMap type="SysDictData" id="SysDictDataResult">
|
||||
<id property="dictCode" column="dict_code" />
|
||||
<result property="dictParentCode" column="dict_parent_code" />
|
||||
<result property="dictSort" column="dict_sort" />
|
||||
<result property="dictLabel" column="dict_label" />
|
||||
<result property="dictValue" column="dict_value" />
|
||||
@@ -21,13 +22,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectDictDataVo">
|
||||
select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
|
||||
select dict_code, dict_parent_code,dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
|
||||
from sys_dict_data
|
||||
</sql>
|
||||
|
||||
<select id="selectDictDataList" parameterType="SysDictData" resultMap="SysDictDataResult">
|
||||
<include refid="selectDictDataVo"/>
|
||||
<where>
|
||||
<if test="dictParentCode != null and dictParentCode != ''">
|
||||
AND dict_parent_code = #{dictParentCode}
|
||||
</if>
|
||||
<if test="dictType != null and dictType != ''">
|
||||
AND dict_type = #{dictType}
|
||||
</if>
|
||||
|
||||
Reference in New Issue
Block a user