fix: 优化页面bug
This commit is contained in:
parent
18f91f3a61
commit
d35eb47d73
@ -1,5 +1,6 @@
|
|||||||
package com.yfd.platform.qgc_base.service.impl;
|
package com.yfd.platform.qgc_base.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.yfd.platform.qgc_base.domain.SdEngInfoBH;
|
import com.yfd.platform.qgc_base.domain.SdEngInfoBH;
|
||||||
import com.yfd.platform.qgc_base.domain.SdHydrobase;
|
import com.yfd.platform.qgc_base.domain.SdHydrobase;
|
||||||
import com.yfd.platform.qgc_base.domain.SdHbrvDic;
|
import com.yfd.platform.qgc_base.domain.SdHbrvDic;
|
||||||
@ -363,25 +364,40 @@ public class TreeStructureServiceImpl implements ITreeStructureService {
|
|||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2. 预加载所有流域下的电站(按流域分组)
|
if (rvcdList.isEmpty()) {
|
||||||
Map<String, List<SdEngInfoBH>> rvcdEngMap = new HashMap<>();
|
return result;
|
||||||
for (SdRvcdDic rvcdDic : rvcdList) {
|
}
|
||||||
List<SdEngInfoBH> engList = engInfoBHMapper.selectByRvcd(null,rvcdDic.getRvcd());
|
|
||||||
|
|
||||||
// 如果提供了电站名称参数,进行模糊匹配筛选
|
// 2. 收集所有流域编码,一次批量查询替代 N 次循环查询
|
||||||
if (StringUtils.hasText(engName) && engList != null) {
|
List<String> rvcdCodeList = rvcdList.stream()
|
||||||
engList = engList.stream()
|
.map(SdRvcdDic::getRvcd)
|
||||||
.filter(eng -> eng.getEnnm() != null && eng.getEnnm().contains(engName))
|
.collect(Collectors.toList());
|
||||||
.collect(Collectors.toList());
|
List<SdEngInfoBH> allEngList = engInfoBHMapper.selectList(new LambdaQueryWrapper<SdEngInfoBH>().in(SdEngInfoBH::getReachcd, rvcdCodeList));
|
||||||
}
|
// List<SdEngInfoBH> allEngList = engInfoBHMapper.selectByRvcdList(rvcdCodeList);
|
||||||
|
|
||||||
if (engList != null && !engList.isEmpty()) {
|
// 3. 按流域分组,同时在内存中过滤电站名称
|
||||||
rvcdEngMap.put(rvcdDic.getRvcd(), engList);
|
Map<String, List<SdEngInfoBH>> rvcdEngMap = new LinkedHashMap<>();
|
||||||
|
if (allEngList != null) {
|
||||||
|
for (SdEngInfoBH eng : allEngList) {
|
||||||
|
String engRvcd = eng.getReachcd();
|
||||||
|
if (!StringUtils.hasText(engRvcd) || !rvcdCodeList.contains(engRvcd)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (StringUtils.hasText(engName) && eng.getEnnm() != null
|
||||||
|
&& !eng.getEnnm().contains(engName)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
rvcdEngMap.computeIfAbsent(engRvcd, k -> new ArrayList<>()).add(eng);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3. 构建二级树形结构(流域 -> 电站)
|
// 4. 构建二级树形结构(流域 -> 电站)
|
||||||
for (SdRvcdDic rvcdDic : rvcdList) {
|
for (SdRvcdDic rvcdDic : rvcdList) {
|
||||||
|
List<SdEngInfoBH> engList = rvcdEngMap.get(rvcdDic.getRvcd());
|
||||||
|
if (engList == null || engList.isEmpty()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
Map<String, Object> rvcdNode = new LinkedHashMap<>();
|
Map<String, Object> rvcdNode = new LinkedHashMap<>();
|
||||||
rvcdNode.put("type", "RVCD");
|
rvcdNode.put("type", "RVCD");
|
||||||
rvcdNode.put("code", rvcdDic.getRvcd());
|
rvcdNode.put("code", rvcdDic.getRvcd());
|
||||||
@ -389,37 +405,25 @@ public class TreeStructureServiceImpl implements ITreeStructureService {
|
|||||||
rvcdNode.put("path", rvcdDic.getPath());
|
rvcdNode.put("path", rvcdDic.getPath());
|
||||||
rvcdNode.put("orgLevel", 0);
|
rvcdNode.put("orgLevel", 0);
|
||||||
rvcdNode.put("grd", rvcdDic.getGrd());
|
rvcdNode.put("grd", rvcdDic.getGrd());
|
||||||
// rvcdNode.put("lgtd", rvcdDic.getLgtd());
|
|
||||||
// rvcdNode.put("lttd", rvcdDic.getLttd());
|
|
||||||
rvcdNode.put("parentId", "0");
|
rvcdNode.put("parentId", "0");
|
||||||
|
|
||||||
// 获取该流域下的所有电站
|
List<Map<String, Object>> engChildren = new ArrayList<>(engList.size());
|
||||||
List<SdEngInfoBH> engList = rvcdEngMap.get(rvcdDic.getRvcd());
|
for (SdEngInfoBH eng : engList) {
|
||||||
List<Map<String, Object>> engChildren = new ArrayList<>();
|
Map<String, Object> engNode = new LinkedHashMap<>();
|
||||||
|
engNode.put("type", "STATION");
|
||||||
if (engList != null && !engList.isEmpty()) {
|
engNode.put("code", eng.getStcd());
|
||||||
for (SdEngInfoBH eng : engList) {
|
engNode.put("name", eng.getEnnm());
|
||||||
Map<String, Object> engNode = new LinkedHashMap<>();
|
engNode.put("elev", eng.getElev());
|
||||||
engNode.put("type", "STATION");
|
engNode.put("usfl", eng.getUsfl());
|
||||||
engNode.put("code", eng.getStcd());
|
engNode.put("bldstt", eng.getBldstt());
|
||||||
engNode.put("name", eng.getEnnm());
|
engNode.put("engtp", eng.getEngtp());
|
||||||
// engNode.put("lgtd", eng.getLgtd());
|
engNode.put("parentId", rvcdDic.getRvcd());
|
||||||
// engNode.put("lttd", eng.getLttd());
|
engNode.put("orgLevel", 1);
|
||||||
engNode.put("elev", eng.getElev());
|
engChildren.add(engNode);
|
||||||
engNode.put("usfl", eng.getUsfl());
|
|
||||||
engNode.put("bldstt", eng.getBldstt());
|
|
||||||
engNode.put("engtp", eng.getEngtp());
|
|
||||||
engNode.put("parentId", rvcdDic.getRvcd());
|
|
||||||
engNode.put("orgLevel", 1);
|
|
||||||
engChildren.add(engNode);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 只有当该流域下有电站时才添加该流域节点
|
rvcdNode.put("children", engChildren);
|
||||||
if (!engChildren.isEmpty()) {
|
result.add(rvcdNode);
|
||||||
rvcdNode.put("children", engChildren);
|
|
||||||
result.add(rvcdNode);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@ -531,14 +531,15 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
if (StrUtil.isNotBlank(filterSql)) {
|
if (StrUtil.isNotBlank(filterSql)) {
|
||||||
sql.append(" AND ").append(filterSql).append(" ");
|
sql.append(" AND ").append(filterSql).append(" ");
|
||||||
}
|
}
|
||||||
sql.append(buildVdPointOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
|
|
||||||
DataSourceResult<VdPointVo> result = new DataSourceResult<>();
|
DataSourceResult<VdPointVo> result = new DataSourceResult<>();
|
||||||
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.RSTCD");
|
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.rstcds");
|
||||||
if (scopeApplyResult.isEmptyResult()) {
|
if (scopeApplyResult.isEmptyResult()) {
|
||||||
result.setData(new ArrayList<>());
|
result.setData(new ArrayList<>());
|
||||||
result.setTotal(0L);
|
result.setTotal(0L);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
sql.append(buildVdPointOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
|
||||||
List<VdPointVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(
|
List<VdPointVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(
|
||||||
page, sql.toString(), paramMap, VdPointVo.class);
|
page, sql.toString(), paramMap, VdPointVo.class);
|
||||||
result.setData(list);
|
result.setData(list);
|
||||||
|
|||||||
@ -3033,7 +3033,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
// paramMap.put("dtinType", dtinType);
|
// paramMap.put("dtinType", dtinType);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.RSTCD");
|
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "wt.RSTCD");
|
||||||
if (scopeApplyResult.isEmptyResult()) {
|
if (scopeApplyResult.isEmptyResult()) {
|
||||||
dataSourceResult.setData(new ArrayList<>());
|
dataSourceResult.setData(new ArrayList<>());
|
||||||
dataSourceResult.setTotal(0L);
|
dataSourceResult.setTotal(0L);
|
||||||
|
|||||||
@ -76,30 +76,65 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||||||
String name,
|
String name,
|
||||||
String isdisplay,
|
String isdisplay,
|
||||||
String tenantId) {
|
String tenantId) {
|
||||||
List<Map<String, Object>> mapList=null;
|
if (StrUtil.isEmpty(name)) {
|
||||||
List<Map<String, Object>> listMap =new ArrayList<>();
|
// 一次查询该系统下所有菜单,内存中构建树(替代递归逐层查 DB)
|
||||||
if(StrUtil.isEmpty(name)){//不带名称查询,返回树结构
|
|
||||||
QueryWrapper<SysMenu> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<SysMenu> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.eq("parentid", "0").eq("systemcode", systemcode)
|
queryWrapper.eq("systemcode", systemcode)
|
||||||
.eq(StrUtil.isNotBlank(tenantId), "tenant_id", tenantId)
|
.eq(StrUtil.isNotBlank(tenantId), "tenant_id", tenantId)
|
||||||
.orderByAsc("orderno");
|
.orderByAsc("orderno");
|
||||||
mapList = this.listMaps(queryWrapper);
|
List<Map<String, Object>> allMenus = this.listMaps(queryWrapper);
|
||||||
listMap.addAll(ObjectConverterUtil.convertMapFieldsToEntityFormat(SysMenu.class, mapList));
|
List<Map<String, Object>> allConverted = ObjectConverterUtil.convertMapFieldsToEntityFormat(SysMenu.class, allMenus);
|
||||||
for (int i = 0; i < listMap.size(); i++) {
|
|
||||||
//查询下一子集
|
// 构建 id -> node 索引,并预初始化 children 空列表
|
||||||
List<Map<String, Object>> childList = child(listMap.get(i).get(
|
Map<String, Map<String, Object>> nodeMap = new LinkedHashMap<>();
|
||||||
"id").toString(), systemcode, name, null, null, tenantId);
|
for (Map<String, Object> menu : allConverted) {
|
||||||
listMap.get(i).put("children", childList); //添加新列 子集
|
menu.put("children", new ArrayList<>());
|
||||||
|
nodeMap.put(String.valueOf(menu.get("id")), menu);
|
||||||
}
|
}
|
||||||
}else{ //根据菜单名称查询,直接返回类别
|
|
||||||
|
// 单次遍历挂载子节点到父节点
|
||||||
|
List<Map<String, Object>> roots = new ArrayList<>();
|
||||||
|
for (Map<String, Object> menu : allConverted) {
|
||||||
|
String parentId = String.valueOf(menu.get("parentid"));
|
||||||
|
Map<String, Object> parent = nodeMap.get(parentId);
|
||||||
|
if (parent != null) {
|
||||||
|
// @SuppressWarnings("unchecked")
|
||||||
|
List<Map<String, Object>> children = (List<Map<String, Object>>) parent.get("children");
|
||||||
|
children.add(menu);
|
||||||
|
} else {
|
||||||
|
roots.add(menu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 递归按 orderno 排序
|
||||||
|
sortTreeByOrderno(roots);
|
||||||
|
return roots;
|
||||||
|
} else {
|
||||||
|
// 根据菜单名称查询,直接返回列表
|
||||||
QueryWrapper<SysMenu> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<SysMenu> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.like("name", name).eq("systemcode", systemcode)
|
queryWrapper.like("name", name).eq("systemcode", systemcode)
|
||||||
.eq(StrUtil.isNotBlank(tenantId), "tenant_id", tenantId)
|
.eq(StrUtil.isNotBlank(tenantId), "tenant_id", tenantId)
|
||||||
.orderByAsc("name");
|
.orderByAsc("name");
|
||||||
mapList = this.listMaps(queryWrapper);
|
List<Map<String, Object>> mapList = this.listMaps(queryWrapper);
|
||||||
listMap.addAll(ObjectConverterUtil.convertMapFieldsToEntityFormat(SysMenu.class, mapList));
|
return ObjectConverterUtil.convertMapFieldsToEntityFormat(SysMenu.class, mapList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 递归按 orderno 排序树节点(保持与原 child() 相同的排序语义)
|
||||||
|
*/
|
||||||
|
private void sortTreeByOrderno(List<Map<String, Object>> nodes) {
|
||||||
|
nodes.sort(Comparator.comparingInt(m -> {
|
||||||
|
Object orderno = m.get("orderno");
|
||||||
|
return orderno instanceof Number ? ((Number) orderno).intValue() : 0;
|
||||||
|
}));
|
||||||
|
for (Map<String, Object> node : nodes) {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<Map<String, Object>> children = (List<Map<String, Object>>) node.get("children");
|
||||||
|
if (children != null && !children.isEmpty()) {
|
||||||
|
sortTreeByOrderno(children);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return listMap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************
|
/***********************************
|
||||||
|
|||||||
@ -53,83 +53,97 @@
|
|||||||
ORDER BY ORDER_INDEX ASC
|
ORDER BY ORDER_INDEX ASC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<select id="selectRegDropdown" resultMap="BaseResultMap">
|
<select id="selectRegDropdown" resultMap="BaseResultMap">
|
||||||
SELECT
|
SELECT *
|
||||||
t.RVCD,
|
FROM V_SD_RVCD_DIC_TREE
|
||||||
t.DISPLAY_RVNM AS RVNM,
|
WHERE 1=1
|
||||||
t.PRVCD,
|
|
||||||
t.GRD,
|
|
||||||
t.PATH,
|
|
||||||
t.ORDER_INDEX,
|
|
||||||
-- t.LGTD,
|
|
||||||
-- t.LTTD,
|
|
||||||
-- t.AREA,
|
|
||||||
-- t.PERIMETER,
|
|
||||||
-- t.COUNTRY,
|
|
||||||
-- t.LOGO,
|
|
||||||
-- t.INTRODUCE,
|
|
||||||
-- t.INFFILE,
|
|
||||||
t.SHORTNAME,
|
|
||||||
t.SHEPRANGE,
|
|
||||||
t.BASEID
|
|
||||||
-- ,
|
|
||||||
-- t.ENABLED,
|
|
||||||
-- t.RECORD_USER,
|
|
||||||
-- t.RECORD_TIME,
|
|
||||||
-- t.MODIFY_USER,
|
|
||||||
-- t.MODIFY_TIME,
|
|
||||||
-- t.IS_DELETED,
|
|
||||||
-- t.DELETE_USER,
|
|
||||||
-- t.DELETE_TIME
|
|
||||||
FROM (
|
|
||||||
SELECT
|
|
||||||
d.RVCD,
|
|
||||||
LTRIM(SYS_CONNECT_BY_PATH(d.RVNM, '-'), '-') AS DISPLAY_RVNM,
|
|
||||||
d.PRVCD,
|
|
||||||
d.GRD,
|
|
||||||
d.PATH,
|
|
||||||
d.ORDER_INDEX,
|
|
||||||
-- d.LGTD,
|
|
||||||
-- d.LTTD,
|
|
||||||
-- d.AREA,
|
|
||||||
-- d.PERIMETER,
|
|
||||||
-- d.COUNTRY,
|
|
||||||
-- d.LOGO,
|
|
||||||
-- d.INTRODUCE,
|
|
||||||
-- d.INFFILE,
|
|
||||||
d.SHORTNAME,
|
|
||||||
d.SHEPRANGE,
|
|
||||||
d.BASEID,
|
|
||||||
-- d.ENABLED,
|
|
||||||
-- d.RECORD_USER,
|
|
||||||
-- d.RECORD_TIME,
|
|
||||||
-- d.MODIFY_USER,
|
|
||||||
-- d.MODIFY_TIME,
|
|
||||||
-- d.IS_DELETED,
|
|
||||||
-- d.DELETE_USER,
|
|
||||||
-- d.DELETE_TIME,
|
|
||||||
SYS_CONNECT_BY_PATH(LPAD(NVL(d.ORDER_INDEX, 999999999), 10, '0'), '/') AS ORDER_PATH,
|
|
||||||
LEVEL AS TREE_LEVEL
|
|
||||||
FROM (
|
|
||||||
SELECT *
|
|
||||||
FROM SD_RVCD_DIC
|
|
||||||
WHERE NVL(ENABLED, 1) = 1
|
|
||||||
AND NVL(IS_DELETED, 0) = 0
|
|
||||||
) d
|
|
||||||
START WITH d.PRVCD IS NULL OR d.PRVCD = '' OR d.PRVCD = '0'
|
|
||||||
CONNECT BY PRIOR d.RVCD = d.PRVCD
|
|
||||||
ORDER SIBLINGS BY d.ORDER_INDEX ASC, d.RVCD ASC
|
|
||||||
) t
|
|
||||||
WHERE t.TREE_LEVEL > 1
|
|
||||||
<if test="rvcd != null and rvcd != ''">
|
<if test="rvcd != null and rvcd != ''">
|
||||||
AND t.RVCD = #{rvcd}
|
AND RVCD = #{rvcd}
|
||||||
</if>
|
</if>
|
||||||
<if test="rvnm != null and rvnm != ''">
|
<if test="rvnm != null and rvnm != ''">
|
||||||
AND t.DISPLAY_RVNM LIKE '%' || #{rvnm} || '%'
|
AND RVNM LIKE '%' || #{rvnm} || '%'
|
||||||
</if>
|
</if>
|
||||||
ORDER BY t.ORDER_PATH ASC, t.RVCD ASC
|
ORDER BY ORDER_PATH ASC, RVCD ASC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- <select id="selectRegDropdown" resultMap="BaseResultMap">-->
|
||||||
|
<!-- SELECT-->
|
||||||
|
<!-- t.RVCD,-->
|
||||||
|
<!-- t.DISPLAY_RVNM AS RVNM,-->
|
||||||
|
<!-- t.PRVCD,-->
|
||||||
|
<!-- t.GRD,-->
|
||||||
|
<!-- t.PATH,-->
|
||||||
|
<!-- t.ORDER_INDEX,-->
|
||||||
|
<!---- t.LGTD,-->
|
||||||
|
<!---- t.LTTD,-->
|
||||||
|
<!---- t.AREA,-->
|
||||||
|
<!---- t.PERIMETER,-->
|
||||||
|
<!---- t.COUNTRY,-->
|
||||||
|
<!---- t.LOGO,-->
|
||||||
|
<!---- t.INTRODUCE,-->
|
||||||
|
<!---- t.INFFILE,-->
|
||||||
|
<!-- t.SHORTNAME,-->
|
||||||
|
<!-- t.SHEPRANGE,-->
|
||||||
|
<!-- t.BASEID-->
|
||||||
|
<!---- ,-->
|
||||||
|
<!---- t.ENABLED,-->
|
||||||
|
<!---- t.RECORD_USER,-->
|
||||||
|
<!---- t.RECORD_TIME,-->
|
||||||
|
<!---- t.MODIFY_USER,-->
|
||||||
|
<!---- t.MODIFY_TIME,-->
|
||||||
|
<!---- t.IS_DELETED,-->
|
||||||
|
<!---- t.DELETE_USER,-->
|
||||||
|
<!---- t.DELETE_TIME-->
|
||||||
|
<!-- FROM (-->
|
||||||
|
<!-- SELECT-->
|
||||||
|
<!-- d.RVCD,-->
|
||||||
|
<!-- LTRIM(SYS_CONNECT_BY_PATH(d.RVNM, '-'), '-') AS DISPLAY_RVNM,-->
|
||||||
|
<!-- d.PRVCD,-->
|
||||||
|
<!-- d.GRD,-->
|
||||||
|
<!-- d.PATH,-->
|
||||||
|
<!-- d.ORDER_INDEX,-->
|
||||||
|
<!---- d.LGTD,-->
|
||||||
|
<!---- d.LTTD,-->
|
||||||
|
<!---- d.AREA,-->
|
||||||
|
<!---- d.PERIMETER,-->
|
||||||
|
<!---- d.COUNTRY,-->
|
||||||
|
<!---- d.LOGO,-->
|
||||||
|
<!---- d.INTRODUCE,-->
|
||||||
|
<!---- d.INFFILE,-->
|
||||||
|
<!-- d.SHORTNAME,-->
|
||||||
|
<!-- d.SHEPRANGE,-->
|
||||||
|
<!-- d.BASEID,-->
|
||||||
|
<!---- d.ENABLED,-->
|
||||||
|
<!---- d.RECORD_USER,-->
|
||||||
|
<!---- d.RECORD_TIME,-->
|
||||||
|
<!---- d.MODIFY_USER,-->
|
||||||
|
<!---- d.MODIFY_TIME,-->
|
||||||
|
<!---- d.IS_DELETED,-->
|
||||||
|
<!---- d.DELETE_USER,-->
|
||||||
|
<!---- d.DELETE_TIME,-->
|
||||||
|
<!-- SYS_CONNECT_BY_PATH(LPAD(NVL(d.ORDER_INDEX, 999999999), 10, '0'), '/') AS ORDER_PATH,-->
|
||||||
|
<!-- LEVEL AS TREE_LEVEL-->
|
||||||
|
<!-- FROM (-->
|
||||||
|
<!-- SELECT *-->
|
||||||
|
<!-- FROM SD_RVCD_DIC-->
|
||||||
|
<!-- WHERE NVL(ENABLED, 1) = 1-->
|
||||||
|
<!-- AND NVL(IS_DELETED, 0) = 0-->
|
||||||
|
<!-- ) d-->
|
||||||
|
<!-- START WITH d.PRVCD IS NULL OR d.PRVCD = '' OR d.PRVCD = '0'-->
|
||||||
|
<!-- CONNECT BY PRIOR d.RVCD = d.PRVCD-->
|
||||||
|
<!-- ORDER SIBLINGS BY d.ORDER_INDEX ASC, d.RVCD ASC-->
|
||||||
|
<!-- ) t-->
|
||||||
|
<!-- WHERE t.TREE_LEVEL > 1-->
|
||||||
|
<!-- <if test="rvcd != null and rvcd != ''">-->
|
||||||
|
<!-- AND t.RVCD = #{rvcd}-->
|
||||||
|
<!-- </if>-->
|
||||||
|
<!-- <if test="rvnm != null and rvnm != ''">-->
|
||||||
|
<!-- AND t.DISPLAY_RVNM LIKE '%' || #{rvnm} || '%'-->
|
||||||
|
<!-- </if>-->
|
||||||
|
<!-- ORDER BY t.ORDER_PATH ASC, t.RVCD ASC-->
|
||||||
|
<!-- </select>-->
|
||||||
|
|
||||||
<select id="selectRegDropdownWithEng" resultMap="BaseResultMap">
|
<select id="selectRegDropdownWithEng" resultMap="BaseResultMap">
|
||||||
SELECT
|
SELECT
|
||||||
t.RVCD,
|
t.RVCD,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user