Merge branch 'dev-tw'
This commit is contained in:
commit
36892c222d
@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.PropertyAccessor;
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.fasterxml.jackson.databind.SerializationFeature;
|
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||||
|
import com.yfd.platform.utils.SecurityUtils;
|
||||||
import org.springframework.cache.CacheManager;
|
import org.springframework.cache.CacheManager;
|
||||||
import org.springframework.cache.annotation.EnableCaching;
|
import org.springframework.cache.annotation.EnableCaching;
|
||||||
import org.springframework.cache.interceptor.KeyGenerator;
|
import org.springframework.cache.interceptor.KeyGenerator;
|
||||||
@ -114,4 +115,9 @@ public class RedisConfig {
|
|||||||
public KeyGenerator cacheKeyGenerator() {
|
public KeyGenerator cacheKeyGenerator() {
|
||||||
return (target, method, params) -> target.getClass().getName() + "." + method.getName() + ":" + DigestUtil.md5Hex(JSONUtil.toJsonStr(params));
|
return (target, method, params) -> target.getClass().getName() + "." + method.getName() + ":" + DigestUtil.md5Hex(JSONUtil.toJsonStr(params));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Bean("cacheKeyByUserGenerator")
|
||||||
|
public KeyGenerator cacheKeyByUserGenerator() {
|
||||||
|
return (target, method, params) -> SecurityUtils.getUserId()+"."+target.getClass().getName() + "." + method.getName() + ":" + DigestUtil.md5Hex(JSONUtil.toJsonStr(params));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -59,6 +59,10 @@ public class EngPointVo {
|
|||||||
@Schema(description = "所属行政区名称")
|
@Schema(description = "所属行政区名称")
|
||||||
private String addvcdName;
|
private String addvcdName;
|
||||||
|
|
||||||
|
@Schema(description = "基地名称")
|
||||||
|
private String baseName;
|
||||||
|
|
||||||
|
|
||||||
@Schema(description = "站点类型")
|
@Schema(description = "站点类型")
|
||||||
private String sttp;
|
private String sttp;
|
||||||
|
|
||||||
|
|||||||
@ -1095,6 +1095,9 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
"t.WDDT AS wddt, " +
|
"t.WDDT AS wddt, " +
|
||||||
"t.ORDER_INDEX AS orderIndex, " +
|
"t.ORDER_INDEX AS orderIndex, " +
|
||||||
"t.REMARK AS remark, " +
|
"t.REMARK AS remark, " +
|
||||||
|
"t.STINDX AS stindx, " +
|
||||||
|
"t.COENVW_STATE AS coenvwState, " +
|
||||||
|
"CASE t.DVTP WHEN '1' THEN '堤坝式' WHEN '2' THEN '引水式' WHEN '3' THEN '混合式' ELSE '未知' END AS dvtpName, " +
|
||||||
"t.VLSR AS vlsr, " +
|
"t.VLSR AS vlsr, " +
|
||||||
"t.VLSR_TM AS vlsrTm, " +
|
"t.VLSR_TM AS vlsrTm, " +
|
||||||
"t.RECORD_USER AS recordUser, " +
|
"t.RECORD_USER AS recordUser, " +
|
||||||
@ -1256,7 +1259,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
"CAST(NULL AS NUMBER) AS ddz, " +
|
"CAST(NULL AS NUMBER) AS ddz, " +
|
||||||
"eng.NRZAR AS nrzar, " +
|
"eng.NRZAR AS nrzar, " +
|
||||||
"eng.BCKLEN AS bcklen, " +
|
"eng.BCKLEN AS bcklen, " +
|
||||||
"CAST(NULL AS NUMBER) AS ttcp, " +
|
"rbh.TTCP AS ttcp, " +
|
||||||
"CAST(NULL AS NUMBER) AS nmzcp, " +
|
"CAST(NULL AS NUMBER) AS nmzcp, " +
|
||||||
"CAST(NULL AS VARCHAR2(255)) AS fldcpStr, " +
|
"CAST(NULL AS VARCHAR2(255)) AS fldcpStr, " +
|
||||||
"CAST(NULL AS NUMBER) AS actcp, " +
|
"CAST(NULL AS NUMBER) AS actcp, " +
|
||||||
@ -1323,19 +1326,20 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
"LEFT JOIN SD_HYCD_DIC hy ON hy.HYCD = eng.HYCD AND NVL(hy.IS_DELETED, 0) = 0 AND NVL(hy.ENABLED, 1) = 1 " +
|
"LEFT JOIN SD_HYCD_DIC hy ON hy.HYCD = eng.HYCD AND NVL(hy.IS_DELETED, 0) = 0 AND NVL(hy.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_HYCD_DIC topHy ON topHy.HYCD = eng.TOP_HYCD AND NVL(topHy.IS_DELETED, 0) = 0 AND NVL(topHy.ENABLED, 1) = 1 " +
|
"LEFT JOIN SD_HYCD_DIC topHy ON topHy.HYCD = eng.TOP_HYCD AND NVL(topHy.IS_DELETED, 0) = 0 AND NVL(topHy.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_PWR_B_H pwr ON pwr.STCD = eng.STCD AND NVL(pwr.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_PWR_B_H pwr ON pwr.STCD = eng.STCD AND NVL(pwr.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_RSVRFCCH_B_H rbh ON rbh.STCD = eng.STCD " +
|
||||||
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"WHERE NVL(eng.IS_DELETED, 0) = 0";
|
"WHERE NVL(eng.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2148,19 +2152,19 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
"LEFT JOIN SD_ENGINFO_B_H s ON e.STCD = s.STCD AND NVL(s.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_ENGINFO_B_H s ON e.STCD = s.STCD AND NVL(s.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = 'ENG' AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLE, 1) = 1 " +
|
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = 'ENG' AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLE, 1) = 1 " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = s.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = s.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = s.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = e.BASEID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = s.HBRVCD AND rstSort.STCD = s.STCD " +
|
") rstSort ON rstSort.BASEID = e.BASEID AND rstSort.STCD = s.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = s.HBRVCD AND siteSort.STCD = s.STCD " +
|
") siteSort ON siteSort.BASEID = e.BASEID AND siteSort.STCD = s.STCD " +
|
||||||
"WHERE NVL(e.IS_DELETED, 0) = 0";
|
"WHERE NVL(e.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2839,6 +2843,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Cacheable(cacheNames = "engPointCache#3600", keyGenerator = "cacheKeyByUserGenerator")
|
||||||
public DataSourceResult<EngPointVo> getEngPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<EngPointVo> getEngPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceResult<EngPointVo> result = new DataSourceResult<>();
|
DataSourceResult<EngPointVo> result = new DataSourceResult<>();
|
||||||
result.setAggregates(new HashMap<>());
|
result.setAggregates(new HashMap<>());
|
||||||
@ -2857,6 +2862,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
.append("t.ENNM AS stnm, ")
|
.append("t.ENNM AS stnm, ")
|
||||||
.append("t.ENNM AS titleName, ")
|
.append("t.ENNM AS titleName, ")
|
||||||
.append("t.RVCD AS rvcd, ")
|
.append("t.RVCD AS rvcd, ")
|
||||||
|
.append("t.BASE_NAME AS baseName, ")
|
||||||
.append("t.ADDVCD AS addvcd, ")
|
.append("t.ADDVCD AS addvcd, ")
|
||||||
.append("t.LGTD AS lgtd, ")
|
.append("t.LGTD AS lgtd, ")
|
||||||
.append("t.LTTD AS lttd, ")
|
.append("t.LTTD AS lttd, ")
|
||||||
@ -2894,19 +2900,19 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
.append("FROM SD_ENGINFO_B_H t ")
|
.append("FROM SD_ENGINFO_B_H t ")
|
||||||
.append("LEFT JOIN SD_PWR_B_H p ON t.STCD = p.STCD AND NVL(p.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_PWR_B_H p ON t.STCD = p.STCD AND NVL(p.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = t.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = t.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = t.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN MS_ALONG_B along ON along.BASEID = t.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") rstSort ON rstSort.RVCD = t.HBRVCD AND rstSort.STCD = t.STCD ")
|
.append(") rstSort ON rstSort.BASEID = t.BASE_ID AND rstSort.STCD = t.STCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") siteSort ON siteSort.RVCD = t.HBRVCD AND siteSort.STCD = t.STCD ")
|
.append(") siteSort ON siteSort.BASEID = t.BASE_ID AND siteSort.STCD = t.STCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT STCD, COUNT(STCD) AS configCount ")
|
.append(" SELECT STCD, COUNT(STCD) AS configCount ")
|
||||||
.append(" FROM SD_EQ_B_H ")
|
.append(" FROM SD_EQ_B_H ")
|
||||||
@ -2975,10 +2981,15 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
startTime = yearRange.get("startTime");
|
startTime = yearRange.get("startTime");
|
||||||
endTime = yearRange.get("endTime");
|
endTime = yearRange.get("endTime");
|
||||||
}
|
}
|
||||||
|
DataSourceResult<EngAlarmPointVo> result = new DataSourceResult<>();
|
||||||
Map<String, Object> pointParamMap = new HashMap<>();
|
Map<String, Object> pointParamMap = new HashMap<>();
|
||||||
StringBuilder pointSql = new StringBuilder(buildAlarmPointBaseSql());
|
StringBuilder pointSql = new StringBuilder(buildAlarmPointBaseSql());
|
||||||
// DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(pointSql, pointParamMap, "eng.STCD");
|
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(pointSql, pointParamMap, "eng.STCD");
|
||||||
|
if (scopeApplyResult.isEmptyResult()) {
|
||||||
|
result.setData(new ArrayList<>());
|
||||||
|
result.setTotal(0L);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
List<EngAlarmPointVo> points= microservicDynamicSQLMapper.getAllListWithResultType(
|
List<EngAlarmPointVo> points= microservicDynamicSQLMapper.getAllListWithResultType(
|
||||||
pointSql.toString(),
|
pointSql.toString(),
|
||||||
pointParamMap,
|
pointParamMap,
|
||||||
@ -3004,7 +3015,7 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
List<Map<String, Object>> expressionRows = microservicDynamicSQLMapper.getAllList(buildAlarmPointLegendSql(), new HashMap<>());
|
List<Map<String, Object>> expressionRows = microservicDynamicSQLMapper.getAllList(buildAlarmPointLegendSql(), new HashMap<>());
|
||||||
List<EngAlarmPointVo> resultList = mergeAlarmPointData(points, qecCountMap, wqCountMap, expressionRows, yyyy);
|
List<EngAlarmPointVo> resultList = mergeAlarmPointData(points, qecCountMap, wqCountMap, expressionRows, yyyy);
|
||||||
|
|
||||||
DataSourceResult<EngAlarmPointVo> result = new DataSourceResult<>();
|
|
||||||
result.setData(resultList);
|
result.setData(resultList);
|
||||||
result.setTotal(resultList.size());
|
result.setTotal(resultList.size());
|
||||||
result.setAggregates(new HashMap<>());
|
result.setAggregates(new HashMap<>());
|
||||||
@ -3045,19 +3056,19 @@ public class SdEngInfoBHServiceImpl extends ServiceImpl<SdEngInfoBHMapper, SdEng
|
|||||||
"NVL(siteSort.SORT, 999999) AS siteStepSort " +
|
"NVL(siteSort.SORT, 999999) AS siteStepSort " +
|
||||||
"FROM SD_ENGINFO_B_H eng " +
|
"FROM SD_ENGINFO_B_H eng " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"WHERE NVL(eng.IS_DELETED, 0) = 0 " +
|
"WHERE NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
"AND NVL(eng.USFL, 0) = 1 " +
|
"AND NVL(eng.USFL, 0) = 1 " +
|
||||||
"AND eng.LGTD IS NOT NULL " +
|
"AND eng.LGTD IS NOT NULL " +
|
||||||
|
|||||||
@ -4,6 +4,8 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Schema(description = "电站统计查询")
|
@Schema(description = "电站统计查询")
|
||||||
@ -26,9 +28,22 @@ public class EngEqVmsstbprptVo implements Serializable {
|
|||||||
@Schema(description = "工程名称")
|
@Schema(description = "工程名称")
|
||||||
private String ennm;
|
private String ennm;
|
||||||
|
|
||||||
|
@Schema(description = "总投运容量")
|
||||||
|
private Double ttcp;
|
||||||
|
|
||||||
@Schema(description = "基地编码")
|
@Schema(description = "基地编码")
|
||||||
private String baseId;
|
private String baseId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 开发方式 字典编码:sd_enginfo_b_h.dvtp 1=堤坝式 2=引水式 3=混合式
|
||||||
|
*/
|
||||||
|
@Schema(description = "开发方式")
|
||||||
|
private String dvtp;
|
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "开发方式名称")
|
||||||
|
private String dvtpName;
|
||||||
|
|
||||||
@Schema(description = "基地名称")
|
@Schema(description = "基地名称")
|
||||||
private String baseName;
|
private String baseName;
|
||||||
|
|
||||||
@ -38,6 +53,12 @@ public class EngEqVmsstbprptVo implements Serializable {
|
|||||||
@Schema(description = "基地流域名称")
|
@Schema(description = "基地流域名称")
|
||||||
private String hbrvcdName;
|
private String hbrvcdName;
|
||||||
|
|
||||||
|
@Schema(description = "行政区")
|
||||||
|
private String addvcd;
|
||||||
|
|
||||||
|
@Schema(description = "行政区名称")
|
||||||
|
private String addvcdName;
|
||||||
|
|
||||||
@Schema(description = "流域编码")
|
@Schema(description = "流域编码")
|
||||||
private String rvcd;
|
private String rvcd;
|
||||||
|
|
||||||
@ -50,15 +71,30 @@ public class EngEqVmsstbprptVo implements Serializable {
|
|||||||
@Schema(description = "建设状态")
|
@Schema(description = "建设状态")
|
||||||
private String bldstt;
|
private String bldstt;
|
||||||
|
|
||||||
|
@Schema(description = "装机容量")
|
||||||
|
private BigDecimal ttpwr;
|
||||||
|
|
||||||
@Schema(description = "建设状态分类")
|
@Schema(description = "建设状态分类")
|
||||||
private Integer bldsttCcode;
|
private Integer bldsttCcode;
|
||||||
|
|
||||||
|
@Schema(description = "建设状态分类")
|
||||||
|
private String bldsttCcodeName;
|
||||||
|
|
||||||
@Schema(description = "环保数据接入状态")
|
@Schema(description = "环保数据接入状态")
|
||||||
private Integer dtinEnv;
|
private Integer dtinEnv;
|
||||||
|
|
||||||
@Schema(description = "接入状态")
|
@Schema(description = "接入状态")
|
||||||
private Integer dtin;
|
private Integer dtin;
|
||||||
|
|
||||||
|
@Schema(description = "多年平均发电量")
|
||||||
|
private BigDecimal yrge;
|
||||||
|
|
||||||
|
@Schema(description = "首台机组投运时间")
|
||||||
|
private Date piodt;
|
||||||
|
|
||||||
|
@Schema(description = "所有机组投运时间")
|
||||||
|
private Date aiodt;
|
||||||
|
|
||||||
@Schema(description = "基地排序")
|
@Schema(description = "基地排序")
|
||||||
private Integer baseStepSort;
|
private Integer baseStepSort;
|
||||||
|
|
||||||
|
|||||||
@ -1122,7 +1122,7 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
.append("WHERE NVL(eng.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
.append("AND NVL(eng.DTIN, 0) = 1 ")
|
.append("AND NVL(eng.DTIN, 0) = 1 ")
|
||||||
.append("AND NVL(eng.BLDSTT_CODE, 0) IN (1, 2) ")
|
.append("AND NVL(eng.BLDSTT_CODE, 0) IN (1, 2) ")
|
||||||
.append("AND EXISTS (SELECT 1 FROM SD_QEC_R qec WHERE qec.STCD = eng.STCD AND NVL(qec.IS_DELETED, 0) = 0) ");
|
.append("AND RUN_STATE = 4 ");
|
||||||
if (StrUtil.isNotBlank(baseId)) {
|
if (StrUtil.isNotBlank(baseId)) {
|
||||||
sql.append("AND eng.BASE_ID = #{map.baseId} ");
|
sql.append("AND eng.BASE_ID = #{map.baseId} ");
|
||||||
paramMap.put("baseId", baseId);
|
paramMap.put("baseId", baseId);
|
||||||
@ -1863,19 +1863,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildDayMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildDayMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildDayRunSourceSql(filter, paramMap, indexHolder, 0) + ") runAgg ON runAgg.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildDayRunSourceSql(filter, paramMap, indexHolder, 0) + ") runAgg ON runAgg.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildStaticRuleSql("EQMN") + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildStaticRuleSql("EQMN") + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
||||||
@ -2215,19 +2215,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildHourMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildHourMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildHourRunSourceSql(filter, paramMap, indexHolder, 0) + ") runAgg ON runAgg.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildHourRunSourceSql(filter, paramMap, indexHolder, 0) + ") runAgg ON runAgg.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildStaticRuleSql("EQMN") + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildStaticRuleSql("EQMN") + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
||||||
@ -2894,19 +2894,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildIntervalMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildIntervalMetricSourceSql(filter, paramMap, indexHolder, 0) + ") met ON met.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + beforeMetricSql + ") beforeMet ON beforeMet.STCD = eng.STCD " +
|
"LEFT JOIN (" + beforeMetricSql + ") beforeMet ON beforeMet.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildIntervalNoRuleSql() + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
"LEFT JOIN (" + buildIntervalNoRuleSql() + ") qecNoRule ON qecNoRule.STCD = eng.STCD " +
|
||||||
@ -3371,7 +3371,11 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
"'电站' AS sttpName, " +
|
"'电站' AS sttpName, " +
|
||||||
"eng.STCD AS stcd, " +
|
"eng.STCD AS stcd, " +
|
||||||
"pbh.TTPWR AS ttpwr, " +
|
"pbh.TTPWR AS ttpwr, " +
|
||||||
|
"pbh.YRGE AS yrge, " +
|
||||||
"eng.ENNM AS stnm, " +
|
"eng.ENNM AS stnm, " +
|
||||||
|
"eng.PIODT AS piodt, " +
|
||||||
|
"rbh.TTCP AS ttcp,"+
|
||||||
|
"eng.AIODT AS aiodt, " +
|
||||||
"eng.ENNM AS ennm, " +
|
"eng.ENNM AS ennm, " +
|
||||||
"eng.BASE_ID AS baseId, " +
|
"eng.BASE_ID AS baseId, " +
|
||||||
"hb.BASENAME AS baseName, " +
|
"hb.BASENAME AS baseName, " +
|
||||||
@ -3380,22 +3384,31 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
"eng.RVCD AS rvcd, " +
|
"eng.RVCD AS rvcd, " +
|
||||||
"rv.RVNM AS rvcdName, " +
|
"rv.RVNM AS rvcdName, " +
|
||||||
"eng.PRSC AS prsc, " +
|
"eng.PRSC AS prsc, " +
|
||||||
|
"eng.DVTP AS dvtp, " +
|
||||||
|
"eng.ADDVCD AS addvcd, " +
|
||||||
|
"ad.ADDVNM AS addvcdName, " +
|
||||||
|
"CASE eng.DVTP WHEN '1' THEN '堤坝式' WHEN '2' THEN '引水式' WHEN '3' THEN '混合式' ELSE '未知' END AS dvtpName,"+
|
||||||
"eng.RUN_STATE AS runState, " +
|
"eng.RUN_STATE AS runState, " +
|
||||||
"eng.BLDSTT AS bldstt, " +
|
"eng.BLDSTT AS bldstt, " +
|
||||||
"eng.BLDSTT_CODE AS bldsttCcode, " +
|
"eng.BLDSTT_CODE AS bldsttCcode, " +
|
||||||
|
"CASE WHEN eng.BLDSTT_CODE =2 THEN '已建' WHEN eng.BLDSTT_CODE =1 THEN '在建' ELSE '未建/规划' END AS bldsttCcodeName, " +
|
||||||
"eng.DTIN_ENV AS dtinEnv, " +
|
"eng.DTIN_ENV AS dtinEnv, " +
|
||||||
"eng.DTIN AS dtin, " +
|
"eng.DTIN AS dtin, " +
|
||||||
"NVL(hb.ORDER_INDEX, 999999) AS baseStepSort, " +
|
"NVL(hb.ORDER_INDEX, 999999) AS baseStepSort, " +
|
||||||
"NVL(along.ORDER_INDEX, 999999) AS rvcdStepSort, " +
|
"NVL(along.ORDER_INDEX, 999999) AS rvcdStepSort, " +
|
||||||
"NVL(eng.ORDER_INDEX, 999999) AS rstcdStepSort, " +
|
"NVL(c.SORT, 999999) AS rstcdStepSort, " +
|
||||||
"NVL(eng.ORDER_INDEX, 999999) AS siteStepSort " +
|
"NVL(d.SORT, 999999) AS siteStepSort " +
|
||||||
"FROM SD_ENGINFO_B_H eng " +
|
"FROM SD_ENGINFO_B_H eng " +
|
||||||
"INNER JOIN SD_PWR_B_H pbh ON pbh.STCD= eng.STCD " +
|
"INNER JOIN SD_PWR_B_H pbh ON pbh.STCD= eng.STCD " +
|
||||||
|
"LEFT JOIN SD_RSVRFCCH_B_H rbh ON rbh.STCD= eng.STCD " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
|
"LEFT JOIN SD_ADDVCD_DIC ad ON ad.ADDVCD = eng.ADDVCD" +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
|
"LEFT JOIN (select c.SORT,d.BASEID,d.RVCD,c.STCD from MS_ALONGDET_B c inner join MS_ALONG_B d on c.ALONG_ID=d.ID where c.IS_DELETED=0 and d.IS_DELETED=0 and d.CODE='common') c on c.BASEID=eng.BASE_ID and c.stcd=eng.STCD \n" +
|
||||||
|
"LEFT JOIN (select c.SORT,d.BASEID,d.RVCD,c.STCD from MS_ALONGDET_B c inner join MS_ALONG_B d on c.ALONG_ID=d.ID where c.IS_DELETED=0 and d.IS_DELETED=0 and d.CODE='common') d on d.BASEID=eng.BASE_ID and d.stcd=eng.STCD "+
|
||||||
"WHERE NVL(eng.IS_DELETED, 0) = 0";
|
"WHERE NVL(eng.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3424,7 +3437,11 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
columns.put("sttpName", "t.sttpName AS sttpName");
|
columns.put("sttpName", "t.sttpName AS sttpName");
|
||||||
columns.put("stcd", "t.stcd AS stcd");
|
columns.put("stcd", "t.stcd AS stcd");
|
||||||
columns.put("stnm", "t.stnm AS stnm");
|
columns.put("stnm", "t.stnm AS stnm");
|
||||||
|
columns.put("yrge", "t.yrge AS yrge");
|
||||||
|
columns.put("piodt", "t.piodt AS piodt");
|
||||||
|
columns.put("aiodt", "t.aiodt AS aiodt");
|
||||||
columns.put("ennm", "t.ennm AS ennm");
|
columns.put("ennm", "t.ennm AS ennm");
|
||||||
|
columns.put("ttcp", "t.ttcp AS ttcp");
|
||||||
columns.put("baseId", "t.baseId AS baseId");
|
columns.put("baseId", "t.baseId AS baseId");
|
||||||
columns.put("baseName", "t.baseName AS baseName");
|
columns.put("baseName", "t.baseName AS baseName");
|
||||||
columns.put("hbrvcd", "t.hbrvcd AS hbrvcd");
|
columns.put("hbrvcd", "t.hbrvcd AS hbrvcd");
|
||||||
@ -3432,8 +3449,14 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
columns.put("rvcd", "t.rvcd AS rvcd");
|
columns.put("rvcd", "t.rvcd AS rvcd");
|
||||||
columns.put("rvcdName", "t.rvcdName AS rvcdName");
|
columns.put("rvcdName", "t.rvcdName AS rvcdName");
|
||||||
columns.put("prsc", "t.prsc AS prsc");
|
columns.put("prsc", "t.prsc AS prsc");
|
||||||
|
columns.put("dvtp", "t.dvtp AS dvtp");
|
||||||
|
columns.put("dvtpName", "t.dvtpName AS dvtpName");
|
||||||
|
columns.put("addvcd", "t.addvcd AS addvcd");
|
||||||
|
columns.put("addvcdName", "t.addvcdName AS addvcdName");
|
||||||
columns.put("bldstt", "t.bldstt AS bldstt");
|
columns.put("bldstt", "t.bldstt AS bldstt");
|
||||||
|
columns.put("ttpwr", "t.ttpwr AS ttpwr");
|
||||||
columns.put("bldsttCcode", "t.bldsttCcode AS bldsttCcode");
|
columns.put("bldsttCcode", "t.bldsttCcode AS bldsttCcode");
|
||||||
|
columns.put("bldsttCcodeName", "t.bldsttCcodeName AS bldsttCcodeName");
|
||||||
columns.put("dtin", "t.dtin AS dtin");
|
columns.put("dtin", "t.dtin AS dtin");
|
||||||
columns.put("runState", "t.runState AS runState");
|
columns.put("runState", "t.runState AS runState");
|
||||||
columns.put("dtinEnv", "t.dtinEnv AS dtinEnv");
|
columns.put("dtinEnv", "t.dtinEnv AS dtinEnv");
|
||||||
@ -3848,20 +3871,20 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID " +
|
||||||
" AND rstSort.STCD = eng.STCD "+
|
" AND rstSort.STCD = eng.STCD "+
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"INNER JOIN SD_QEC_R sqr ON sqr.STCD = eng.STCD " +
|
"INNER JOIN SD_QEC_R sqr ON sqr.STCD = eng.STCD " +
|
||||||
"LEFT JOIN SD_HYDROPW_R shr ON shr.STCD = sqr.STCD AND shr.TM = sqr.TM AND NVL(shr.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROPW_R shr ON shr.STCD = sqr.STCD AND shr.TM = sqr.TM AND NVL(shr.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_QEC_R bsqr ON bsqr.STCD = sqr.STCD AND ADD_MONTHS(bsqr.TM, 12) = sqr.TM AND NVL(bsqr.IS_DELETED, 0) = 0 ";
|
"LEFT JOIN SD_QEC_R bsqr ON bsqr.STCD = sqr.STCD AND ADD_MONTHS(bsqr.TM, 12) = sqr.TM AND NVL(bsqr.IS_DELETED, 0) = 0 ";
|
||||||
@ -3913,19 +3936,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN (" + buildDayRunDaySql() + ") runDay ON runDay.STCD = day.STCD AND runDay.DT = day.DT " +
|
"LEFT JOIN (" + buildDayRunDaySql() + ") runDay ON runDay.STCD = day.STCD AND runDay.DT = day.DT " +
|
||||||
"LEFT JOIN SD_QECDAY_S beforeDay ON beforeDay.STCD = day.STCD " +
|
"LEFT JOIN SD_QECDAY_S beforeDay ON beforeDay.STCD = day.STCD " +
|
||||||
" AND ADD_MONTHS(beforeDay.DT, 12) = day.DT AND NVL(beforeDay.IS_DELETED, 0) = 0 " +
|
" AND ADD_MONTHS(beforeDay.DT, 12) = day.DT AND NVL(beforeDay.IS_DELETED, 0) = 0 " +
|
||||||
@ -3979,19 +4002,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN SD_HYDROPWDRTP_S runDrtp ON drtp.STCD = runDrtp.STCD " +
|
"LEFT JOIN SD_HYDROPWDRTP_S runDrtp ON drtp.STCD = runDrtp.STCD " +
|
||||||
" AND drtp.DRTP = runDrtp.DRTP " +
|
" AND drtp.DRTP = runDrtp.DRTP " +
|
||||||
" AND NVL(drtp.DR, -1) = NVL(runDrtp.DR, -1) " +
|
" AND NVL(drtp.DR, -1) = NVL(runDrtp.DR, -1) " +
|
||||||
@ -5926,19 +5949,19 @@ public class EngEqDataServiceImpl implements EngEqDataService {
|
|||||||
.append("FROM SD_EQ_B_H a ")
|
.append("FROM SD_EQ_B_H a ")
|
||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = a.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = a.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN MS_ALONG_B along ON along.BASEID = a.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = a.RSTCD ")
|
.append(") rstSort ON rstSort.BASEID = a.BASE_ID AND rstSort.STCD = a.RSTCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = a.STCD ")
|
.append(") siteSort ON siteSort.BASEID = a.BASE_ID AND siteSort.STCD = a.STCD ")
|
||||||
.append("WHERE NVL(a.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(a.IS_DELETED, 0) = 0 ")
|
||||||
// .append("AND NVL(a.USFL, 1) = 1 ")
|
// .append("AND NVL(a.USFL, 1) = 1 ")
|
||||||
.append("AND a.LGTD IS NOT NULL ")
|
.append("AND a.LGTD IS NOT NULL ")
|
||||||
|
|||||||
@ -190,19 +190,19 @@ public class EngRiverServiceImpl implements EngRiverService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = rb.RSTCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = rb.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = rb.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = rb.STCD " +
|
||||||
"LEFT JOIN SD_VDINFO_B vdb ON vdb.CSTCD = rr.STCD AND NVL(vdb.USFL, 1) = 1 " +
|
"LEFT JOIN SD_VDINFO_B vdb ON vdb.CSTCD = rr.STCD AND NVL(vdb.USFL, 1) = 1 " +
|
||||||
"LEFT JOIN SD_VDINFO_R vdr ON vdr.STCD = vdb.STCD AND vdr.TM = rr.TM AND NVL(vdr.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_VDINFO_R vdr ON vdr.STCD = vdb.STCD AND vdr.TM = rr.TM AND NVL(vdr.IS_DELETED, 0) = 0 " +
|
||||||
"WHERE NVL(rr.IS_DELETED, 0) = 0 " +
|
"WHERE NVL(rr.IS_DELETED, 0) = 0 " +
|
||||||
|
|||||||
@ -4599,7 +4599,7 @@ public class FbStationServiceImpl implements FbStationService {
|
|||||||
String rstcd = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "rstcd");
|
String rstcd = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "rstcd");
|
||||||
String sttp = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "sttp");
|
String sttp = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "sttp");
|
||||||
if(StrUtil.isBlank(sttp)){
|
if(StrUtil.isBlank(sttp)){
|
||||||
sttp= QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "sttpCode");
|
sttp= Objects.requireNonNull(QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "sttpCode")).toLowerCase();
|
||||||
}
|
}
|
||||||
String bldsttCcode = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "bldsttCcode");
|
String bldsttCcode = QgcQueryWrapperUtil.getFilterFieldValue(devRequest, "bldsttCcode");
|
||||||
|
|
||||||
@ -4638,19 +4638,19 @@ public class FbStationServiceImpl implements FbStationService {
|
|||||||
.append("FROM SD_FBRD_B_H a ")
|
.append("FROM SD_FBRD_B_H a ")
|
||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = a.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = a.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = a.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = a.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = a.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = a.RSTCD ")
|
.append(") rstSort ON rstSort.BASEID = a.BASE_ID AND rstSort.STCD = a.RSTCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = a.STCD ")
|
.append(") siteSort ON siteSort.BASEID = a.BASE_ID AND siteSort.STCD = a.STCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT t.RSTCD AS stcd, COUNT(1) AS lcjStatus ")
|
.append(" SELECT t.RSTCD AS stcd, COUNT(1) AS lcjStatus ")
|
||||||
.append(" FROM SD_ENGFR_R t ")
|
.append(" FROM SD_ENGFR_R t ")
|
||||||
|
|||||||
@ -458,15 +458,15 @@ public class FhHabitatServiceImpl implements FhHabitatService {
|
|||||||
"FROM SD_FHBT_B_H fh " +
|
"FROM SD_FHBT_B_H fh " +
|
||||||
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = fh.RSTCD " +
|
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = fh.RSTCD " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(fh.BASE_ID, eng.BASE_ID) " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(fh.BASE_ID, eng.BASE_ID) " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = NVL(fh.HBRVCD, eng.HBRVCD) AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = fh.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, a.RVCD, det.STCD " +
|
" SELECT det.SORT,a.BASEID, a.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
||||||
" AND a.CODE = 'common' " +
|
" AND a.CODE = 'common' " +
|
||||||
") rstAlong ON rstAlong.RVCD = NVL(fh.HBRVCD, eng.HBRVCD) AND rstAlong.STCD = fh.RSTCD " +
|
") rstAlong ON rstAlong.BASEID = fh.BASE_ID AND rstAlong.STCD = fh.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT DISTINCT FHSTCD " +
|
" SELECT DISTINCT FHSTCD " +
|
||||||
" FROM ( " +
|
" FROM ( " +
|
||||||
@ -594,17 +594,17 @@ public class FhHabitatServiceImpl implements FhHabitatService {
|
|||||||
" FROM SD_FHBT_B_H fh " +
|
" FROM SD_FHBT_B_H fh " +
|
||||||
" LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = fh.RSTCD " +
|
" LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = fh.RSTCD " +
|
||||||
" LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(fh.BASE_ID, eng.BASE_ID) " +
|
" LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(fh.BASE_ID, eng.BASE_ID) " +
|
||||||
" LEFT JOIN MS_ALONG_B along ON along.RVCD = NVL(fh.HBRVCD, eng.HBRVCD) " +
|
" LEFT JOIN MS_ALONG_B along ON along.BASEID =fh.BASE_ID " +
|
||||||
" AND along.CODE = 'common' " +
|
" AND along.CODE = 'common' " +
|
||||||
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, a.RVCD, det.STCD " +
|
" SELECT det.SORT,a.BASEID, a.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
||||||
" AND a.CODE = 'common' " +
|
" AND a.CODE = 'common' " +
|
||||||
" ) rstAlong ON rstAlong.RVCD = NVL(fh.HBRVCD, eng.HBRVCD) AND rstAlong.STCD = fh.RSTCD " +
|
" ) rstAlong ON rstAlong.BASEID = fh.BASE_ID AND rstAlong.STCD = fh.RSTCD " +
|
||||||
" WHERE NVL(fh.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(fh.IS_DELETED, 0) = 0 " +
|
||||||
// " AND NVL(fh.BASE_ID, 'other') <> 'other' " +
|
// " AND NVL(fh.BASE_ID, 'other') <> 'other' " +
|
||||||
// " AND NOT EXISTS ( " +
|
// " AND NOT EXISTS ( " +
|
||||||
@ -618,13 +618,13 @@ public class FhHabitatServiceImpl implements FhHabitatService {
|
|||||||
" AND along.CODE = 'common' " +
|
" AND along.CODE = 'common' " +
|
||||||
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, a.RVCD, det.STCD " +
|
" SELECT det.SORT,a.BASEID, a.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
" INNER JOIN MS_ALONG_B a ON a.ID = det.ALONG_ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
" AND NVL(a.IS_DELETED, 0) = 0 " +
|
||||||
" AND a.CODE = 'common' " +
|
" AND a.CODE = 'common' " +
|
||||||
" ) rstAlong ON rstAlong.RVCD = eng.HBRVCD AND rstAlong.STCD = childBase.RSTCD ";
|
" ) rstAlong ON rstAlong.BASEID = eng.BASE_ID AND rstAlong.STCD = childBase.RSTCD ";
|
||||||
return "SELECT childBase.STCD, " +
|
return "SELECT childBase.STCD, " +
|
||||||
" childBase.STNM, " +
|
" childBase.STNM, " +
|
||||||
" childBase.FHSTCD, " +
|
" childBase.FHSTCD, " +
|
||||||
|
|||||||
@ -255,11 +255,11 @@ public class FpBuildServiceImpl implements FpBuildService {
|
|||||||
"eng.BASE_ID AS baseId, " +
|
"eng.BASE_ID AS baseId, " +
|
||||||
"fp.STTP AS sttp, " +
|
"fp.STTP AS sttp, " +
|
||||||
"CASE " +
|
"CASE " +
|
||||||
"WHEN fp.STTP = 'FP_1' THEN 'GY_1' " +
|
"WHEN fp.STTP = 'FP_1' THEN 'gy_1' " +
|
||||||
"WHEN fp.STTP = 'FP_2' THEN 'GY_2' " +
|
"WHEN fp.STTP = 'FP_2' THEN 'gy_2' " +
|
||||||
"WHEN fp.STTP = 'FP_3' THEN 'GY_3' " +
|
"WHEN fp.STTP = 'FP_3' THEN 'gy_3' " +
|
||||||
"WHEN fp.STTP = 'FP_4' THEN 'GY_4' " +
|
"WHEN fp.STTP = 'FP_4' THEN 'gy_4' " +
|
||||||
"ELSE 'GY_5' END AS anchoPointState, " +
|
"ELSE 'gy_5' END AS anchoPointState, " +
|
||||||
"fp.MWAY AS mway, " +
|
"fp.MWAY AS mway, " +
|
||||||
"fp.DTIN AS dtin, " +
|
"fp.DTIN AS dtin, " +
|
||||||
"state.STD_SSTATE AS stdSstate, " +
|
"state.STD_SSTATE AS stdSstate, " +
|
||||||
@ -1304,15 +1304,15 @@ public class FpBuildServiceImpl implements FpBuildService {
|
|||||||
for (FpAnchoPointVo vo : resultList) {
|
for (FpAnchoPointVo vo : resultList) {
|
||||||
String sttp = vo.getSttp();
|
String sttp = vo.getSttp();
|
||||||
if ("FP_1".equals(sttp)) {
|
if ("FP_1".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_1_BUILT");
|
vo.setAnchoPointState("gy_1_built");
|
||||||
} else if ("FP_2".equals(sttp)) {
|
} else if ("FP_2".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_2_BUILT");
|
vo.setAnchoPointState("gy_2_built");
|
||||||
} else if ("FP_3".equals(sttp)) {
|
} else if ("FP_3".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_3_BUILT");
|
vo.setAnchoPointState("gy_3_built");
|
||||||
} else if ("FP_4".equals(sttp)) {
|
} else if ("FP_4".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_4_BUILT");
|
vo.setAnchoPointState("gy_4_built");
|
||||||
} else {
|
} else {
|
||||||
vo.setAnchoPointState("GY_5_BUILT");
|
vo.setAnchoPointState("gy_5_built");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -173,7 +173,7 @@ public class FprMonitorServiceImpl implements FprMonitorService {
|
|||||||
.append("hb.BASENAME AS baseName, ")
|
.append("hb.BASENAME AS baseName, ")
|
||||||
.append("aim.STTP AS sttp, ")
|
.append("aim.STTP AS sttp, ")
|
||||||
.append("sttp.STTP_NAME AS sttpName, ")
|
.append("sttp.STTP_NAME AS sttpName, ")
|
||||||
.append("'' AS anchoPointState, ")
|
.append("'fprd' AS anchoPointState, ")
|
||||||
.append("aim.MWAY AS mway, ")
|
.append("aim.MWAY AS mway, ")
|
||||||
.append("aim.DTIN AS dtin, ")
|
.append("aim.DTIN AS dtin, ")
|
||||||
// .append("aim.STDSSTATE AS stdSstate, ")
|
// .append("aim.STDSSTATE AS stdSstate, ")
|
||||||
@ -446,25 +446,25 @@ public class FprMonitorServiceImpl implements FprMonitorService {
|
|||||||
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = src.STTP " +
|
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = src.STTP " +
|
||||||
" AND NVL(sttp.IS_DELETED, 0) = 0 " +
|
" AND NVL(sttp.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(sttp.ENABLE, 1) = 1 " +
|
" AND NVL(sttp.ENABLE, 1) = 1 " +
|
||||||
"LEFT JOIN MS_ALONG_B alongBase ON alongBase.RVCD = src.HBRVCD " +
|
"LEFT JOIN MS_ALONG_B alongBase ON alongBase.BASEID = src.BASE_ID " +
|
||||||
" AND alongBase.CODE = 'common' " +
|
" AND alongBase.CODE = 'common' " +
|
||||||
" AND NVL(alongBase.IS_DELETED, 0) = 0 " +
|
" AND NVL(alongBase.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.STCD, det.SORT, along.RVCD " +
|
" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
" AND along.CODE = 'common' " +
|
" AND along.CODE = 'common' " +
|
||||||
") engSort ON engSort.RVCD = src.HBRVCD AND engSort.STCD = src.RSTCD " +
|
") engSort ON engSort.BASEID = src.BASE_ID AND engSort.STCD = src.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.STCD, det.SORT, along.RVCD " +
|
" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 " +
|
||||||
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
" AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
" AND along.CODE = 'common' " +
|
" AND along.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = src.HBRVCD AND siteSort.STCD = src.STCD " +
|
") siteSort ON siteSort.BASEID = src.BASE_ID AND siteSort.STCD = src.STCD " +
|
||||||
"WHERE NVL(src.IS_DELETED, 0) = 0 ";
|
"WHERE NVL(src.IS_DELETED, 0) = 0 ";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -32,4 +32,10 @@ public class OverviewController {
|
|||||||
public ResponseResult getOpedList(@RequestBody DataSourceRequest dataSourceRequest) {
|
public ResponseResult getOpedList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
return ResponseResult.successData(overviewService.getOpedList(dataSourceRequest));
|
return ResponseResult.successData(overviewService.getOpedList(dataSourceRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/vmsstbprpt/GetKendoList")
|
||||||
|
@Operation(summary = "沿程对象视图(V_MS_STBPRP_T)条件过滤数据列表")
|
||||||
|
public ResponseResult getVmsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
return ResponseResult.successData(overviewService.getVmsstbprptList(dataSourceRequest));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,70 @@
|
|||||||
|
package com.yfd.platform.qgc_env.overview.entity.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Schema(description = "沿程对象视图(V_MS_STBPRP_T)查询结果")
|
||||||
|
public class OverviewVmsstbprptVo implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private String stcd;
|
||||||
|
private String stnm;
|
||||||
|
private String ennm;
|
||||||
|
private String sttp;
|
||||||
|
private String sttpCode;
|
||||||
|
private String sttpName;
|
||||||
|
private String sttpFullPath;
|
||||||
|
private Integer sttpTreeLevel;
|
||||||
|
private String rstcd;
|
||||||
|
private String baseId;
|
||||||
|
private String baseName;
|
||||||
|
private String hbrvcd;
|
||||||
|
private String hbrvcdName;
|
||||||
|
private String rvcd;
|
||||||
|
private String rvcdName;
|
||||||
|
private String addvcd;
|
||||||
|
private String addvnm;
|
||||||
|
private String hycd;
|
||||||
|
private String hynm;
|
||||||
|
private String topHycd;
|
||||||
|
private String topHynm;
|
||||||
|
private BigDecimal lgtd;
|
||||||
|
private BigDecimal lttd;
|
||||||
|
private String stlc;
|
||||||
|
private Integer usfl;
|
||||||
|
private Integer dtin;
|
||||||
|
private Date dtinTm;
|
||||||
|
private Integer bldsttCode;
|
||||||
|
private String introduce;
|
||||||
|
private String logo;
|
||||||
|
private String inffile;
|
||||||
|
private BigDecimal inv;
|
||||||
|
private Integer invinmn;
|
||||||
|
private Date stdsdt;
|
||||||
|
private Date pststdt;
|
||||||
|
private Date pesstdt;
|
||||||
|
private Date swdt;
|
||||||
|
private Date jcdt;
|
||||||
|
private Date wddt;
|
||||||
|
private Integer orderIndex;
|
||||||
|
private String remark;
|
||||||
|
private String vlsr;
|
||||||
|
private String stindx;
|
||||||
|
private String coenvwState;
|
||||||
|
private String dvtpName;
|
||||||
|
private Date vlsrTm;
|
||||||
|
private String recordUser;
|
||||||
|
private Date recordTime;
|
||||||
|
private String modifyUser;
|
||||||
|
private Date modifyTime;
|
||||||
|
private Integer isDeleted;
|
||||||
|
private String deleteUser;
|
||||||
|
private Date deleteTime;
|
||||||
|
private String dataSource;
|
||||||
|
}
|
||||||
@ -4,10 +4,13 @@ import com.yfd.platform.common.DataSourceRequest;
|
|||||||
import com.yfd.platform.common.DataSourceResult;
|
import com.yfd.platform.common.DataSourceResult;
|
||||||
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewMsstbprptVo;
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewMsstbprptVo;
|
||||||
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewOpedVo;
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewOpedVo;
|
||||||
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewVmsstbprptVo;
|
||||||
|
|
||||||
public interface OverviewService {
|
public interface OverviewService {
|
||||||
|
|
||||||
DataSourceResult<OverviewMsstbprptVo> getMsstbprptList(DataSourceRequest dataSourceRequest);
|
DataSourceResult<OverviewMsstbprptVo> getMsstbprptList(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
DataSourceResult<OverviewOpedVo> getOpedList(DataSourceRequest dataSourceRequest);
|
DataSourceResult<OverviewOpedVo> getOpedList(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
|
DataSourceResult<OverviewVmsstbprptVo> getVmsstbprptList(DataSourceRequest dataSourceRequest);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,8 +9,11 @@ import com.yfd.platform.common.DataSourceResult;
|
|||||||
import com.yfd.platform.common.GroupHelper;
|
import com.yfd.platform.common.GroupHelper;
|
||||||
import com.yfd.platform.common.GroupingInfo;
|
import com.yfd.platform.common.GroupingInfo;
|
||||||
import com.yfd.platform.common.MicroservicDynamicSQLMapper;
|
import com.yfd.platform.common.MicroservicDynamicSQLMapper;
|
||||||
|
import com.yfd.platform.qgc_base.domain.vo.DataScopeApplyResult;
|
||||||
|
import com.yfd.platform.qgc_base.service.IDataScopeFilterService;
|
||||||
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewMsstbprptVo;
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewMsstbprptVo;
|
||||||
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewOpedVo;
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewOpedVo;
|
||||||
|
import com.yfd.platform.qgc_env.overview.entity.vo.OverviewVmsstbprptVo;
|
||||||
import com.yfd.platform.qgc_env.overview.service.OverviewService;
|
import com.yfd.platform.qgc_env.overview.service.OverviewService;
|
||||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
@ -31,6 +34,9 @@ public class OverviewServiceImpl implements OverviewService {
|
|||||||
@Resource
|
@Resource
|
||||||
private MicroservicDynamicSQLMapper microservicDynamicSQLMapper;
|
private MicroservicDynamicSQLMapper microservicDynamicSQLMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IDataScopeFilterService dataScopeFilterService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DataSourceResult<OverviewMsstbprptVo> getMsstbprptList(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<OverviewMsstbprptVo> getMsstbprptList(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
@ -109,6 +115,47 @@ public class OverviewServiceImpl implements OverviewService {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataSourceResult<OverviewVmsstbprptVo> getVmsstbprptList(DataSourceRequest dataSourceRequest) {
|
||||||
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
|
List<String> selectFields = resolveVmsstbprptSelectFields(dataSourceRequest == null ? null : dataSourceRequest.getSelect());
|
||||||
|
// "CASE eng.DVTP WHEN '1' THEN '堤坝式' WHEN '2' THEN '引水式' WHEN '3' THEN '混合式' ELSE '未知' END AS dvtpName,"+
|
||||||
|
StringBuilder sql = new StringBuilder();
|
||||||
|
sql.append("SELECT ")
|
||||||
|
.append(buildVmsstbprptSelectSql(selectFields))
|
||||||
|
.append(" FROM V_MS_STBPRP_T t WHERE 1 = 1 ");
|
||||||
|
|
||||||
|
Map<String, Object> paramMap = new HashMap<>();
|
||||||
|
String filterSql = buildVmsstbprptFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), paramMap, new int[]{0});
|
||||||
|
if (StrUtil.isNotBlank(filterSql)) {
|
||||||
|
sql.append(" AND ").append(filterSql);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 数据权限过滤:基于当前用户有权限的电站编码过滤
|
||||||
|
// DataScopeApplyResult scopeResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.STCD");
|
||||||
|
// if (scopeResult.isEmptyResult()) {
|
||||||
|
// DataSourceResult<OverviewVmsstbprptVo> result = new DataSourceResult<>();
|
||||||
|
// result.setData(new ArrayList<>());
|
||||||
|
// result.setTotal(0L);
|
||||||
|
// result.setAggregates(new HashMap<>());
|
||||||
|
// return result;
|
||||||
|
// }
|
||||||
|
|
||||||
|
sql.append(buildVmsstbprptOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
|
||||||
|
|
||||||
|
Page<?> page = loadOptions == null ? null
|
||||||
|
: QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
|
||||||
|
List<OverviewVmsstbprptVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(
|
||||||
|
page, sql.toString(), paramMap, OverviewVmsstbprptVo.class
|
||||||
|
);
|
||||||
|
|
||||||
|
DataSourceResult<OverviewVmsstbprptVo> result = new DataSourceResult<>();
|
||||||
|
result.setData(list);
|
||||||
|
result.setTotal(page == null ? list.size() : page.getTotal());
|
||||||
|
result.setAggregates(new HashMap<>());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
private DataSourceResult<OverviewOpedVo> queryOpedSummaryList(DataSourceRequest dataSourceRequest,
|
private DataSourceResult<OverviewOpedVo> queryOpedSummaryList(DataSourceRequest dataSourceRequest,
|
||||||
DataSourceLoadOptionsBase loadOptions,
|
DataSourceLoadOptionsBase loadOptions,
|
||||||
Map<String, Object> paramMap) {
|
Map<String, Object> paramMap) {
|
||||||
@ -1340,4 +1387,290 @@ public class OverviewServiceImpl implements OverviewService {
|
|||||||
}
|
}
|
||||||
values.add(value);
|
values.add(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ======================== V_MS_STBPRP_T helper methods ========================
|
||||||
|
|
||||||
|
private List<String> resolveVmsstbprptSelectFields(List<String> select) {
|
||||||
|
List<String> fields = CollUtil.isEmpty(select)
|
||||||
|
? new ArrayList<>(buildVmsstbprptSelectMap().keySet())
|
||||||
|
: new ArrayList<>(select);
|
||||||
|
LinkedHashSet<String> uniqueFields = new LinkedHashSet<>();
|
||||||
|
for (String field : fields) {
|
||||||
|
if (StrUtil.isNotBlank(field)) {
|
||||||
|
uniqueFields.add(field.trim());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (uniqueFields.isEmpty()) {
|
||||||
|
uniqueFields.add("stcd");
|
||||||
|
}
|
||||||
|
return new ArrayList<>(uniqueFields);
|
||||||
|
}
|
||||||
|
|
||||||
|
private String buildVmsstbprptSelectSql(List<String> selectFields) {
|
||||||
|
Map<String, String> columnMap = buildVmsstbprptSelectMap();
|
||||||
|
List<String> selectParts = new ArrayList<>();
|
||||||
|
for (String field : selectFields) {
|
||||||
|
String column = columnMap.get(field);
|
||||||
|
if (StrUtil.isNotBlank(column)) {
|
||||||
|
selectParts.add(column);
|
||||||
|
if(field.equals("sttpCode")){
|
||||||
|
selectParts.add("t.STTP_NAME sttpName");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
selectParts.add("NULL AS \"" + field + "\"");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (selectParts.isEmpty()) {
|
||||||
|
selectParts.add("t.STCD AS \"stcd\"");
|
||||||
|
}
|
||||||
|
return String.join(", ", selectParts);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Map<String, String> buildVmsstbprptSelectMap() {
|
||||||
|
Map<String, String> columnMap = new LinkedHashMap<>();
|
||||||
|
columnMap.put("stcd", "t.STCD AS \"stcd\"");
|
||||||
|
columnMap.put("stnm", "t.STNM AS \"stnm\"");
|
||||||
|
columnMap.put("ennm", "t.ENNM AS \"ennm\"");
|
||||||
|
columnMap.put("sttp", "t.STTP AS \"sttp\"");
|
||||||
|
columnMap.put("sttpCode", "t.STTP_CODE AS \"sttpCode\"");
|
||||||
|
columnMap.put("sttpName", "t.STTP_NAME AS \"sttpName\"");
|
||||||
|
columnMap.put("sttpFullPath", "t.STTP_FULL_PATH AS \"sttpFullPath\"");
|
||||||
|
columnMap.put("sttpTreeLevel", "t.STTP_TREE_LEVEL AS \"sttpTreeLevel\"");
|
||||||
|
columnMap.put("rstcd", "t.RSTCD AS \"rstcd\"");
|
||||||
|
columnMap.put("baseId", "t.BASE_ID AS \"baseId\"");
|
||||||
|
columnMap.put("baseName", "t.BASE_NAME AS \"baseName\"");
|
||||||
|
columnMap.put("hbrvcd", "t.HBRVCD AS \"hbrvcd\"");
|
||||||
|
columnMap.put("hbrvcdName", "t.HBRVCD_NAME AS \"hbrvcdName\"");
|
||||||
|
columnMap.put("rvcd", "t.RVCD AS \"rvcd\"");
|
||||||
|
columnMap.put("rvcdName", "t.RVCD_NAME AS \"rvcdName\"");
|
||||||
|
columnMap.put("addvcd", "t.ADDVCD AS \"addvcd\"");
|
||||||
|
columnMap.put("addvnm", "t.ADDVNM AS \"addvnm\"");
|
||||||
|
columnMap.put("hycd", "t.HYCD AS \"hycd\"");
|
||||||
|
columnMap.put("hynm", "t.HYNM AS \"hynm\"");
|
||||||
|
columnMap.put("topHycd", "t.TOP_HYCD AS \"topHycd\"");
|
||||||
|
columnMap.put("topHynm", "t.TOP_HYNM AS \"topHynm\"");
|
||||||
|
columnMap.put("lgtd", "t.LGTD AS \"lgtd\"");
|
||||||
|
columnMap.put("lttd", "t.LTTD AS \"lttd\"");
|
||||||
|
columnMap.put("stlc", "t.STLC AS \"stlc\"");
|
||||||
|
columnMap.put("usfl", "t.USFL AS \"usfl\"");
|
||||||
|
columnMap.put("dtin", "t.DTIN AS \"dtin\"");
|
||||||
|
columnMap.put("dtinTm", "t.DTIN_TM AS \"dtinTm\"");
|
||||||
|
columnMap.put("bldsttCode", "t.BLDSTT_CODE AS \"bldsttCode\"");
|
||||||
|
columnMap.put("introduce", "t.INTRODUCE AS \"introduce\"");
|
||||||
|
columnMap.put("logo", "t.LOGO AS \"logo\"");
|
||||||
|
columnMap.put("inffile", "t.INFFILE AS \"inffile\"");
|
||||||
|
columnMap.put("inv", "t.INV AS \"inv\"");
|
||||||
|
columnMap.put("invinmn", "t.INVINMN AS \"invinmn\"");
|
||||||
|
columnMap.put("stdsdt", "t.STDSDT AS \"stdsdt\"");
|
||||||
|
columnMap.put("pststdt", "t.PSTSTDT AS \"pststdt\"");
|
||||||
|
columnMap.put("pesstdt", "t.PESSTDT AS \"pesstdt\"");
|
||||||
|
columnMap.put("swdt", "t.SWDT AS \"swdt\"");
|
||||||
|
columnMap.put("jcdt", "t.JCDT AS \"jcdt\"");
|
||||||
|
columnMap.put("wddt", "t.WDDT AS \"wddt\"");
|
||||||
|
columnMap.put("orderIndex", "t.ORDER_INDEX AS \"orderIndex\"");
|
||||||
|
columnMap.put("remark", "t.REMARK AS \"remark\"");
|
||||||
|
columnMap.put("stindx", "t.STINDX AS \"stindx\"");
|
||||||
|
columnMap.put("coenvwState", "t.COENVW_STATE AS \"coenvwState\"");
|
||||||
|
columnMap.put("dvtp", "CASE t.DVTP WHEN '1' THEN '堤坝式' WHEN '2' THEN '引水式' WHEN '3' THEN '混合式' ELSE '未知' END AS \"dvtpName\" ");
|
||||||
|
columnMap.put("vlsr", "t.VLSR AS \"vlsr\"");
|
||||||
|
columnMap.put("vlsrTm", "t.VLSR_TM AS \"vlsrTm\"");
|
||||||
|
columnMap.put("recordUser", "t.RECORD_USER AS \"recordUser\"");
|
||||||
|
columnMap.put("recordTime", "t.RECORD_TIME AS \"recordTime\"");
|
||||||
|
columnMap.put("modifyUser", "t.MODIFY_USER AS \"modifyUser\"");
|
||||||
|
columnMap.put("modifyTime", "t.MODIFY_TIME AS \"modifyTime\"");
|
||||||
|
columnMap.put("isDeleted", "t.IS_DELETED AS \"isDeleted\"");
|
||||||
|
columnMap.put("deleteUser", "t.DELETE_USER AS \"deleteUser\"");
|
||||||
|
columnMap.put("deleteTime", "t.DELETE_TIME AS \"deleteTime\"");
|
||||||
|
columnMap.put("dataSource", "t.DATA_SOURCE AS \"dataSource\"");
|
||||||
|
return columnMap;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String buildVmsstbprptFilterCondition(DataSourceRequest.FilterDescriptor filter,
|
||||||
|
Map<String, Object> paramMap,
|
||||||
|
int[] indexHolder) {
|
||||||
|
if (filter == null) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
if (StrUtil.isNotBlank(filter.getField())) {
|
||||||
|
return buildVmsstbprptLeafCondition(filter, paramMap, indexHolder);
|
||||||
|
}
|
||||||
|
if (CollUtil.isEmpty(filter.getFilters())) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
List<String> conditions = new ArrayList<>();
|
||||||
|
for (DataSourceRequest.FilterDescriptor child : filter.getFilters()) {
|
||||||
|
String childSql = buildVmsstbprptFilterCondition(child, paramMap, indexHolder);
|
||||||
|
if (StrUtil.isNotBlank(childSql)) {
|
||||||
|
conditions.add("(" + childSql + ")");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (conditions.isEmpty()) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
String logic = "or".equalsIgnoreCase(filter.getLogic()) ? " OR " : " AND ";
|
||||||
|
return String.join(logic, conditions);
|
||||||
|
}
|
||||||
|
|
||||||
|
private String buildVmsstbprptLeafCondition(DataSourceRequest.FilterDescriptor filter,
|
||||||
|
Map<String, Object> paramMap,
|
||||||
|
int[] indexHolder) {
|
||||||
|
String field = filter.getField();
|
||||||
|
if (StrUtil.isBlank(field)) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
String operator = StrUtil.blankToDefault(filter.getOperator(), "eq").toLowerCase();
|
||||||
|
String column = mapVmsstbprptColumn(field);
|
||||||
|
if (StrUtil.isBlank(column)) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
if ("isnull".equals(operator)) {
|
||||||
|
return column + " IS NULL";
|
||||||
|
}
|
||||||
|
if ("isnotnull".equals(operator)) {
|
||||||
|
return column + " IS NOT NULL";
|
||||||
|
}
|
||||||
|
if ("isempty".equals(operator)) {
|
||||||
|
return "(" + column + " IS NULL OR " + column + " = '')";
|
||||||
|
}
|
||||||
|
if ("isnotempty".equals(operator)) {
|
||||||
|
return "(" + column + " IS NOT NULL AND " + column + " <> '')";
|
||||||
|
}
|
||||||
|
if ("in".equals(operator) || "ni".equals(operator)) {
|
||||||
|
List<Object> values = normalizeValues(filter.getValue());
|
||||||
|
if (values.isEmpty()) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
List<String> placeholders = new ArrayList<>();
|
||||||
|
for (Object item : values) {
|
||||||
|
String key = "vmsp" + indexHolder[0]++;
|
||||||
|
paramMap.put(key, item);
|
||||||
|
placeholders.add("#{map." + key + "}");
|
||||||
|
}
|
||||||
|
if (placeholders.isEmpty()) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
return column + ("ni".equals(operator) ? " NOT IN (" : " IN (") + String.join(", ", placeholders) + ")";
|
||||||
|
}
|
||||||
|
Object value = filter.getValue();
|
||||||
|
if (value == null) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
String key = "vmsp" + indexHolder[0]++;
|
||||||
|
paramMap.put(key, value);
|
||||||
|
return switch (operator) {
|
||||||
|
case "eq" -> column + " = #{map." + key + "}";
|
||||||
|
case "neq" -> column + " <> #{map." + key + "}";
|
||||||
|
case "contains" -> {
|
||||||
|
paramMap.put(key, "%" + value + "%");
|
||||||
|
yield column + " LIKE #{map." + key + "}";
|
||||||
|
}
|
||||||
|
case "doesnotcontain" -> {
|
||||||
|
paramMap.put(key, "%" + value + "%");
|
||||||
|
yield column + " NOT LIKE #{map." + key + "}";
|
||||||
|
}
|
||||||
|
case "startswith" -> {
|
||||||
|
paramMap.put(key, value + "%");
|
||||||
|
yield column + " LIKE #{map." + key + "}";
|
||||||
|
}
|
||||||
|
case "endswith" -> {
|
||||||
|
paramMap.put(key, "%" + value);
|
||||||
|
yield column + " LIKE #{map." + key + "}";
|
||||||
|
}
|
||||||
|
case "gt" -> column + " > #{map." + key + "}";
|
||||||
|
case "gte" -> column + " >= #{map." + key + "}";
|
||||||
|
case "lt" -> column + " < #{map." + key + "}";
|
||||||
|
case "lte" -> column + " <= #{map." + key + "}";
|
||||||
|
default -> "";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private String mapVmsstbprptColumn(String field) {
|
||||||
|
if (StrUtil.isBlank(field)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return switch (field) {
|
||||||
|
case "stcd" -> "t.STCD";
|
||||||
|
case "stnm" -> "t.STNM";
|
||||||
|
case "ennm" -> "t.ENNM";
|
||||||
|
case "sttp" -> "t.STTP";
|
||||||
|
case "sttpCode" -> "t.STTP_CODE";
|
||||||
|
case "sttpName" -> "t.STTP_NAME";
|
||||||
|
case "sttpFullPath" -> "t.STTP_FULL_PATH";
|
||||||
|
case "sttpTreeLevel" -> "t.STTP_TREE_LEVEL";
|
||||||
|
case "rstcd" -> "t.RSTCD";
|
||||||
|
case "baseId" -> "t.BASE_ID";
|
||||||
|
case "baseName" -> "t.BASE_NAME";
|
||||||
|
case "hbrvcd" -> "t.HBRVCD";
|
||||||
|
case "hbrvcdName" -> "t.HBRVCD_NAME";
|
||||||
|
case "rvcd" -> "t.RVCD";
|
||||||
|
case "rvcdName" -> "t.RVCD_NAME";
|
||||||
|
case "addvcd" -> "t.ADDVCD";
|
||||||
|
case "addvnm" -> "t.ADDVNM";
|
||||||
|
case "hycd" -> "t.HYCD";
|
||||||
|
case "hynm" -> "t.HYNM";
|
||||||
|
case "topHycd" -> "t.TOP_HYCD";
|
||||||
|
case "topHynm" -> "t.TOP_HYNM";
|
||||||
|
case "lgtd" -> "t.LGTD";
|
||||||
|
case "lttd" -> "t.LTTD";
|
||||||
|
case "stlc" -> "t.STLC";
|
||||||
|
case "usfl" -> "t.USFL";
|
||||||
|
case "dtin" -> "t.DTIN";
|
||||||
|
case "DTIN" -> "t.DTIN";
|
||||||
|
case "dtinType" -> "t.DTIN_TYPE";
|
||||||
|
case "mway" -> "t.MWAY";
|
||||||
|
case "dtinTm" -> "t.DTIN_TM";
|
||||||
|
case "bldsttCcode" -> "t.BLDSTT_CODE";
|
||||||
|
case "introduce" -> "t.INTRODUCE";
|
||||||
|
case "runState" -> "t.RUN_STATE";
|
||||||
|
case "logo" -> "t.LOGO";
|
||||||
|
case "inffile" -> "t.INFFILE";
|
||||||
|
case "inv" -> "t.INV";
|
||||||
|
case "invinmn" -> "t.INVINMN";
|
||||||
|
case "stdsdt" -> "t.STDSDT";
|
||||||
|
case "pststdt" -> "t.PSTSTDT";
|
||||||
|
case "pesstdt" -> "t.PESSTDT";
|
||||||
|
case "swdt" -> "t.SWDT";
|
||||||
|
case "jcdt" -> "t.JCDT";
|
||||||
|
case "baseStepSort" -> "t.BASESTEPSORT";
|
||||||
|
case "rvcdStepSort" -> "t.RVCDSTEPSORT";
|
||||||
|
case "rstcdStepSort" -> "t.RSTCDSTEPSORT";
|
||||||
|
case "siteStepSort" -> "t.SITESTEPSORT";
|
||||||
|
case "wddt" -> "t.WDDT";
|
||||||
|
case "orderIndex" -> "t.ORDER_INDEX";
|
||||||
|
case "remark" -> "t.REMARK";
|
||||||
|
case "vlsr" -> "t.VLSR";
|
||||||
|
case "vlsrTm" -> "t.VLSR_TM";
|
||||||
|
case "recordUser" -> "t.RECORD_USER";
|
||||||
|
case "recordTime" -> "t.RECORD_TIME";
|
||||||
|
case "modifyUser" -> "t.MODIFY_USER";
|
||||||
|
case "modifyTime" -> "t.MODIFY_TIME";
|
||||||
|
case "isDeleted" -> "t.IS_DELETED";
|
||||||
|
case "deleteUser" -> "t.DELETE_USER";
|
||||||
|
case "deleteTime" -> "t.DELETE_TIME";
|
||||||
|
case "dataSource" -> "t.DATA_SOURCE";
|
||||||
|
default -> null;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private String buildVmsstbprptOrderBySql(List<DataSourceRequest.SortDescriptor> sortList) {
|
||||||
|
if (CollUtil.isEmpty(sortList)) {
|
||||||
|
return " ORDER BY t.ORDER_INDEX ASC NULLS LAST, t.STNM ASC";
|
||||||
|
}
|
||||||
|
List<String> orderItems = new ArrayList<>();
|
||||||
|
for (DataSourceRequest.SortDescriptor sort : sortList) {
|
||||||
|
if (sort == null || StrUtil.isBlank(sort.getField())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
String column = mapVmsstbprptColumn(sort.getField());
|
||||||
|
if (StrUtil.isBlank(column)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
String dir = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC";
|
||||||
|
orderItems.add(column + " " + dir + " NULLS LAST");
|
||||||
|
}
|
||||||
|
if (orderItems.isEmpty()) {
|
||||||
|
return " ORDER BY t.ORDER_INDEX ASC NULLS LAST, t.STNM ASC";
|
||||||
|
}
|
||||||
|
return " ORDER BY " + String.join(", ", orderItems);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1980,15 +1980,24 @@ public class VpConstructionServiceImpl implements VpConstructionService {
|
|||||||
List<FhvapBuiltPointVo> resultList = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhvapBuiltPointVo.class);
|
List<FhvapBuiltPointVo> resultList = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), paramMap, FhvapBuiltPointVo.class);
|
||||||
|
|
||||||
for (FhvapBuiltPointVo vo : resultList) {
|
for (FhvapBuiltPointVo vo : resultList) {
|
||||||
String sttp = vo.getSttp();
|
// String sttp = vo.getSttp();
|
||||||
if ("VP".equals(sttp)) {
|
// if ("VP".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_1_BUILT");
|
// vo.setAnchoPointState("gy_1_built");
|
||||||
} else if ("VA".equals(sttp)) {
|
// } else if ("VA".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_2_BUILT");
|
// vo.setAnchoPointState("gy_2_built");
|
||||||
} else if ("FH".equals(sttp)) {
|
// } else if ("FH".equals(sttp)) {
|
||||||
vo.setAnchoPointState("GY_3_BUILT");
|
// vo.setAnchoPointState("gy_3_built");
|
||||||
} else {
|
// } else {
|
||||||
vo.setAnchoPointState("GY_4_BUILT");
|
// vo.setAnchoPointState("gy_4_built");
|
||||||
|
// }
|
||||||
|
// 设置在建栖息地/珍稀植物园/动物救助站
|
||||||
|
if ("1".equals(vo.getBldsttCcode())) {
|
||||||
|
if ("FP".equals(vo.getSttp())) {
|
||||||
|
vo.setAnchoPointState("VP_built");
|
||||||
|
}
|
||||||
|
if ("VA".equals(vo.getSttp())) {
|
||||||
|
vo.setAnchoPointState("VA_built");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -9,6 +9,8 @@ import com.yfd.platform.common.DataSourceResult;
|
|||||||
import com.yfd.platform.common.GroupHelper;
|
import com.yfd.platform.common.GroupHelper;
|
||||||
import com.yfd.platform.common.GroupingInfo;
|
import com.yfd.platform.common.GroupingInfo;
|
||||||
import com.yfd.platform.common.MicroservicDynamicSQLMapper;
|
import com.yfd.platform.common.MicroservicDynamicSQLMapper;
|
||||||
|
import com.yfd.platform.qgc_base.domain.vo.DataScopeApplyResult;
|
||||||
|
import com.yfd.platform.qgc_base.service.IDataScopeFilterService;
|
||||||
import com.yfd.platform.qgc_env.vd.entity.vo.VdAiPointVo;
|
import com.yfd.platform.qgc_env.vd.entity.vo.VdAiPointVo;
|
||||||
import com.yfd.platform.qgc_env.vd.entity.vo.VdPointVo;
|
import com.yfd.platform.qgc_env.vd.entity.vo.VdPointVo;
|
||||||
import com.yfd.platform.qgc_env.vd.entity.vo.VdRunDataVo;
|
import com.yfd.platform.qgc_env.vd.entity.vo.VdRunDataVo;
|
||||||
@ -18,6 +20,7 @@ import com.yfd.platform.qgc_env.vd.entity.vo.VdVmsstbprptVo;
|
|||||||
import com.yfd.platform.qgc_env.vd.service.VdMonitorService;
|
import com.yfd.platform.qgc_env.vd.service.VdMonitorService;
|
||||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.cache.annotation.Cacheable;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@ -33,6 +36,9 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private MicroservicDynamicSQLMapper microservicDynamicSQLMapper;
|
private MicroservicDynamicSQLMapper microservicDynamicSQLMapper;
|
||||||
|
@Resource
|
||||||
|
private IDataScopeFilterService dataScopeFilterService;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DataSourceResult<VdVmsstbprptVo> getVmsstbprptList(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<VdVmsstbprptVo> getVmsstbprptList(DataSourceRequest dataSourceRequest) {
|
||||||
@ -222,6 +228,7 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Cacheable(cacheNames = "vdCache#3600", keyGenerator = "cacheKeyByUserGenerator")
|
||||||
public DataSourceResult<?> getVdPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<?> getVdPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
if (CollUtil.isNotEmpty(dataSourceRequest == null ? null : dataSourceRequest.getGroup())) {
|
if (CollUtil.isNotEmpty(dataSourceRequest == null ? null : dataSourceRequest.getGroup())) {
|
||||||
@ -525,10 +532,15 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
sql.append(" AND ").append(filterSql).append(" ");
|
sql.append(" AND ").append(filterSql).append(" ");
|
||||||
}
|
}
|
||||||
sql.append(buildVdPointOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
|
sql.append(buildVdPointOrderBySql(dataSourceRequest == null ? null : dataSourceRequest.getSort()));
|
||||||
|
DataSourceResult<VdPointVo> result = new DataSourceResult<>();
|
||||||
|
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.RSTCD");
|
||||||
|
if (scopeApplyResult.isEmptyResult()) {
|
||||||
|
result.setData(new ArrayList<>());
|
||||||
|
result.setTotal(0L);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
List<VdPointVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(
|
List<VdPointVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(
|
||||||
page, sql.toString(), paramMap, VdPointVo.class);
|
page, sql.toString(), paramMap, VdPointVo.class);
|
||||||
DataSourceResult<VdPointVo> result = new DataSourceResult<>();
|
|
||||||
result.setData(list);
|
result.setData(list);
|
||||||
result.setTotal(page != null ? page.getTotal() : list.size());
|
result.setTotal(page != null ? page.getTotal() : list.size());
|
||||||
result.setAggregates(new HashMap<>());
|
result.setAggregates(new HashMap<>());
|
||||||
@ -822,10 +834,10 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_STTP_B vdSttp ON vdSttp.STTP_CODE = src.STTP " +
|
"LEFT JOIN SD_STTP_B vdSttp ON vdSttp.STTP_CODE = src.STTP " +
|
||||||
" AND NVL(vdSttp.IS_DELETED, 0) = 0 AND NVL(vdSttp.ENABLE, 1) = 1 " +
|
" AND NVL(vdSttp.IS_DELETED, 0) = 0 AND NVL(vdSttp.ENABLE, 1) = 1 " +
|
||||||
"LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det " +
|
"LEFT JOIN (SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det " +
|
||||||
"INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
"INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
"WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort " +
|
"WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort " +
|
||||||
"ON siteSort.RVCD = NVL(eng.HBRVCD, src.HBRVCD) AND siteSort.STCD = src.STCD " +
|
"ON siteSort.BASEID = src.BASE_ID AND siteSort.STCD = src.STCD " +
|
||||||
"WHERE src.STTP LIKE 'VD%' " +
|
"WHERE src.STTP LIKE 'VD%' " +
|
||||||
"AND src.AI_EXT_CODE IS NOT NULL " +
|
"AND src.AI_EXT_CODE IS NOT NULL " +
|
||||||
"AND src.LGTD IS NOT NULL " +
|
"AND src.LGTD IS NOT NULL " +
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
package com.yfd.platform.qgc_env.warn.service.impl;
|
package com.yfd.platform.qgc_env.warn.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
@ -28,10 +29,13 @@ import org.springframework.stereotype.Service;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class WarnDataServiceImpl implements WarnDataService {
|
public class WarnDataServiceImpl implements WarnDataService {
|
||||||
@ -264,6 +268,7 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
@Cacheable(cacheNames = "warn#3600", keyGenerator = "cacheKeyGenerator")
|
@Cacheable(cacheNames = "warn#3600", keyGenerator = "cacheKeyGenerator")
|
||||||
public DataSourceResult<AlarmPointVo> getAlarmPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<AlarmPointVo> getAlarmPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
|
GroupingInfo[] groupInfos = loadOptions == null ? null : loadOptions.getGroup();
|
||||||
String startTimeText = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "startTime");
|
String startTimeText = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "startTime");
|
||||||
String endTimeText = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "endTime");
|
String endTimeText = loadOptions == null ? null : QgcQueryWrapperUtil.getFilterFieldValue(loadOptions, "endTime");
|
||||||
|
|
||||||
@ -295,10 +300,23 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
|
|
||||||
List<Map<String, Object>> expressionRows = microservicDynamicSQLMapper.getAllList(buildAlarmPointLegendSql(), new HashMap<>());
|
List<Map<String, Object>> expressionRows = microservicDynamicSQLMapper.getAllList(buildAlarmPointLegendSql(), new HashMap<>());
|
||||||
List<AlarmPointVo> resultList = mergeAlarmPointData(points, qecCountMap, wqCountMap, expressionRows, yyyy);
|
List<AlarmPointVo> resultList = mergeAlarmPointData(points, qecCountMap, wqCountMap, expressionRows, yyyy);
|
||||||
|
List<AlarmPointVo> filteredList = applyAlarmPointFilter(
|
||||||
|
resultList,
|
||||||
|
dataSourceRequest == null ? null : dataSourceRequest.getFilter()
|
||||||
|
);
|
||||||
|
applyAlarmPointSort(filteredList, dataSourceRequest == null ? null : dataSourceRequest.getSort());
|
||||||
|
|
||||||
|
if (CollUtil.isNotEmpty(dataSourceRequest == null ? null : dataSourceRequest.getGroup())) {
|
||||||
|
List<Map<String, Object>> rows = buildAlarmPointGroupRows(filteredList);
|
||||||
|
return QgcQueryWrapperUtil.buildGroupResult(dataSourceRequest, rows);
|
||||||
|
}
|
||||||
|
|
||||||
|
Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
|
||||||
|
List<AlarmPointVo> pageList = applyAlarmPointPage(filteredList, loadOptions);
|
||||||
|
|
||||||
DataSourceResult<AlarmPointVo> result = new DataSourceResult<>();
|
DataSourceResult<AlarmPointVo> result = new DataSourceResult<>();
|
||||||
result.setData(resultList);
|
result.setData(pageList);
|
||||||
result.setTotal(resultList.size());
|
result.setTotal(page != null ? (long) filteredList.size() : (long) filteredList.size());
|
||||||
result.setAggregates(new HashMap<>());
|
result.setAggregates(new HashMap<>());
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -451,9 +469,9 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
sql.append("INNER JOIN SD_AIMONITOR_B_H b ON a.STCD = b.STCD AND NVL(b.IS_DELETED, 0) = 0 AND b.STTP LIKE 'AI_%' ");
|
sql.append("INNER JOIN SD_AIMONITOR_B_H b ON a.STCD = b.STCD AND NVL(b.IS_DELETED, 0) = 0 AND b.STTP LIKE 'AI_%' ");
|
||||||
sql.append("LEFT JOIN SD_ENGINFO_B_H eng ON b.RSTCD = eng.STCD AND NVL(eng.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN SD_ENGINFO_B_H eng ON b.RSTCD = eng.STCD AND NVL(eng.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN SD_HYDROBASE hb ON b.BASE_ID = hb.BASEID AND NVL(hb.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN SD_HYDROBASE hb ON b.BASE_ID = hb.BASEID AND NVL(hb.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN MS_ALONG_B along ON b.HBRVCD = along.RVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN MS_ALONG_B along ON b.BASEID = along.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.RVCD = b.HBRVCD AND rstSort.STCD = b.RSTCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.BASEID = b.BASE_ID AND rstSort.STCD = b.RSTCD ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.RVCD = b.HBRVCD AND siteSort.STCD = b.STCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.BASEID = b.BASE_ID AND siteSort.STCD = b.STCD ");
|
||||||
sql.append("WHERE NVL(a.IS_DELETED, 0) = 0 ");
|
sql.append("WHERE NVL(a.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
||||||
|
|
||||||
@ -522,9 +540,9 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
sql.append("INNER JOIN SD_AIMONITOR_B_H b ON a.STCD = b.STCD AND NVL(b.IS_DELETED, 0) = 0 AND b.STTP LIKE 'AI_%' ");
|
sql.append("INNER JOIN SD_AIMONITOR_B_H b ON a.STCD = b.STCD AND NVL(b.IS_DELETED, 0) = 0 AND b.STTP LIKE 'AI_%' ");
|
||||||
sql.append("LEFT JOIN SD_ENGINFO_B_H eng ON b.RSTCD = eng.STCD AND NVL(eng.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN SD_ENGINFO_B_H eng ON b.RSTCD = eng.STCD AND NVL(eng.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN SD_HYDROBASE hb ON b.BASE_ID = hb.BASEID AND NVL(hb.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN SD_HYDROBASE hb ON b.BASE_ID = hb.BASEID AND NVL(hb.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN MS_ALONG_B along ON b.HBRVCD = along.RVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN MS_ALONG_B along ON b.BASE_ID = along.BASEID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.RVCD = b.HBRVCD AND rstSort.STCD = b.RSTCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.BASEID = b.BASE_ID AND rstSort.STCD = b.RSTCD ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.RVCD = b.HBRVCD AND siteSort.STCD = b.STCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.BASEID = b.BASE_ID AND siteSort.STCD = b.STCD ");
|
||||||
sql.append("WHERE a.IS_DELETED = 0 ");
|
sql.append("WHERE a.IS_DELETED = 0 ");
|
||||||
// sql.append("AND (a.TASK_STATUS IS NULL OR a.TASK_STATUS = 'Approved') ");
|
// sql.append("AND (a.TASK_STATUS IS NULL OR a.TASK_STATUS = 'Approved') ");
|
||||||
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
||||||
@ -1136,19 +1154,19 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
"NVL(siteSort.SORT, 999999) AS siteStepSort " +
|
"NVL(siteSort.SORT, 999999) AS siteStepSort " +
|
||||||
"FROM SD_ENGINFO_B_H eng " +
|
"FROM SD_ENGINFO_B_H eng " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = eng.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = eng.STCD " +
|
") rstSort ON rstSort.BASEID = eng.BASE_ID AND rstSort.STCD = eng.STCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = eng.STCD " +
|
") siteSort ON siteSort.BASEID = eng.BASE_ID AND siteSort.STCD = eng.STCD " +
|
||||||
"WHERE NVL(eng.IS_DELETED, 0) = 0 " +
|
"WHERE NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
"AND NVL(eng.USFL, 0) = 1 " +
|
"AND NVL(eng.USFL, 0) = 1 " +
|
||||||
"AND eng.LGTD IS NOT NULL " +
|
"AND eng.LGTD IS NOT NULL " +
|
||||||
@ -1383,12 +1401,13 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
if (point == null || !isAlarmPointVisible(point.getAnchoPointState())) {
|
if (point == null || !isAlarmPointVisible(point.getAnchoPointState())) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
point.setAnchoPointState(normalizeAlarmPointState(point.getAnchoPointState()) + "_ALARM");
|
point.setAnchoPointState(normalizeAlarmPointState(point.getAnchoPointState()));
|
||||||
point.setStqCount(qecCountMap.getOrDefault(point.getStcd(), 0));
|
point.setStqCount(qecCountMap.getOrDefault(point.getStcd(), 0));
|
||||||
point.setWqCount(wqCountMap.getOrDefault(point.getStcd(), 0));
|
point.setWqCount(wqCountMap.getOrDefault(point.getStcd(), 0));
|
||||||
point.setZCount(0);
|
point.setZCount(0);
|
||||||
point.setWtCount(0);
|
point.setWtCount(0);
|
||||||
point.setYyyy(yyyy);
|
point.setYyyy(yyyy);
|
||||||
|
point.setSttpMap(point.getSttpMap() + "_ALARM");
|
||||||
point.setSttpCode("ENG");
|
point.setSttpCode("ENG");
|
||||||
int total = point.getStqCount() + point.getWqCount();
|
int total = point.getStqCount() + point.getWqCount();
|
||||||
applyAlarmPointRange(point, total, expressionRows);
|
applyAlarmPointRange(point, total, expressionRows);
|
||||||
@ -1397,6 +1416,291 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<AlarmPointVo> applyAlarmPointFilter(List<AlarmPointVo> source, DataSourceRequest.FilterDescriptor filter) {
|
||||||
|
if (CollUtil.isEmpty(source) || filter == null) {
|
||||||
|
return source;
|
||||||
|
}
|
||||||
|
List<AlarmPointVo> result = new ArrayList<>();
|
||||||
|
for (AlarmPointVo item : source) {
|
||||||
|
if (matchesAlarmPointFilter(item, filter)) {
|
||||||
|
result.add(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean matchesAlarmPointFilter(AlarmPointVo item, DataSourceRequest.FilterDescriptor filter) {
|
||||||
|
if (item == null || filter == null) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(filter.getFilters())) {
|
||||||
|
String logic = StrUtil.blankToDefault(filter.getLogic(), "and");
|
||||||
|
if ("or".equalsIgnoreCase(logic)) {
|
||||||
|
for (DataSourceRequest.FilterDescriptor child : filter.getFilters()) {
|
||||||
|
if (matchesAlarmPointFilter(item, child)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
for (DataSourceRequest.FilterDescriptor child : filter.getFilters()) {
|
||||||
|
if (!matchesAlarmPointFilter(item, child)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (StrUtil.isBlank(filter.getField()) || StrUtil.isBlank(filter.getOperator())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (isAlarmPointMetaField(filter.getField())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
Object actualValue = getAlarmPointFieldValue(item, filter.getField());
|
||||||
|
return compareAlarmPointField(actualValue, filter.getValue(), filter.getOperator(), filter.isIgnoreCase());
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean isAlarmPointMetaField(String field) {
|
||||||
|
return "startTime".equals(field) || "endTime".equals(field);
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean compareAlarmPointField(Object actualValue, Object expectedValue, String operator, boolean ignoreCase) {
|
||||||
|
if ("isblank".equalsIgnoreCase(operator)) {
|
||||||
|
return actualValue == null || StrUtil.isBlank(String.valueOf(actualValue));
|
||||||
|
}
|
||||||
|
if ("isnotblank".equalsIgnoreCase(operator)) {
|
||||||
|
return actualValue != null && StrUtil.isNotBlank(String.valueOf(actualValue));
|
||||||
|
}
|
||||||
|
if (actualValue == null) {
|
||||||
|
return expectedValue == null && ("eq".equalsIgnoreCase(operator) || "=".equals(operator));
|
||||||
|
}
|
||||||
|
|
||||||
|
String actualText = String.valueOf(actualValue);
|
||||||
|
String expectedText = expectedValue == null ? null : String.valueOf(expectedValue);
|
||||||
|
String left = ignoreCase && actualText != null ? actualText.toLowerCase() : actualText;
|
||||||
|
String right = ignoreCase && expectedText != null ? expectedText.toLowerCase() : expectedText;
|
||||||
|
|
||||||
|
switch (operator.toLowerCase()) {
|
||||||
|
case "eq":
|
||||||
|
case "=":
|
||||||
|
return Objects.equals(normalizeAlarmPointCompareValue(actualValue), normalizeAlarmPointCompareValue(expectedValue))
|
||||||
|
|| Objects.equals(left, right);
|
||||||
|
case "neq":
|
||||||
|
case "<>":
|
||||||
|
return !Objects.equals(normalizeAlarmPointCompareValue(actualValue), normalizeAlarmPointCompareValue(expectedValue))
|
||||||
|
&& !Objects.equals(left, right);
|
||||||
|
case "contains":
|
||||||
|
return right != null && left != null && left.contains(right);
|
||||||
|
case "doesnotcontain":
|
||||||
|
return right == null || left == null || !left.contains(right);
|
||||||
|
case "startswith":
|
||||||
|
return right != null && left != null && left.startsWith(right);
|
||||||
|
case "endswith":
|
||||||
|
return right != null && left != null && left.endsWith(right);
|
||||||
|
case "gt":
|
||||||
|
return compareAlarmPointComparable(actualValue, expectedValue) > 0;
|
||||||
|
case "gte":
|
||||||
|
case "ge":
|
||||||
|
return compareAlarmPointComparable(actualValue, expectedValue) >= 0;
|
||||||
|
case "lt":
|
||||||
|
return compareAlarmPointComparable(actualValue, expectedValue) < 0;
|
||||||
|
case "lte":
|
||||||
|
case "le":
|
||||||
|
return compareAlarmPointComparable(actualValue, expectedValue) <= 0;
|
||||||
|
default:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Object normalizeAlarmPointCompareValue(Object value) {
|
||||||
|
if (value == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (value instanceof Number) {
|
||||||
|
return new BigDecimal(value.toString());
|
||||||
|
}
|
||||||
|
if (value instanceof Date) {
|
||||||
|
return ((Date) value).getTime();
|
||||||
|
}
|
||||||
|
String text = String.valueOf(value).trim();
|
||||||
|
if (StrUtil.isBlank(text)) {
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
if (StrUtil.isNumeric(text)) {
|
||||||
|
return new BigDecimal(text);
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
|
||||||
|
private int compareAlarmPointComparable(Object actualValue, Object expectedValue) {
|
||||||
|
Object left = normalizeAlarmPointCompareValue(actualValue);
|
||||||
|
Object right = normalizeAlarmPointCompareValue(expectedValue);
|
||||||
|
if (left == null && right == null) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (left == null) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if (right == null) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
if (left instanceof BigDecimal && right instanceof BigDecimal) {
|
||||||
|
return ((BigDecimal) left).compareTo((BigDecimal) right);
|
||||||
|
}
|
||||||
|
if (left instanceof Long && right instanceof Long) {
|
||||||
|
return Long.compare((Long) left, (Long) right);
|
||||||
|
}
|
||||||
|
return String.valueOf(left).compareTo(String.valueOf(right));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void applyAlarmPointSort(List<AlarmPointVo> list, List<DataSourceRequest.SortDescriptor> sorts) {
|
||||||
|
if (CollUtil.isEmpty(list) || CollUtil.isEmpty(sorts)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Comparator<AlarmPointVo> comparator = null;
|
||||||
|
for (DataSourceRequest.SortDescriptor sort : sorts) {
|
||||||
|
if (sort == null || StrUtil.isBlank(sort.getField()) || Boolean.FALSE.equals(sort.getNeedSortFlag())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
Comparator<AlarmPointVo> current = (left, right) -> compareAlarmPointSortValue(
|
||||||
|
buildAlarmPointSortValue(getAlarmPointFieldValue(left, sort.getField())),
|
||||||
|
buildAlarmPointSortValue(getAlarmPointFieldValue(right, sort.getField()))
|
||||||
|
);
|
||||||
|
if ("desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir())) {
|
||||||
|
current = current.reversed();
|
||||||
|
}
|
||||||
|
comparator = comparator == null ? current : comparator.thenComparing(current);
|
||||||
|
}
|
||||||
|
if (comparator != null) {
|
||||||
|
list.sort(comparator);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Comparable<?> buildAlarmPointSortValue(Object value) {
|
||||||
|
if (value == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (value instanceof BigDecimal) {
|
||||||
|
return (BigDecimal) value;
|
||||||
|
}
|
||||||
|
if (value instanceof Integer) {
|
||||||
|
return (Integer) value;
|
||||||
|
}
|
||||||
|
if (value instanceof Long) {
|
||||||
|
return (Long) value;
|
||||||
|
}
|
||||||
|
if (value instanceof Date) {
|
||||||
|
return ((Date) value).getTime();
|
||||||
|
}
|
||||||
|
return String.valueOf(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
private int compareAlarmPointSortValue(Comparable<?> left, Comparable<?> right) {
|
||||||
|
if (left == null && right == null) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (left == null) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
if (right == null) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
return String.valueOf(left).compareTo(String.valueOf(right));
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<AlarmPointVo> applyAlarmPointPage(List<AlarmPointVo> source, DataSourceLoadOptionsBase loadOptions) {
|
||||||
|
if (CollUtil.isEmpty(source) || loadOptions == null || loadOptions.getTake() == null || loadOptions.getTake() <= 0) {
|
||||||
|
return source;
|
||||||
|
}
|
||||||
|
int skip = loadOptions.getSkip() == null ? 0 : Math.max(loadOptions.getSkip(), 0);
|
||||||
|
if (skip >= source.size()) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
int endIndex = Math.min(skip + loadOptions.getTake(), source.size());
|
||||||
|
return new ArrayList<>(source.subList(skip, endIndex));
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<Map<String, Object>> buildAlarmPointGroupRows(List<AlarmPointVo> source) {
|
||||||
|
List<Map<String, Object>> rows = new ArrayList<>();
|
||||||
|
if (CollUtil.isEmpty(source)) {
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
for (AlarmPointVo item : source) {
|
||||||
|
rows.add(new LinkedHashMap<>(BeanUtil.beanToMap(item)));
|
||||||
|
}
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Object getAlarmPointFieldValue(AlarmPointVo item, String field) {
|
||||||
|
if (item == null || StrUtil.isBlank(field)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
switch (field) {
|
||||||
|
case "sttp":
|
||||||
|
return item.getSttp();
|
||||||
|
case "stcd":
|
||||||
|
return item.getStcd();
|
||||||
|
case "lgtd":
|
||||||
|
return item.getLgtd();
|
||||||
|
case "lttd":
|
||||||
|
return item.getLttd();
|
||||||
|
case "dtmel":
|
||||||
|
return item.getDtmel();
|
||||||
|
case "anchoPointState":
|
||||||
|
return item.getAnchoPointState();
|
||||||
|
case "sttpMap":
|
||||||
|
return item.getSttpMap();
|
||||||
|
case "titleName":
|
||||||
|
return item.getTitleName();
|
||||||
|
case "distance":
|
||||||
|
return item.getDistance();
|
||||||
|
case "rvcd":
|
||||||
|
return item.getRvcd();
|
||||||
|
case "addvcd":
|
||||||
|
return item.getAddvcd();
|
||||||
|
case "baseId":
|
||||||
|
return item.getBaseId();
|
||||||
|
case "rstcds":
|
||||||
|
return item.getRstcds();
|
||||||
|
case "sttpCode":
|
||||||
|
return item.getSttpCode();
|
||||||
|
case "ennm":
|
||||||
|
return item.getEnnm();
|
||||||
|
case "rvnm":
|
||||||
|
return item.getRvnm();
|
||||||
|
case "endInstalledType":
|
||||||
|
return item.getEndInstalledType();
|
||||||
|
case "stqCount":
|
||||||
|
return item.getStqCount();
|
||||||
|
case "wqCount":
|
||||||
|
return item.getWqCount();
|
||||||
|
case "zCount":
|
||||||
|
return item.getZCount();
|
||||||
|
case "wtCount":
|
||||||
|
return item.getWtCount();
|
||||||
|
case "yyyy":
|
||||||
|
return item.getYyyy();
|
||||||
|
case "range":
|
||||||
|
return item.getRange();
|
||||||
|
case "ttpwr":
|
||||||
|
return item.getTtpwr();
|
||||||
|
case "baseName":
|
||||||
|
return item.getBaseName();
|
||||||
|
case "rstcd":
|
||||||
|
return item.getRstcd();
|
||||||
|
case "rvcdStepSort":
|
||||||
|
return item.getRvcdStepSort();
|
||||||
|
case "rstcdStepSort":
|
||||||
|
return item.getRstcdStepSort();
|
||||||
|
case "siteStepSort":
|
||||||
|
return item.getSiteStepSort();
|
||||||
|
case "logo":
|
||||||
|
return item.getLogo();
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private boolean isAlarmPointVisible(String state) {
|
private boolean isAlarmPointVisible(String state) {
|
||||||
return "large_eng_built".equals(state)
|
return "large_eng_built".equals(state)
|
||||||
|| "mid_eng_built".equals(state)
|
|| "mid_eng_built".equals(state)
|
||||||
|
|||||||
@ -1342,17 +1342,17 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = wq.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = wq.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.RVCD = eng.HBRVCD AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.BASEID = wq.BASE_ID AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,along.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
||||||
" ON rstAlong.RVCD = eng.HBRVCD AND rstAlong.STCD = wq.RSTCD " +
|
" ON rstAlong.BASEID = wq.BASE_ID AND rstAlong.STCD = wq.RSTCD " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,along.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
||||||
" ON siteAlong.RVCD = eng.HBRVCD AND siteAlong.STCD = wq.STCD " +
|
" ON siteAlong.BASEID = wq.BASE_ID AND siteAlong.STCD = wq.STCD " +
|
||||||
"WHERE wq.STTP IN ('WQ', 'WQFB') AND NVL(wq.IS_DELETED, 0) = 0";
|
"WHERE wq.STTP IN ('WQ', 'WQFB') AND NVL(wq.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1824,17 +1824,17 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = wq.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = wq.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.RVCD = eng.HBRVCD AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.BASEID = wq.BASE_ID AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,cfg.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
||||||
" ON rstAlong.RVCD = eng.HBRVCD AND rstAlong.STCD = wq.RSTCD " +
|
" ON rstAlong.BASEID = wq.BASE_ID AND rstAlong.STCD = wq.RSTCD " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,cfg.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
||||||
" ON siteAlong.RVCD = eng.HBRVCD AND siteAlong.STCD = wq.STCD " +
|
" ON siteAlong.BASEID = wq.BASE_ID AND siteAlong.STCD = wq.STCD " +
|
||||||
"WHERE wq.STTP = 'WQ' AND NVL(wq.IS_DELETED, 0) = 0";
|
"WHERE wq.STTP = 'WQ' AND NVL(wq.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2264,17 +2264,17 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = wq.BASE_ID AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = wq.BASE_ID AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
"LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.RVCD = eng.HBRVCD AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B rvAlong ON rvAlong.BASEID = wq.BASE_ID AND rvAlong.CODE = 'common' AND NVL(rvAlong.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,along.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') rstAlong " +
|
||||||
" ON rstAlong.RVCD = eng.HBRVCD AND rstAlong.STCD = wq.RSTCD " +
|
" ON rstAlong.RVCD = wq.BASE_ID AND rstAlong.STCD = wq.RSTCD " +
|
||||||
"LEFT JOIN (SELECT det.SORT, along.RVCD, det.STCD " +
|
"LEFT JOIN (SELECT det.SORT,along.BASEID, along.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
" INNER JOIN MS_ALONG_B along ON det.ALONG_ID = along.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(along.IS_DELETED, 0) = 0 AND along.CODE = 'common') siteAlong " +
|
||||||
" ON siteAlong.RVCD = eng.HBRVCD AND siteAlong.STCD = wq.STCD " +
|
" ON siteAlong.BASEID = wq.BASE_ID AND siteAlong.STCD = wq.STCD " +
|
||||||
"WHERE wq.STTP = 'WQ' AND NVL(wq.IS_DELETED, 0) = 0";
|
"WHERE wq.STTP = 'WQ' AND NVL(wq.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3308,6 +3308,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
String countField = row.containsKey("COUNT_STCD") ? "COUNT_STCD" : "COUNT_" + upperField;
|
String countField = row.containsKey("COUNT_STCD") ? "COUNT_STCD" : "COUNT_" + upperField;
|
||||||
String aggregateKey = "COUNT_STCD".equals(countField) ? "count_stcd" : "count_" + groupField;
|
String aggregateKey = "COUNT_STCD".equals(countField) ? "count_stcd" : "count_" + groupField;
|
||||||
Object countValue = row.get(countField);
|
Object countValue = row.get(countField);
|
||||||
|
Map<String, Object> item = new LinkedHashMap<>();
|
||||||
if (countValue == null) {
|
if (countValue == null) {
|
||||||
countValue = row.get("count_stcd");
|
countValue = row.get("count_stcd");
|
||||||
}
|
}
|
||||||
@ -3321,7 +3322,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
count = Long.parseLong(String.valueOf(countValue));
|
count = Long.parseLong(String.valueOf(countValue));
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<String, Object> item = new LinkedHashMap<>();
|
|
||||||
item.put("key", key);
|
item.put("key", key);
|
||||||
item.put("keyName", null);
|
item.put("keyName", null);
|
||||||
item.put("keyExt", new HashMap<>());
|
item.put("keyExt", new HashMap<>());
|
||||||
@ -3330,7 +3331,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
detail.put(upperField, key);
|
detail.put(upperField, key);
|
||||||
detail.put(countField, count);
|
detail.put(countField, count);
|
||||||
item.put("items", List.of(detail));
|
item.put("items", List.of(detail));
|
||||||
item.put("count", 0);
|
item.put("count", count);
|
||||||
item.put("summary", new Object[0]);
|
item.put("summary", new Object[0]);
|
||||||
|
|
||||||
Map<String, Object> aggregates = new LinkedHashMap<>();
|
Map<String, Object> aggregates = new LinkedHashMap<>();
|
||||||
@ -4557,7 +4558,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
// @Cacheable(cacheNames = "weCache#3600", keyGenerator = "cacheKeyGenerator")
|
@Cacheable(cacheNames = "wqCache#3600", keyGenerator = "cacheKeyByUserGenerator")
|
||||||
public DataSourceResult<EnvWqAnchorPointVo> getAnchorPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<EnvWqAnchorPointVo> getAnchorPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceResult<EnvWqAnchorPointVo> dataSourceResult = new DataSourceResult<>();
|
DataSourceResult<EnvWqAnchorPointVo> dataSourceResult = new DataSourceResult<>();
|
||||||
dataSourceResult.setAggregates(new HashMap<>());
|
dataSourceResult.setAggregates(new HashMap<>());
|
||||||
@ -4616,19 +4617,19 @@ public class EnvWqDataServiceImpl implements EnvWqDataService {
|
|||||||
.append("LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND NVL(hbrv.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND NVL(hbrv.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_RVCD_DIC rvcd ON rvcd.RVCD = eng.RVCD AND NVL(rvcd.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_RVCD_DIC rvcd ON rvcd.RVCD = eng.RVCD AND NVL(rvcd.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_ADDVCD_DIC addvcd ON addvcd.ADDVCD = eng.ADDVCD ")
|
.append("LEFT JOIN SD_ADDVCD_DIC addvcd ON addvcd.ADDVCD = eng.ADDVCD ")
|
||||||
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN MS_ALONG_B along ON along.BASEID = t.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = t.RSTCD ")
|
.append(") rstSort ON rstSort.BASEID = t.BASE_ID AND rstSort.STCD = t.RSTCD ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' ")
|
||||||
.append(") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = t.STCD ")
|
.append(") siteSort ON siteSort.BASEID = t.BASE_ID AND siteSort.STCD = t.STCD ")
|
||||||
.append("WHERE NVL(t.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(t.IS_DELETED, 0) = 0 ")
|
||||||
.append("AND NVL(t.USFL, 1) = 1 ");
|
.append("AND NVL(t.USFL, 1) = 1 ");
|
||||||
|
|
||||||
|
|||||||
@ -95,6 +95,9 @@ public class SdWtBaseInfoVO implements Serializable {
|
|||||||
@Schema(description = "基地流域编码")
|
@Schema(description = "基地流域编码")
|
||||||
private String hbrvcd;
|
private String hbrvcd;
|
||||||
|
|
||||||
|
@Schema(description = "基地流域名称")
|
||||||
|
private String hbrvcdName;
|
||||||
|
|
||||||
@Schema(description = "经度")
|
@Schema(description = "经度")
|
||||||
private Double lgtd;
|
private Double lgtd;
|
||||||
|
|
||||||
|
|||||||
@ -62,7 +62,7 @@ public interface AlongListMapper extends BaseMapper<SdAlongVO> {
|
|||||||
" and MAB.RVCD=#{rvcd} " +
|
" and MAB.RVCD=#{rvcd} " +
|
||||||
" </if>" +
|
" </if>" +
|
||||||
" <if test='baseId != null and baseId != \"\"'>" +
|
" <if test='baseId != null and baseId != \"\"'>" +
|
||||||
" and MAB.RVCD in (select HBRVCD from SD_HBRV_DIC where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
" and MAB.BASEID in (select BASEID from SD_HYDROBASE where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
||||||
" </if>" +
|
" </if>" +
|
||||||
" union all " +
|
" union all " +
|
||||||
" select " +
|
" select " +
|
||||||
@ -93,7 +93,7 @@ public interface AlongListMapper extends BaseMapper<SdAlongVO> {
|
|||||||
" and MAB.RVCD=#{rvcd} " +
|
" and MAB.RVCD=#{rvcd} " +
|
||||||
" </if>" +
|
" </if>" +
|
||||||
" <if test='baseId != null and baseId != \"\"'>" +
|
" <if test='baseId != null and baseId != \"\"'>" +
|
||||||
" and MAB.RVCD in (select HBRVCD from SD_HBRV_DIC where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
" and MAB.BASEID in (select BASEID from SD_HYDROBASE where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
||||||
" </if>" +
|
" </if>" +
|
||||||
") T order by rvcdSort asc, sort asc" +
|
") T order by rvcdSort asc, sort asc" +
|
||||||
"</script>")
|
"</script>")
|
||||||
@ -117,7 +117,7 @@ public interface AlongListMapper extends BaseMapper<SdAlongVO> {
|
|||||||
"and MAB.RVCD=#{rvcd} " +
|
"and MAB.RVCD=#{rvcd} " +
|
||||||
"</if>" +
|
"</if>" +
|
||||||
"<if test='baseId != null and baseId != \"\"'>" +
|
"<if test='baseId != null and baseId != \"\"'>" +
|
||||||
"and MAB.RVCD in (select HBRVCD from SD_HBRV_DIC where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
"and MAB.BASEID in (select BASEID from SD_HYDROBASE where IS_DELETED=0 and ENABLED=1 and BASEID=#{baseId}) " +
|
||||||
"</if>" +
|
"</if>" +
|
||||||
"order by MAB.ORDER_INDEX asc, SAD.SORT asc, SWR.TM desc" +
|
"order by MAB.ORDER_INDEX asc, SAD.SORT asc, SWR.TM desc" +
|
||||||
") where ROWNUM=1" +
|
") where ROWNUM=1" +
|
||||||
|
|||||||
@ -34,6 +34,7 @@ import com.yfd.platform.utils.RedisCacheUtil;
|
|||||||
import com.yfd.platform.utils.SecurityUtils;
|
import com.yfd.platform.utils.SecurityUtils;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.springframework.cache.annotation.Cacheable;
|
||||||
import org.springframework.jdbc.core.JdbcTemplate;
|
import org.springframework.jdbc.core.JdbcTemplate;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@ -712,6 +713,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
.append("dw.ORDER_INDEX AS siteStepSort, ")
|
.append("dw.ORDER_INDEX AS siteStepSort, ")
|
||||||
.append("dw.STNM AS stnm, ")
|
.append("dw.STNM AS stnm, ")
|
||||||
.append("eng.ENNM AS ennm, ")
|
.append("eng.ENNM AS ennm, ")
|
||||||
|
.append("eng.REACHCD_NAME AS hbrvcdName, ")
|
||||||
.append("dw.JCDT AS jcdt, ")
|
.append("dw.JCDT AS jcdt, ")
|
||||||
.append("NULL AS stindx, ")
|
.append("NULL AS stindx, ")
|
||||||
.append("CASE WHEN NVL(dw.DTIN, 0) = 1 THEN 1 ELSE 0 END AS coenvwState, ")
|
.append("CASE WHEN NVL(dw.DTIN, 0) = 1 THEN 1 ELSE 0 END AS coenvwState, ")
|
||||||
@ -734,6 +736,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
.append("eng.HBRVCD AS hbrvcd ")
|
.append("eng.HBRVCD AS hbrvcd ")
|
||||||
.append("FROM SD_DW_B_H dw ")
|
.append("FROM SD_DW_B_H dw ")
|
||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = dw.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = dw.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
|
// .append("LEFT JOIN SD_RVCD_DIC srd ON eng.REACHCD = srd.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID AND NVL(hbrv.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID AND NVL(hbrv.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = dw.STTP AND NVL(sttp.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = dw.STTP AND NVL(sttp.IS_DELETED, 0) = 0 ")
|
||||||
@ -790,9 +793,21 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
sql.append("AND wt.STTP = #{map.sttpCode} ");
|
sql.append("AND wt.STTP = #{map.sttpCode} ");
|
||||||
}
|
}
|
||||||
if (queryDwDirectly && StrUtil.isNotBlank(sttpCode)) {
|
if (queryDwDirectly && StrUtil.isNotBlank(sttpCode)) {
|
||||||
|
List<String> sttpCodes = StrUtil.split(sttpCode, ",");
|
||||||
|
if(sttpCodes.size() > 1){
|
||||||
|
// 正确拼接,每个值加单引号并用逗号连接
|
||||||
|
String joined = sttpCodes.stream()
|
||||||
|
.map(s -> "'" + s.replace("'", "''") + "'") // 转义单引号
|
||||||
|
.collect(Collectors.joining(","));
|
||||||
|
sql.append("AND dw.STTP NOT IN (").append(joined).append(") ");
|
||||||
|
}
|
||||||
|
if(sttpCodes.size() == 1){
|
||||||
paramMap.put("sttpCode", sttpCode);
|
paramMap.put("sttpCode", sttpCode);
|
||||||
sql.append("AND dw.STTP = #{map.sttpCode} ");
|
sql.append("AND dw.STTP = #{map.sttpCode} ");
|
||||||
}
|
}
|
||||||
|
// paramMap.put("sttpCode", sttpCode);
|
||||||
|
// sql.append("AND dw.STTP = #{map.sttpCode} ");
|
||||||
|
}
|
||||||
|
|
||||||
if (queryDwDirectly && StrUtil.isNotBlank(bldsttCcode)) {
|
if (queryDwDirectly && StrUtil.isNotBlank(bldsttCcode)) {
|
||||||
paramMap.put("bldsttCcode", bldsttCcode);
|
paramMap.put("bldsttCcode", bldsttCcode);
|
||||||
@ -1291,21 +1306,21 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = wt.RSTCD ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = wt.RSTCD ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN (")
|
.append("LEFT JOIN (")
|
||||||
.append(" SELECT det.STCD, det.SORT, along.RVCD ")
|
.append(" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND along.CODE = 'common'")
|
.append(" AND along.CODE = 'common'")
|
||||||
.append(") rstSort ON rstSort.STCD = wt.RSTCD AND rstSort.RVCD = eng.HBRVCD ")
|
.append(") rstSort ON rstSort.STCD = wt.RSTCD AND rstSort.BASEID = wt.BASE_ID ")
|
||||||
.append("LEFT JOIN (")
|
.append("LEFT JOIN (")
|
||||||
.append(" SELECT det.STCD, det.SORT, along.RVCD ")
|
.append(" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND along.CODE = 'common'")
|
.append(" AND along.CODE = 'common'")
|
||||||
.append(") siteSort ON siteSort.STCD = wt.STCD AND siteSort.RVCD = eng.HBRVCD ")
|
.append(") siteSort ON siteSort.STCD = wt.STCD AND siteSort.BASEID = wt.BASE_ID ")
|
||||||
.append("WHERE NVL(wt.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(wt.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND wt.STTP = 'WTVT' ")
|
.append(" AND wt.STTP = 'WTVT' ")
|
||||||
.append(" AND NVL(wt.USFL, 0) = 1 ")
|
.append(" AND NVL(wt.USFL, 0) = 1 ")
|
||||||
@ -1366,21 +1381,21 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = wt.RSTCD ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = wt.RSTCD ")
|
||||||
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN (")
|
.append("LEFT JOIN (")
|
||||||
.append(" SELECT det.STCD, det.SORT, along.RVCD ")
|
.append(" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND along.CODE = 'common'")
|
.append(" AND along.CODE = 'common'")
|
||||||
.append(") rstSort ON rstSort.STCD = wt.RSTCD AND rstSort.RVCD = eng.HBRVCD ")
|
.append(") rstSort ON rstSort.STCD = wt.RSTCD AND rstSort.BASEID = wt.BASE_ID ")
|
||||||
.append("LEFT JOIN (")
|
.append("LEFT JOIN (")
|
||||||
.append(" SELECT det.STCD, det.SORT, along.RVCD ")
|
.append(" SELECT det.STCD, det.SORT,along.BASEID, along.RVCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
.append(" INNER JOIN MS_ALONG_B along ON along.ID = det.ALONG_ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append(" AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND along.CODE = 'common'")
|
.append(" AND along.CODE = 'common'")
|
||||||
.append(") siteSort ON siteSort.STCD = wt.STCD AND siteSort.RVCD = eng.HBRVCD ")
|
.append(") siteSort ON siteSort.STCD = wt.STCD AND siteSort.BASEID = wt.BASE_ID ")
|
||||||
.append("WHERE NVL(wt.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(wt.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND wt.STTP = 'WTVT' ")
|
.append(" AND wt.STTP = 'WTVT' ")
|
||||||
.append(" AND NVL(wt.USFL, 0) = 1 ")
|
.append(" AND NVL(wt.USFL, 0) = 1 ")
|
||||||
@ -2846,6 +2861,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Cacheable(cacheNames = "dwCache#3600", keyGenerator = "cacheKeyByUserGenerator")
|
||||||
public DataSourceResult<DwSlowFacilityMapVO> getFacilityPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<DwSlowFacilityMapVO> getFacilityPointKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceResult<DwSlowFacilityMapVO> dataSourceResult = new DataSourceResult<>();
|
DataSourceResult<DwSlowFacilityMapVO> dataSourceResult = new DataSourceResult<>();
|
||||||
dataSourceResult.setAggregates(new HashMap<>());
|
dataSourceResult.setAggregates(new HashMap<>());
|
||||||
@ -2888,7 +2904,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = t.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = t.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = t.STTP AND NVL(sttp.IS_DELETED, 0) = 0 ")
|
.append("LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = t.STTP AND NVL(sttp.IS_DELETED, 0) = 0 ")
|
||||||
.append("WHERE NVL(t.IS_DELETED, 0) = 0 ")
|
.append("WHERE NVL(t.IS_DELETED, 0) = 0 ")
|
||||||
.append("AND NVL(t.USFL, 1) = 1 ")
|
// .append("AND NVL(t.USFL, 1) = 1 ")
|
||||||
.append("AND t.LGTD IS NOT NULL ")
|
.append("AND t.LGTD IS NOT NULL ")
|
||||||
.append("AND t.LTTD IS NOT NULL ");
|
.append("AND t.LTTD IS NOT NULL ");
|
||||||
|
|
||||||
@ -2943,6 +2959,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
// @Cacheable(cacheNames = "wtCache#3600", keyGenerator = "cacheKeyByUserGenerator")
|
||||||
public DataSourceResult<WaterTempMapVO> getEngTempPointListKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<WaterTempMapVO> getEngTempPointListKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceResult<WaterTempMapVO> dataSourceResult = new DataSourceResult<>();
|
DataSourceResult<WaterTempMapVO> dataSourceResult = new DataSourceResult<>();
|
||||||
dataSourceResult.setAggregates(new HashMap<>());
|
dataSourceResult.setAggregates(new HashMap<>());
|
||||||
@ -3016,6 +3033,13 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
|
|||||||
// paramMap.put("dtinType", dtinType);
|
// paramMap.put("dtinType", dtinType);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
DataScopeApplyResult scopeApplyResult = dataScopeFilterService.appendCurrentUserStationScope(sql, paramMap, "t.RSTCD");
|
||||||
|
if (scopeApplyResult.isEmptyResult()) {
|
||||||
|
dataSourceResult.setData(new ArrayList<>());
|
||||||
|
dataSourceResult.setTotal(0L);
|
||||||
|
return dataSourceResult;
|
||||||
|
}
|
||||||
|
|
||||||
List<DataSourceRequest.SortDescriptor> sort = dataSourceRequest.getSort();
|
List<DataSourceRequest.SortDescriptor> sort = dataSourceRequest.getSort();
|
||||||
if (sort != null && !sort.isEmpty()) {
|
if (sort != null && !sort.isEmpty()) {
|
||||||
sql.append(" ORDER BY ");
|
sql.append(" ORDER BY ");
|
||||||
|
|||||||
@ -36,6 +36,15 @@ public class WeVmsstbprptVo {
|
|||||||
@Schema(description = "河流编码")
|
@Schema(description = "河流编码")
|
||||||
private String rvcd;
|
private String rvcd;
|
||||||
|
|
||||||
|
@Schema(description = "站址/位置")
|
||||||
|
private String stlc;
|
||||||
|
|
||||||
|
@Schema(description = "地形裁剪范围")
|
||||||
|
private String box;
|
||||||
|
|
||||||
|
@Schema(description = "基地编码")
|
||||||
|
private String baseName;
|
||||||
|
|
||||||
@Schema(description = "排序")
|
@Schema(description = "排序")
|
||||||
private Integer orderIndex;
|
private Integer orderIndex;
|
||||||
|
|
||||||
|
|||||||
@ -1113,16 +1113,16 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
.append(" WHERE NVL(IS_DELETED, 0) = 0 AND STATUS = 1 ")
|
.append(" WHERE NVL(IS_DELETED, 0) = 0 AND STATUS = 1 ")
|
||||||
.append(" GROUP BY STCD ")
|
.append(" GROUP BY STCD ")
|
||||||
.append(") latest ON latest.STCD = section.STCD ")
|
.append(") latest ON latest.STCD = section.STCD ")
|
||||||
.append("LEFT JOIN MS_ALONG_B along ON along.RVCD = section.HBRVCD ")
|
.append("LEFT JOIN MS_ALONG_B along ON along.BASEID = section.BASE_ID ")
|
||||||
.append(" AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
.append(" AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ")
|
||||||
.append("LEFT JOIN ( ")
|
.append("LEFT JOIN ( ")
|
||||||
.append(" SELECT det.SORT, cfg.RVCD, det.STCD ")
|
.append(" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD ")
|
||||||
.append(" FROM MS_ALONGDET_B det ")
|
.append(" FROM MS_ALONGDET_B det ")
|
||||||
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
.append(" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID ")
|
||||||
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
.append(" WHERE NVL(det.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND NVL(cfg.IS_DELETED, 0) = 0 ")
|
.append(" AND NVL(cfg.IS_DELETED, 0) = 0 ")
|
||||||
.append(" AND cfg.CODE = 'common' ")
|
.append(" AND cfg.CODE = 'common' ")
|
||||||
.append(") siteSort ON siteSort.RVCD = section.HBRVCD AND siteSort.STCD = section.STCD ")
|
.append(") siteSort ON siteSort.BASEID = section.BASE_ID AND siteSort.STCD = section.STCD ")
|
||||||
.append("WHERE NVL(section.USFL, 1) = 1 ");
|
.append("WHERE NVL(section.USFL, 1) = 1 ");
|
||||||
|
|
||||||
String filterSql = buildWePointFilterCondition(dataSourceRequest.getFilter(), paramMap, new int[]{0});
|
String filterSql = buildWePointFilterCondition(dataSourceRequest.getFilter(), paramMap, new int[]{0});
|
||||||
@ -1923,7 +1923,7 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
List<String> rstcdList,
|
List<String> rstcdList,
|
||||||
Map<String, Object> paramMap) {
|
Map<String, Object> paramMap) {
|
||||||
StringBuilder sql = new StringBuilder();
|
StringBuilder sql = new StringBuilder();
|
||||||
sql.append("SELECT t.HBRVCD AS hbrvcd, t.YR AS yr ")
|
sql.append("SELECT t.BASE_ID AS hbrvcd, t.YR AS yr ")
|
||||||
.append("FROM (")
|
.append("FROM (")
|
||||||
.append("SELECT section.HBRVCD, section.RSTCD, section.BASE_ID, TO_CHAR(we.TM, 'yyyy') AS yr ")
|
.append("SELECT section.HBRVCD, section.RSTCD, section.BASE_ID, TO_CHAR(we.TM, 'yyyy') AS yr ")
|
||||||
.append("FROM SD_WE_B_H section ")
|
.append("FROM SD_WE_B_H section ")
|
||||||
@ -2753,7 +2753,16 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
"b.NAME AS name, " +
|
"b.NAME AS name, " +
|
||||||
"b.NAME_EN AS nameEn, " +
|
"b.NAME_EN AS nameEn, " +
|
||||||
"b.PROTECTLVL AS protectlvl, " +
|
"b.PROTECTLVL AS protectlvl, " +
|
||||||
"b.PROTECTLVL AS protectlvlName, " +
|
"CASE b.PROTECTLVL\n" +
|
||||||
|
" WHEN '1' THEN '国家一级'\n" +
|
||||||
|
" WHEN '2' THEN '国家二级'\n" +
|
||||||
|
" WHEN '3' THEN '国家三级'\n" +
|
||||||
|
" WHEN '4' THEN '省重点'\n" +
|
||||||
|
" WHEN '5' THEN '市一级'\n" +
|
||||||
|
" WHEN '6' THEN '市二级'\n" +
|
||||||
|
" WHEN '7' THEN '无'\n" +
|
||||||
|
" ELSE b.PROTECTLVL\n" +
|
||||||
|
"END AS protectlvlName, " +
|
||||||
"b.LOGO AS logo, " +
|
"b.LOGO AS logo, " +
|
||||||
"b.INTRODUCE AS introduce " +
|
"b.INTRODUCE AS introduce " +
|
||||||
"FROM MS_SPECANIMALS_B a " +
|
"FROM MS_SPECANIMALS_B a " +
|
||||||
@ -3286,11 +3295,14 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
return "SELECT " +
|
return "SELECT " +
|
||||||
"ai.STCD AS id, " +
|
"ai.STCD AS id, " +
|
||||||
"ai.STTP AS sttpCode, " +
|
"ai.STTP AS sttpCode, " +
|
||||||
|
"ai.STLC AS stlc, " +
|
||||||
"ai.STCD AS stcd, " +
|
"ai.STCD AS stcd, " +
|
||||||
"ai.STNM AS stnm, " +
|
"ai.STNM AS stnm, " +
|
||||||
|
"ai.BOX AS box, " +
|
||||||
"ai.RSTCD AS rstcd, " +
|
"ai.RSTCD AS rstcd, " +
|
||||||
"eng.ENNM AS ennm, " +
|
"eng.ENNM AS ennm, " +
|
||||||
"ai.BASE_ID AS baseId, " +
|
"ai.BASE_ID AS baseId, " +
|
||||||
|
"hb.BASENAME AS baseName, " +
|
||||||
"ai.HBRVCD AS hbrvcd, " +
|
"ai.HBRVCD AS hbrvcd, " +
|
||||||
"ai.RVCD AS rvcd, " +
|
"ai.RVCD AS rvcd, " +
|
||||||
"ai.ORDER_INDEX AS orderIndex, " +
|
"ai.ORDER_INDEX AS orderIndex, " +
|
||||||
@ -3298,6 +3310,7 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
"ai.LTTD AS lttd " +
|
"ai.LTTD AS lttd " +
|
||||||
"FROM SD_AIMONITOR_B_H ai " +
|
"FROM SD_AIMONITOR_B_H ai " +
|
||||||
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = ai.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = ai.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = ai.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"WHERE NVL(ai.IS_DELETED, 0) = 0";
|
"WHERE NVL(ai.IS_DELETED, 0) = 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3350,6 +3363,9 @@ public class WeFishServiceImpl implements WeFishService {
|
|||||||
selected.add("t.sttpCode AS sttpCode");
|
selected.add("t.sttpCode AS sttpCode");
|
||||||
selected.add("t.stnm AS stnm");
|
selected.add("t.stnm AS stnm");
|
||||||
selected.add("t.stcd AS stcd");
|
selected.add("t.stcd AS stcd");
|
||||||
|
selected.add("t.stlc AS stlc");
|
||||||
|
selected.add("t.box AS box");
|
||||||
|
selected.add("t.baseName AS baseName");
|
||||||
} else {
|
} else {
|
||||||
for (String field : selectFields) {
|
for (String field : selectFields) {
|
||||||
String column = columns.get(field);
|
String column = columns.get(field);
|
||||||
|
|||||||
@ -714,19 +714,19 @@ public class ZqMonitorServiceImpl implements ZqMonitorService {
|
|||||||
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = eng.HBRVCD AND hbrv.BASEID = eng.BASE_ID " +
|
||||||
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = rb.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = rb.RSTCD " +
|
") rstSort ON rstSort.BASEID = rb.BASE_ID AND rstSort.STCD = rb.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = rb.STCD " +
|
") siteSort ON siteSort.BASEID = rb.BASE_ID AND siteSort.STCD = rb.STCD " +
|
||||||
"LEFT JOIN SD_VDINFO_B vdb ON vdb.CSTCD = rr.STCD AND NVL(vdb.USFL, 1) = 1 " +
|
"LEFT JOIN SD_VDINFO_B vdb ON vdb.CSTCD = rr.STCD AND NVL(vdb.USFL, 1) = 1 " +
|
||||||
"LEFT JOIN SD_VDINFO_R vdr ON vdr.STCD = vdb.STCD AND vdr.TM = rr.TM AND NVL(vdr.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_VDINFO_R vdr ON vdr.STCD = vdb.STCD AND vdr.TM = rr.TM AND NVL(vdr.IS_DELETED, 0) = 0 " +
|
||||||
"WHERE NVL(rr.IS_DELETED, 0) = 0 " +
|
"WHERE NVL(rr.IS_DELETED, 0) = 0 " +
|
||||||
@ -761,19 +761,19 @@ public class ZqMonitorServiceImpl implements ZqMonitorService {
|
|||||||
"INNER JOIN SD_RIVER_B_H rb ON rb.STCD = day.STCD AND rb.STTP = 'ZQ' AND NVL(rb.IS_DELETED, 0) = 0 " +
|
"INNER JOIN SD_RIVER_B_H rb ON rb.STCD = day.STCD AND rb.STTP = 'ZQ' AND NVL(rb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = rb.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = rb.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = rb.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = rb.RSTCD " +
|
") rstSort ON rstSort.BASEID = rb.BASE_ID AND rstSort.STCD = rb.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = rb.STCD " +
|
") siteSort ON siteSort.BASEID = rb.BASE_ID AND siteSort.STCD = rb.STCD " +
|
||||||
"WHERE NVL(day.IS_DELETED, 0) = 0 ";
|
"WHERE NVL(day.IS_DELETED, 0) = 0 ";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -808,19 +808,19 @@ public class ZqMonitorServiceImpl implements ZqMonitorService {
|
|||||||
"INNER JOIN SD_RIVER_B_H rb ON rb.STCD = drtp.STCD AND rb.STTP = 'ZQ' AND NVL(rb.IS_DELETED, 0) = 0 " +
|
"INNER JOIN SD_RIVER_B_H rb ON rb.STCD = drtp.STCD AND rb.STTP = 'ZQ' AND NVL(rb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = rb.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = rb.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = eng.BASE_ID AND NVL(hb.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN MS_ALONG_B along ON along.RVCD = eng.HBRVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN MS_ALONG_B along ON along.BASEID = rb.BASE_ID AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") rstSort ON rstSort.RVCD = eng.HBRVCD AND rstSort.STCD = rb.RSTCD " +
|
") rstSort ON rstSort.BASEID = rb.BASE_ID AND rstSort.STCD = rb.RSTCD " +
|
||||||
"LEFT JOIN ( " +
|
"LEFT JOIN ( " +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD " +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD " +
|
||||||
" FROM MS_ALONGDET_B det " +
|
" FROM MS_ALONGDET_B det " +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID " +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common' " +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = rb.STCD " +
|
") siteSort ON siteSort.BASEID = rb.BASE_ID AND siteSort.STCD = rb.STCD " +
|
||||||
"WHERE NVL(drtp.IS_DELETED, 0) = 0 ";
|
"WHERE NVL(drtp.IS_DELETED, 0) = 0 ";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2419,11 +2419,11 @@ public class ZqMonitorServiceImpl implements ZqMonitorService {
|
|||||||
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD\n" +
|
"LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD\n" +
|
||||||
"LEFT JOIN SD_RIVER_B_H fh ON fh.STCD = rb.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0\n" +
|
"LEFT JOIN SD_RIVER_B_H fh ON fh.STCD = rb.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0\n" +
|
||||||
"LEFT JOIN (\n" +
|
"LEFT JOIN (\n" +
|
||||||
" SELECT det.SORT, cfg.RVCD, det.STCD\n" +
|
" SELECT det.SORT,cfg.BASEID, cfg.RVCD, det.STCD\n" +
|
||||||
" FROM MS_ALONGDET_B det\n" +
|
" FROM MS_ALONGDET_B det\n" +
|
||||||
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID\n" +
|
" INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID\n" +
|
||||||
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common'\n" +
|
" WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common'\n" +
|
||||||
") siteSort ON siteSort.RVCD = eng.HBRVCD AND siteSort.STCD = rb.STCD\n" +
|
") siteSort ON siteSort.BASEID = rb.BASE_ID AND siteSort.STCD = rb.STCD\n" +
|
||||||
"WHERE NVL(rb.IS_DELETED, 0) = 0 AND rb.STTP = 'ZQ' AND rb.LGTD IS NOT NULL AND rb.LTTD IS NOT NULL ");
|
"WHERE NVL(rb.IS_DELETED, 0) = 0 AND rb.STTP = 'ZQ' AND rb.LGTD IS NOT NULL AND rb.LTTD IS NOT NULL ");
|
||||||
|
|
||||||
Map<String, Object> paramMap = new HashMap<>();
|
Map<String, Object> paramMap = new HashMap<>();
|
||||||
|
|||||||
@ -62,6 +62,7 @@ public class MapLegendController {
|
|||||||
Page<MsMaplegendB> page = DataSourceRequestUtil.getPage(dataSourceRequest);
|
Page<MsMaplegendB> page = DataSourceRequestUtil.getPage(dataSourceRequest);
|
||||||
Page<MsMaplegendB> resultPage;
|
Page<MsMaplegendB> resultPage;
|
||||||
wrapper.eq("IS_DELETED", 0);
|
wrapper.eq("IS_DELETED", 0);
|
||||||
|
wrapper.orderByDesc("ORDER_INDEX");
|
||||||
if (page != null) {
|
if (page != null) {
|
||||||
resultPage = mapLegendService.page(page, wrapper);
|
resultPage = mapLegendService.page(page, wrapper);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@ -3,6 +3,8 @@ package com.yfd.platform.qgc_sys.mapLayer.mapper;
|
|||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.yfd.platform.qgc_sys.mapLayer.domain.MsMaplegendB;
|
import com.yfd.platform.qgc_sys.mapLayer.domain.MsMaplegendB;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import org.apache.ibatis.annotations.Update;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 地图图例表 Mapper 接口
|
* 地图图例表 Mapper 接口
|
||||||
@ -11,4 +13,10 @@ import org.apache.ibatis.annotations.Mapper;
|
|||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface MsMaplegendBMapper extends BaseMapper<MsMaplegendB> {
|
public interface MsMaplegendBMapper extends BaseMapper<MsMaplegendB> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改图例名称,解决Oracle/m³变成m3的问题
|
||||||
|
*/
|
||||||
|
@Update("UPDATE MS_MAPLEGEND_B SET NAME = #{name} WHERE ID = #{id}")
|
||||||
|
void updateModelName(@Param("id") String id, @Param("name") String name);
|
||||||
}
|
}
|
||||||
@ -13,9 +13,11 @@ import com.yfd.platform.qgc_sys.mapLayer.mapper.MsMapmoduleBMapper;
|
|||||||
import com.yfd.platform.qgc_sys.mapLayer.service.IMapLegendService;
|
import com.yfd.platform.qgc_sys.mapLayer.service.IMapLegendService;
|
||||||
import com.yfd.platform.utils.SecurityUtils;
|
import com.yfd.platform.utils.SecurityUtils;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@ -31,6 +33,12 @@ public class MapLegendServiceImpl extends ServiceImpl<MsMaplegendBMapper, MsMapl
|
|||||||
@Resource
|
@Resource
|
||||||
private MsMapmoduleBMapper msMapmoduleBMapper;
|
private MsMapmoduleBMapper msMapmoduleBMapper;
|
||||||
|
|
||||||
|
@Value("${spring.datasource.druid.master.driverClassName}")
|
||||||
|
private String jdbcDriver;
|
||||||
|
|
||||||
|
@Value("${spring.datasource.druid.slave.driverClassName}")
|
||||||
|
private String slaveJdbcDriver;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void delelteByIds(List<String> ids) {
|
public void delelteByIds(List<String> ids) {
|
||||||
if (CollectionUtil.isEmpty(ids)) {
|
if (CollectionUtil.isEmpty(ids)) {
|
||||||
@ -101,13 +109,20 @@ public class MapLegendServiceImpl extends ServiceImpl<MsMaplegendBMapper, MsMapl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean saveOrUpdate(MsMaplegendB legend) {
|
public boolean saveOrUpdate(MsMaplegendB legend) {
|
||||||
|
// 修改: 不能有编码一样的数据
|
||||||
if (hasSameCode(legend)) {
|
if (hasSameCode(legend)) {
|
||||||
throw new BizException("存在相同编码的数据");
|
throw new BizException("存在相同编码的数据");
|
||||||
}
|
}
|
||||||
if (StrUtil.isNotBlank(legend.getId())) {
|
if (StrUtil.isNotBlank(legend.getId())) {
|
||||||
|
// 更新父级,分组等
|
||||||
updateSetLegend(legend);
|
updateSetLegend(legend);
|
||||||
|
legend.setModifyUser(SecurityUtils.getUserId());
|
||||||
|
legend.setModifyTime(new Date());
|
||||||
super.updateById(legend);
|
super.updateById(legend);
|
||||||
|
// 对图例名称操作,解决m³变成m3
|
||||||
|
updateModelName(legend);
|
||||||
} else {
|
} else {
|
||||||
|
// 如果是新增数据,则必须有父级
|
||||||
if (legend.getDataType() == 2 && StrUtil.isBlank(legend.getParentId())) {
|
if (legend.getDataType() == 2 && StrUtil.isBlank(legend.getParentId())) {
|
||||||
throw new BizException("请先创建图例父级结构再添加数据.");
|
throw new BizException("请先创建图例父级结构再添加数据.");
|
||||||
}
|
}
|
||||||
@ -119,22 +134,32 @@ public class MapLegendServiceImpl extends ServiceImpl<MsMaplegendBMapper, MsMapl
|
|||||||
legend.setOrderIndex(maxOrderIndex + 1);
|
legend.setOrderIndex(maxOrderIndex + 1);
|
||||||
MsMaplegendB parentLegend = null;
|
MsMaplegendB parentLegend = null;
|
||||||
if (StrUtil.isNotBlank(legend.getParentId())) {
|
if (StrUtil.isNotBlank(legend.getParentId())) {
|
||||||
|
// 获取父级信息
|
||||||
parentLegend = this.getById(legend.getParentId());
|
parentLegend = this.getById(legend.getParentId());
|
||||||
if (parentLegend == null) {
|
if (parentLegend == null) {
|
||||||
throw new BizException("获取父级图例信息失败.请检查父级图例(parentId)是否存在.");
|
throw new BizException("获取父级图例信息失败.请检查父级图例(parentId)是否存在.");
|
||||||
}
|
}
|
||||||
|
// 设置fullPath
|
||||||
legend.setFullPath(parentLegend.getFullPath() + legend.getId() + ",");
|
legend.setFullPath(parentLegend.getFullPath() + legend.getId() + ",");
|
||||||
legend.setTreeLevel(parentLegend.getTreeLevel() + 1);
|
// 设置treeLevel
|
||||||
|
Integer parentLevel = parentLegend.getTreeLevel();
|
||||||
|
int newLevel = (parentLevel != null) ? parentLevel + 1 : 1; // 如果父级为空,则从1开始
|
||||||
|
legend.setTreeLevel(newLevel);
|
||||||
|
// 设置hasChildren
|
||||||
legend.setHasChildren(0);
|
legend.setHasChildren(0);
|
||||||
} else {
|
} else {
|
||||||
|
// 无父级,则为创建的顶级图例
|
||||||
legend.setTreeLevel(1);
|
legend.setTreeLevel(1);
|
||||||
legend.setFullPath(legend.getId() + ",");
|
legend.setFullPath(legend.getId() + ",");
|
||||||
legend.setHasChildren(0);
|
legend.setHasChildren(0);
|
||||||
}
|
}
|
||||||
if (legend.getDataType() == 1) {
|
if (legend.getDataType() == 1) {
|
||||||
|
// 为结构的时候,groupName,parentName 等于自己
|
||||||
legend.setGroupName(legend.getName());
|
legend.setGroupName(legend.getName());
|
||||||
legend.setParentName(legend.getName());
|
legend.setParentName(legend.getName());
|
||||||
} else {
|
} else {
|
||||||
|
// 为数据的时候,groupName 取二级名称,parentName 取一级名称
|
||||||
|
// (暂时只有2级结构,如果没有二级,groupName和parentName一样,都取一级名称)
|
||||||
String fullPath = parentLegend.getFullPath();
|
String fullPath = parentLegend.getFullPath();
|
||||||
if (StrUtil.isNotBlank(fullPath)) {
|
if (StrUtil.isNotBlank(fullPath)) {
|
||||||
String[] path = fullPath.split(",");
|
String[] path = fullPath.split(",");
|
||||||
@ -155,18 +180,24 @@ public class MapLegendServiceImpl extends ServiceImpl<MsMaplegendBMapper, MsMapl
|
|||||||
if (parentLegend != null && StrUtil.isBlank(legend.getLayerCode())) {
|
if (parentLegend != null && StrUtil.isBlank(legend.getLayerCode())) {
|
||||||
legend.setLayerCode(parentLegend.getLayerCode());
|
legend.setLayerCode(parentLegend.getLayerCode());
|
||||||
}
|
}
|
||||||
|
// 设置是否显示
|
||||||
legend.setIfShow(0);
|
legend.setIfShow(0);
|
||||||
|
// 设置是否内置
|
||||||
legend.setInternal(0);
|
legend.setInternal(0);
|
||||||
|
// 设置启用
|
||||||
legend.setEnable(0);
|
legend.setEnable(0);
|
||||||
legend.setRecordUser(SecurityUtils.getUserId());
|
legend.setRecordUser(SecurityUtils.getUserId());
|
||||||
legend.setModifyUser(SecurityUtils.getUserId());
|
legend.setModifyUser(SecurityUtils.getUserId());
|
||||||
this.save(legend);
|
this.save(legend);
|
||||||
|
// 新增完成后,设置父级hasChildren为1
|
||||||
if (parentLegend != null) {
|
if (parentLegend != null) {
|
||||||
MsMaplegendB temp = new MsMaplegendB();
|
MsMaplegendB temp = new MsMaplegendB();
|
||||||
temp.setId(parentLegend.getId());
|
temp.setId(parentLegend.getId());
|
||||||
temp.setHasChildren(1);
|
temp.setHasChildren(1);
|
||||||
this.updateById(temp);
|
this.updateById(temp);
|
||||||
}
|
}
|
||||||
|
// 对图例名称操作,解决m³变成m3
|
||||||
|
updateModelName(legend);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -237,4 +268,27 @@ public class MapLegendServiceImpl extends ServiceImpl<MsMaplegendBMapper, MsMapl
|
|||||||
.list();
|
.list();
|
||||||
return !CollectionUtil.isEmpty(list) && !list.get(0).getId().equals(legend.getId());
|
return !CollectionUtil.isEmpty(list) && !list.get(0).getId().equals(legend.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改图例名称,解决Oracle/m³变成m3的问题
|
||||||
|
*/
|
||||||
|
public void updateModelName(MsMaplegendB legend) {
|
||||||
|
if (StrUtil.isNotBlank(legend.getName())) {
|
||||||
|
String jdbcDriver = this.jdbcDriver;
|
||||||
|
if (jdbcDriver != null &&
|
||||||
|
(jdbcDriver.toLowerCase().contains("oracle")
|
||||||
|
|| jdbcDriver.toLowerCase().contains("dm")
|
||||||
|
|| jdbcDriver.toLowerCase().contains("kingbase8"))) {
|
||||||
|
String name = legend.getName();
|
||||||
|
if (name.contains("m³")) {
|
||||||
|
name = name.replace("m³", "m\\00b3");
|
||||||
|
}
|
||||||
|
if (name.contains("m²")) {
|
||||||
|
name = name.replace("m²", "m\\00b2");
|
||||||
|
}
|
||||||
|
legend.setName(name);
|
||||||
|
this.baseMapper.updateModelName(legend.getId(), legend.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -3,6 +3,7 @@ package com.yfd.platform.qgc_sys.mapcfg.controller;
|
|||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.yfd.platform.common.DataSourceLoadOptionsBase;
|
import com.yfd.platform.common.DataSourceLoadOptionsBase;
|
||||||
import com.yfd.platform.common.DataSourceRequest;
|
import com.yfd.platform.common.DataSourceRequest;
|
||||||
@ -175,12 +176,23 @@ public class MapmoduleBController {
|
|||||||
layerModule.setChildNode(mapmoduleB.getChildNode());
|
layerModule.setChildNode(mapmoduleB.getChildNode());
|
||||||
layerModule.setMultiSelect(mapmoduleB.getMultiSelect());
|
layerModule.setMultiSelect(mapmoduleB.getMultiSelect());
|
||||||
layerModule.setCanBeChecked(mapmoduleB.getCanBeChecked());
|
layerModule.setCanBeChecked(mapmoduleB.getCanBeChecked());
|
||||||
layerModule.setChecked(mapmoduleB.getChecked());
|
// 判断mapmoduleB.getChecked() 如果是空则默认为1
|
||||||
|
layerModule.setChecked(mapmoduleB.getChecked() == null ? 1 : mapmoduleB.getChecked());
|
||||||
layerModule.setDescription(mapmoduleB.getDescription());
|
layerModule.setDescription(mapmoduleB.getDescription());
|
||||||
layerModule.setEnable(mapmoduleB.getEnable());
|
layerModule.setEnable(mapmoduleB.getEnable());
|
||||||
layerModule.setOrderIndex(mapmoduleB.getOrderIndex());
|
layerModule.setOrderIndex(mapmoduleB.getOrderIndex());
|
||||||
layerModule.setFilterContent(mapmoduleB.getFilterContent());
|
layerModule.setFilterContent(mapmoduleB.getFilterContent());
|
||||||
mapmoduleBService.saveOrUpdate(layerModule);
|
mapmoduleBService.saveOrUpdate(layerModule);
|
||||||
|
}else if(count ==1){
|
||||||
|
// 走图层修改逻辑
|
||||||
|
LambdaUpdateWrapper<MsMapmoduleB> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
updateWrapper.eq(MsMapmoduleB::getModuleId, mapmoduleB.getModuleId());
|
||||||
|
updateWrapper.eq(MsMapmoduleB::getSystemId, mapmoduleB.getSystemId());
|
||||||
|
updateWrapper.eq(MsMapmoduleB::getResType, "layer");
|
||||||
|
updateWrapper.eq(MsMapmoduleB::getResId, layer.getId());
|
||||||
|
updateWrapper.eq(MsMapmoduleB::getIsDeleted, 0).set(MsMapmoduleB::getChecked, mapmoduleB.getChecked());
|
||||||
|
mapmoduleBService.update(updateWrapper);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user