feat: 查询视频站最新一条数据
This commit is contained in:
parent
6fc80d7199
commit
de347f8f09
@ -41,6 +41,12 @@ public class VdMonitorController {
|
|||||||
return ResponseResult.successData(vdMonitorService.getStcdInfo(stcd));
|
return ResponseResult.successData(vdMonitorService.getStcdInfo(stcd));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/GetKendoListCust")
|
||||||
|
@Operation(summary = "查询视频站最新一条数据")
|
||||||
|
public ResponseResult getKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
return ResponseResult.successData(vdMonitorService.getKendoListCust(dataSourceRequest));
|
||||||
|
}
|
||||||
|
|
||||||
@PostMapping("/runData/GetKendoListCust")
|
@PostMapping("/runData/GetKendoListCust")
|
||||||
@Operation(summary = "查询视频监控运行数据")
|
@Operation(summary = "查询视频监控运行数据")
|
||||||
public ResponseResult getRunDataKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
public ResponseResult getRunDataKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
|||||||
@ -11,5 +11,7 @@ public interface VdMonitorService {
|
|||||||
|
|
||||||
VdVmsstbprptVo getStcdInfo(String stcd);
|
VdVmsstbprptVo getStcdInfo(String stcd);
|
||||||
|
|
||||||
|
DataSourceResult<VdRunDataVo> getKendoListCust(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
DataSourceResult<VdRunDataVo> getRunDataKendoListCust(DataSourceRequest dataSourceRequest);
|
DataSourceResult<VdRunDataVo> getRunDataKendoListCust(DataSourceRequest dataSourceRequest);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -109,6 +109,15 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
return list.get(0);
|
return list.get(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataSourceResult<VdRunDataVo> getKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
|
if (CollUtil.isEmpty(dataSourceRequest == null ? null : dataSourceRequest.getGroup())) {
|
||||||
|
return queryLatestRunDataDetailList(dataSourceRequest, loadOptions);
|
||||||
|
}
|
||||||
|
return queryLatestRunDataGroupList(dataSourceRequest, loadOptions);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DataSourceResult<VdRunDataVo> getRunDataKendoListCust(DataSourceRequest dataSourceRequest) {
|
public DataSourceResult<VdRunDataVo> getRunDataKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();
|
||||||
@ -236,11 +245,22 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
|
|
||||||
private DataSourceResult<VdRunDataVo> queryRunDataDetailList(DataSourceRequest dataSourceRequest,
|
private DataSourceResult<VdRunDataVo> queryRunDataDetailList(DataSourceRequest dataSourceRequest,
|
||||||
DataSourceLoadOptionsBase loadOptions) {
|
DataSourceLoadOptionsBase loadOptions) {
|
||||||
|
return queryRunDataDetailList(dataSourceRequest, loadOptions, buildRunDataCoreSql());
|
||||||
|
}
|
||||||
|
|
||||||
|
private DataSourceResult<VdRunDataVo> queryLatestRunDataDetailList(DataSourceRequest dataSourceRequest,
|
||||||
|
DataSourceLoadOptionsBase loadOptions) {
|
||||||
|
return queryRunDataDetailList(dataSourceRequest, loadOptions, buildLatestRunDataCoreSql());
|
||||||
|
}
|
||||||
|
|
||||||
|
private DataSourceResult<VdRunDataVo> queryRunDataDetailList(DataSourceRequest dataSourceRequest,
|
||||||
|
DataSourceLoadOptionsBase loadOptions,
|
||||||
|
String coreSql) {
|
||||||
StringBuilder sql = new StringBuilder();
|
StringBuilder sql = new StringBuilder();
|
||||||
sql.append("SELECT ")
|
sql.append("SELECT ")
|
||||||
.append(buildRunDataSelectSql(dataSourceRequest == null ? null : dataSourceRequest.getSelect()))
|
.append(buildRunDataSelectSql(dataSourceRequest == null ? null : dataSourceRequest.getSelect()))
|
||||||
.append(" FROM (")
|
.append(" FROM (")
|
||||||
.append(buildRunDataCoreSql())
|
.append(coreSql)
|
||||||
.append(") t WHERE 1 = 1 ");
|
.append(") t WHERE 1 = 1 ");
|
||||||
|
|
||||||
Map<String, Object> paramMap = new HashMap<>();
|
Map<String, Object> paramMap = new HashMap<>();
|
||||||
@ -261,6 +281,17 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
|
|
||||||
private DataSourceResult<VdRunDataVo> queryRunDataGroupList(DataSourceRequest dataSourceRequest,
|
private DataSourceResult<VdRunDataVo> queryRunDataGroupList(DataSourceRequest dataSourceRequest,
|
||||||
DataSourceLoadOptionsBase loadOptions) {
|
DataSourceLoadOptionsBase loadOptions) {
|
||||||
|
return queryRunDataGroupList(dataSourceRequest, loadOptions, buildRunDataCoreSql());
|
||||||
|
}
|
||||||
|
|
||||||
|
private DataSourceResult<VdRunDataVo> queryLatestRunDataGroupList(DataSourceRequest dataSourceRequest,
|
||||||
|
DataSourceLoadOptionsBase loadOptions) {
|
||||||
|
return queryRunDataGroupList(dataSourceRequest, loadOptions, buildLatestRunDataCoreSql());
|
||||||
|
}
|
||||||
|
|
||||||
|
private DataSourceResult<VdRunDataVo> queryRunDataGroupList(DataSourceRequest dataSourceRequest,
|
||||||
|
DataSourceLoadOptionsBase loadOptions,
|
||||||
|
String coreSql) {
|
||||||
List<DataSourceRequest.GroupDescriptor> groups = dataSourceRequest.getGroup();
|
List<DataSourceRequest.GroupDescriptor> groups = dataSourceRequest.getGroup();
|
||||||
GroupingInfo[] groupInfos = loadOptions == null ? new GroupingInfo[0] : loadOptions.getGroup();
|
GroupingInfo[] groupInfos = loadOptions == null ? new GroupingInfo[0] : loadOptions.getGroup();
|
||||||
List<String> selectItems = new ArrayList<>();
|
List<String> selectItems = new ArrayList<>();
|
||||||
@ -293,7 +324,7 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
sql.append("SELECT ")
|
sql.append("SELECT ")
|
||||||
.append(String.join(", ", selectItems))
|
.append(String.join(", ", selectItems))
|
||||||
.append(" FROM (")
|
.append(" FROM (")
|
||||||
.append(buildRunDataCoreSql())
|
.append(coreSql)
|
||||||
.append(") t WHERE 1 = 1 ");
|
.append(") t WHERE 1 = 1 ");
|
||||||
|
|
||||||
Map<String, Object> paramMap = new HashMap<>();
|
Map<String, Object> paramMap = new HashMap<>();
|
||||||
@ -379,7 +410,7 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = src.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = src.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN (" + buildStationBaseSql() + ") cst ON cst.STCD = src.CSTCD " +
|
"LEFT JOIN (" + buildStationBaseSql() + ") cst ON cst.STCD = src.CSTCD " +
|
||||||
"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.ENABLE, 1) = 1 ";
|
" AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLED, 1) = 1 ";
|
||||||
}
|
}
|
||||||
|
|
||||||
private String buildVdDeviceBaseSql() {
|
private String buildVdDeviceBaseSql() {
|
||||||
@ -440,10 +471,62 @@ public class VdMonitorServiceImpl implements VdMonitorService {
|
|||||||
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = base.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = base.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
||||||
"LEFT JOIN (" + buildStationBaseSql() + ") cst ON cst.STCD = base.CSTCD " +
|
"LEFT JOIN (" + buildStationBaseSql() + ") cst ON cst.STCD = base.CSTCD " +
|
||||||
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = base.STTP " +
|
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = base.STTP " +
|
||||||
" AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLED, 1) = 1 " +
|
" AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLE, 1) = 1 " +
|
||||||
"WHERE NVL(run.IS_DELETED, 0) = 0 ";
|
"WHERE NVL(run.IS_DELETED, 0) = 0 ";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String buildLatestRunDataCoreSql() {
|
||||||
|
return "SELECT " +
|
||||||
|
"run.ID AS id, " +
|
||||||
|
"run.STCD AS stcd, " +
|
||||||
|
"run.TM AS tm, " +
|
||||||
|
"NVL(run.FLNM, base.STNM || ' ' || TO_CHAR(run.TM, 'yyyy-mm-dd hh24')) AS flnm, " +
|
||||||
|
"run.IMG_PATH AS imgPath, " +
|
||||||
|
"run.FLPTH AS flpth, " +
|
||||||
|
"run.DEVICEINFO AS deviceinfo, " +
|
||||||
|
"run.DESCRIBE AS describe, " +
|
||||||
|
"run.FID AS fid, " +
|
||||||
|
"run.THUMBNAIL AS thumbnail, " +
|
||||||
|
"base.RSTCD AS rstcd, " +
|
||||||
|
"base.STNM AS stnm, " +
|
||||||
|
"eng.ENNM AS ennm, " +
|
||||||
|
"base.FHSTCD AS fhstcd, " +
|
||||||
|
"fh.STNM AS fhstnm, " +
|
||||||
|
"base.CSTCD AS stCode, " +
|
||||||
|
"cst.STNM AS stName, " +
|
||||||
|
"NVL(eng.BASE_ID, base.BASE_ID) AS baseId, " +
|
||||||
|
"hb.BASENAME AS baseName, " +
|
||||||
|
"base.STTP AS sttpCode, " +
|
||||||
|
"sttp.STTP_NAME AS sttpName, " +
|
||||||
|
"base.STNM AS titleName, " +
|
||||||
|
"NVL(hb.ORDER_INDEX, 999999) AS baseStepSort, " +
|
||||||
|
"NVL(hbrv.ORDER_INDEX, 999999) AS rvcdStepSort, " +
|
||||||
|
"NVL(eng.ORDER_INDEX, 999999) AS rstcdStepSort, " +
|
||||||
|
"NVL(base.ORDER_INDEX, 999999) AS siteStepSort, " +
|
||||||
|
"NVL(eng.HBRVCD, base.HBRVCD) AS hbrvcd, " +
|
||||||
|
"hbrv.HBRVNM AS hbrvcdName " +
|
||||||
|
"FROM ( " +
|
||||||
|
"SELECT detail.ID, detail.STCD, detail.TM, detail.FLNM, detail.IMG_PATH, detail.FLPTH, detail.DEVICEINFO, " +
|
||||||
|
"detail.DESCRIBE, detail.FID, detail.THUMBNAIL " +
|
||||||
|
"FROM SD_VDINFO_R detail " +
|
||||||
|
"INNER JOIN ( " +
|
||||||
|
"SELECT STCD, MAX(TM) AS TM FROM SD_VDINFO_R WHERE NVL(IS_DELETED, 0) = 0 GROUP BY STCD " +
|
||||||
|
") latest ON detail.STCD = latest.STCD AND detail.TM = latest.TM " +
|
||||||
|
"WHERE NVL(detail.IS_DELETED, 0) = 0 " +
|
||||||
|
") run " +
|
||||||
|
"INNER JOIN (" + buildVdDeviceBaseSql() + ") base ON run.STCD = base.STCD " +
|
||||||
|
"LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = base.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 " +
|
||||||
|
"LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(eng.BASE_ID, base.BASE_ID) " +
|
||||||
|
" AND NVL(hb.IS_DELETED, 0) = 0 AND NVL(hb.ENABLED, 1) = 1 " +
|
||||||
|
"LEFT JOIN SD_HBRV_DIC hbrv ON hbrv.HBRVCD = NVL(eng.HBRVCD, base.HBRVCD) " +
|
||||||
|
" AND hbrv.BASEID = NVL(eng.BASE_ID, base.BASE_ID) " +
|
||||||
|
" AND NVL(hbrv.IS_DELETED, 0) = 0 AND NVL(hbrv.ENABLED, 1) = 1 " +
|
||||||
|
"LEFT JOIN SD_FHBT_B_H fh ON fh.STCD = base.FHSTCD AND NVL(fh.IS_DELETED, 0) = 0 " +
|
||||||
|
"LEFT JOIN (" + buildStationBaseSql() + ") cst ON cst.STCD = base.CSTCD " +
|
||||||
|
"LEFT JOIN SD_STTP_B sttp ON sttp.STTP_CODE = base.STTP " +
|
||||||
|
" AND NVL(sttp.IS_DELETED, 0) = 0 AND NVL(sttp.ENABLE, 1) = 1 ";
|
||||||
|
}
|
||||||
|
|
||||||
private String buildStationBaseSql() {
|
private String buildStationBaseSql() {
|
||||||
return "SELECT river.STCD AS STCD, river.STNM AS STNM FROM SD_RIVER_B_H river WHERE NVL(river.IS_DELETED, 0) = 0 " +
|
return "SELECT river.STCD AS STCD, river.STNM AS STNM FROM SD_RIVER_B_H river WHERE NVL(river.IS_DELETED, 0) = 0 " +
|
||||||
"UNION ALL " +
|
"UNION ALL " +
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user