From 9ceb2899d0d1ae42bf61d70fb660c7fb11a53de8 Mon Sep 17 00:00:00 2001 From: tangwei Date: Thu, 11 Jun 2026 16:23:24 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BC=98=E5=8C=96=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eq/service/impl/EngEqDataServiceImpl.java | 39 +++++++- .../zq/service/impl/EngRiverServiceImpl.java | 3 + .../fh/service/impl/FhHabitatServiceImpl.java | 36 ++++++-- .../fp/service/impl/FpRunServiceImpl.java | 5 ++ .../impl/VpConstructionServiceImpl.java | 89 ++++++++++--------- .../vd/service/impl/VdMonitorServiceImpl.java | 27 +++++- .../wq/service/impl/EnvWqDataServiceImpl.java | 78 +++++++++++----- .../service/impl/SdWtMonitorServiceImpl.java | 66 +++++++++++--- .../zq/service/impl/ZqMonitorServiceImpl.java | 44 ++++++++- 9 files changed, 295 insertions(+), 92 deletions(-) diff --git a/backend/src/main/java/com/yfd/platform/qgc_eng/eq/service/impl/EngEqDataServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_eng/eq/service/impl/EngEqDataServiceImpl.java index 8dac6130..3aba66c4 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_eng/eq/service/impl/EngEqDataServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_eng/eq/service/impl/EngEqDataServiceImpl.java @@ -4083,10 +4083,17 @@ public class EngEqDataServiceImpl implements EngEqDataService { } return switch (field) { case "id" -> "t.id"; + case "recordUser" -> "t.recordUser"; case "wbsType" -> "t.wbsType"; + case "recordTime" -> "t.recordTime"; + case "modifyTime" -> "t.modifyTime"; + case "displayRecordUser" -> "t.displayRecordUser"; + case "isolateType" -> "t.isolateType"; case "wbsCode" -> "t.wbsCode"; case "wbsName" -> "t.wbsName"; case "wbsSname" -> "t.wbsSname"; + case "wbsNameEn" -> "t.wbsNameEn"; + case "wbsSnameEn" -> "t.wbsSnameEn"; case "enable" -> "t.enable"; case "description" -> "t.description"; case "parentId" -> "t.parentId"; @@ -4097,10 +4104,28 @@ public class EngEqDataServiceImpl implements EngEqDataService { case "topWbsType" -> "t.topWbsType"; case "fullPath" -> "t.fullPath"; case "internal" -> "t.internal"; + case "lgtd" -> "t.lgtd"; + case "lttd" -> "t.lttd"; + case "area" -> "t.area"; + case "perimeter" -> "t.perimeter"; + case "synopsis" -> "t.synopsis"; case "introduce" -> "t.introduce"; + case "logo" -> "t.logo"; + case "inffile" -> "t.inffile"; case "orderIndex" -> "NVL(t.orderIndex, 999999)"; - case "recordTime" -> "t.recordTime"; - case "modifyTime" -> "t.modifyTime"; + case "filterContent" -> "t.filterContent"; + case "departmentId" -> "t.departmentId"; + case "systemId" -> "t.systemId"; + case "platformId" -> "t.platformId"; + case "reachWwqtg" -> "t.reachWwqtg"; + case "maxElev" -> "t.maxElev"; + case "minElev" -> "t.minElev"; + case "datTp" -> "t.datTp"; + case "rvAg" -> "t.rvAg"; + case "ifInnRv" -> "t.ifInnRv"; + case "showControl" -> "t.showControl"; + case "stcd" -> "t.stcd"; + case "displayDepartment" -> "t.displayDepartment"; default -> null; }; } @@ -4195,7 +4220,10 @@ public class EngEqDataServiceImpl implements EngEqDataService { return null; } return switch (field) { - case "baseStepSort", "rvcdStepSort", "rstcdStepSort", "siteStepSort", + case "id", "baseId", "hbrvcd", "hycd", "rvcd", "bldsttCcode", + "sfdbName", "mwrSfdb", "mwrSfdbName", "avqSfdb", "avqSfdbName", + "qecC", "mwrC", "avqC", "qecRuleDid", "qecMwrruleDid", "beforeQec", + "baseStepSort", "rvcdStepSort", "rstcdStepSort", "siteStepSort", "tm", "stcd", "stnm", "ennm", "qi", "qo", "qec", "sfdb", "rz", "dz", "qecLimit", "mwrLimit", "avqLimit", "baseName", "rvcdName", "hbrvcdName", "addvcdName", "qecAi" -> field; @@ -4208,7 +4236,10 @@ public class EngEqDataServiceImpl implements EngEqDataService { return null; } return switch (field) { - case "baseStepSort", "rvcdStepSort", "rstcdStepSort", "siteStepSort", + case "id", "baseId", "hbrvcd", "rvcd", "qecC", "mwrC", "avqC", + "sfdbName", "qecSfdb", "mwrSfdb", "mwrSfdbName", "avqSfdb", + "avqSfdbName", "qecRuleDid", "qecMwrruleDid", + "baseStepSort", "rvcdStepSort", "rstcdStepSort", "siteStepSort", "dt", "stcd", "stnm", "ennm", "qi", "qo", "qec", "sfdb", "rz", "dz", "qecLimit", "mwrLimit", "avqLimit", "baseName", "rvcdName", "hbrvcdName", "addvcdName", "beforeQec" -> field; diff --git a/backend/src/main/java/com/yfd/platform/qgc_eng/zq/service/impl/EngRiverServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_eng/zq/service/impl/EngRiverServiceImpl.java index ec537c0b..87d73bd9 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_eng/zq/service/impl/EngRiverServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_eng/zq/service/impl/EngRiverServiceImpl.java @@ -400,8 +400,11 @@ public class EngRiverServiceImpl implements EngRiverService { case "hbrvcd" -> "t.HBRVCD"; case "hbrvcdName" -> "t.HBRVCDNAME"; case "bldsttCcode" -> "t.BLDSTTCCODE"; + case "vdid" -> "t.VDID"; case "rzVideo" -> "t.RZVIDEO"; case "speedVideo" -> "t.SPEEDVIDEO"; + case "rzVideoPath" -> "t.RZVIDEOPATH"; + case "speedVideoPath" -> "t.SPEEDVIDEOPATH"; case "baseStepSort" -> "t.BASESTEPSORT"; case "rvcdStepSort" -> "t.RVCDSTEPSORT"; case "rstcdStepSort" -> "t.RSTCDSTEPSORT"; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/fh/service/impl/FhHabitatServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/fh/service/impl/FhHabitatServiceImpl.java index dcad8272..9b6dd008 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/fh/service/impl/FhHabitatServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/fh/service/impl/FhHabitatServiceImpl.java @@ -860,6 +860,16 @@ public class FhHabitatServiceImpl implements FhHabitatService { sortMap.put("vlsr", "t.VLSR"); sortMap.put("dtinType", "t.DTIN_TYPE"); sortMap.put("enable", "t.ENABLE"); + sortMap.put("qxdbhdx", "t.QXDBHDX"); + sortMap.put("qxdbhfw", "t.QXDBHFW"); + sortMap.put("qxdbhcd", "t.QXDBHCD"); + sortMap.put("qxdbhmj", "t.QXDBHMJ"); + sortMap.put("bhhl", "t.BHHL"); + sortMap.put("bhhd", "t.BHHD"); + sortMap.put("bhcs", "t.BHCS"); + sortMap.put("qxdbhfs", "t.QXDBHFS"); + sortMap.put("qxdbhhxcd", "t.QXDBHHXCD"); + sortMap.put("qxdbhwwcd", "t.QXDBHWWCD"); sortMap.put("fhmonitor", "t.FHMONITOR"); sortMap.put("dtfrqcy", "t.DTFRQCY"); sortMap.put("qxdinv", "t.QXDINV"); @@ -870,15 +880,15 @@ public class FhHabitatServiceImpl implements FhHabitatService { sortMap.put("baseStepSort", "t.BASESTEPSORT"); List orderItems = new ArrayList<>(); for (DataSourceRequest.SortDescriptor sort : sorts) { - if (sort == null || !Boolean.TRUE.equals(sort.getNeedSortFlag())) { + if (sort == null || StrUtil.isBlank(sort.getField())) { continue; } String column = sortMap.get(sort.getField()); if (column == null) { continue; } - String direction = "desc".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; - orderItems.add(column + " " + direction); + String direction = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; + orderItems.add(column + " " + direction + " NULLS LAST"); } if (orderItems.isEmpty()) { return " ORDER BY t.BASESTEPSORT ASC, t.RVCDSTEPSORT ASC, t.RSTCDSTEPSORT ASC, t.SITESTEPSORT ASC, t.STCD ASC"; @@ -1028,6 +1038,16 @@ public class FhHabitatServiceImpl implements FhHabitatService { sortMap.put("esstdt", "fh.ATTM"); sortMap.put("dtin", "fh.DTIN"); sortMap.put("enable", "fh.USFL"); + sortMap.put("qxdbhdx", "fh.BHDX"); + sortMap.put("qxdbhfw", "fh.BHFW"); + sortMap.put("qxdbhcd", "fh.BHCD"); + sortMap.put("qxdbhmj", "fh.BHMJ"); + sortMap.put("bhhl", "fh.BHHL"); + sortMap.put("bhhd", "fh.BHHD"); + sortMap.put("bhcs", "fh.BHCS"); + sortMap.put("qxdbhfs", "fh.BHFS"); + sortMap.put("qxdbhhxcd", "fh.BHHXCD"); + sortMap.put("qxdbhwwcd", "fh.BHWWCD"); sortMap.put("dtfrqcy", "fh.DTFRQCY"); sortMap.put("qxdinv", "fh.INV"); sortMap.put("baseStepSort", "hb.ORDER_INDEX"); @@ -1036,15 +1056,15 @@ public class FhHabitatServiceImpl implements FhHabitatService { sortMap.put("rvcdStepSort", "along.ORDER_INDEX"); List orderItems = new ArrayList<>(); for (DataSourceRequest.SortDescriptor sort : sorts) { - if (sort == null || !Boolean.TRUE.equals(sort.getNeedSortFlag())) { + if (sort == null || StrUtil.isBlank(sort.getField())) { continue; } String column = sortMap.get(sort.getField()); if (column == null) { continue; } - String direction = "desc".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; - orderItems.add(column + " " + direction); + String direction = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; + orderItems.add(column + " " + direction + " NULLS LAST"); } if (orderItems.isEmpty()) { return " ORDER BY hb.ORDER_INDEX ASC, along.ORDER_INDEX ASC, rstAlong.SORT ASC, fh.ORDER_INDEX ASC, fh.STCD ASC"; @@ -1355,6 +1375,8 @@ public class FhHabitatServiceImpl implements FhHabitatService { case "bhhd" -> "t.bhhd"; case "bhcs" -> "t.bhcs"; case "qxdbhfs" -> "t.qxdbhfs"; + case "qxdbhhxcd" -> "t.qxdbhhxcd"; + case "qxdbhwwcd" -> "t.qxdbhwwcd"; case "ststdt" -> "t.ststdt"; case "usfl", "enable" -> "t.usfl"; case "baseStepSort" -> "t.baseStepSort"; @@ -1379,7 +1401,7 @@ public class FhHabitatServiceImpl implements FhHabitatService { continue; } String dir = ("desc".equalsIgnoreCase(sortDescriptor.getDir()) || "des".equalsIgnoreCase(sortDescriptor.getDir())) ? "DESC" : "ASC"; - orders.add(column + " " + dir); + orders.add(column + " " + dir + " NULLS LAST"); } if (orders.isEmpty()) { return " ORDER BY t.baseStepSort ASC, t.rvcdStepSort ASC, t.rstcdStepSort ASC, t.siteStepSort ASC, t.stcd ASC"; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/fp/service/impl/FpRunServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/fp/service/impl/FpRunServiceImpl.java index 79790dd2..db09544e 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/fp/service/impl/FpRunServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/fp/service/impl/FpRunServiceImpl.java @@ -675,6 +675,8 @@ public class FpRunServiceImpl implements FpRunService { case "speed" -> "t.SPEED"; case "firstimgurl" -> "t.FIRSTIMGURL"; case "videourl" -> "t.VIDEOURL"; + case "vdpth" -> "t.VDPTH"; + case "picpth" -> "t.PICPTH"; case "fwet" -> "t.FWET"; case "fid" -> "t.FID"; case "upFcnt" -> "t.UPFCNT"; @@ -1085,7 +1087,10 @@ public class FpRunServiceImpl implements FpRunService { case "fcnt" -> "t.FCNT"; case "fsz" -> "t.FSZ"; case "fid" -> "t.FID"; + case "picpth" -> "t.PICPTH"; + case "vdpth" -> "t.VDPTH"; case "direction" -> "t.DIRECTION"; + case "directionName" -> "t.DIRECTIONNAME"; case "mway" -> "t.MWAY"; case "strdt" -> "t.STRDT"; case "enddt" -> "t.ENDDT"; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/vap/service/impl/VpConstructionServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/vap/service/impl/VpConstructionServiceImpl.java index f3d3976f..ee55fc10 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/vap/service/impl/VpConstructionServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/vap/service/impl/VpConstructionServiceImpl.java @@ -394,6 +394,10 @@ public class VpConstructionServiceImpl implements VpConstructionService { columnMap.put("bldsttName", "CASE WHEN NVL(vp.BLDSTT_CODE, 0) = 2 THEN '已建' WHEN NVL(vp.BLDSTT_CODE, 0) = 1 THEN '在建' ELSE '未建/规划' END"); columnMap.put("ststdt", "vp.SWDT"); columnMap.put("jcdt", "vp.JCDT"); + columnMap.put("esstdt", "vp.ESSTDT"); + columnMap.put("logo", "vp.LOGO"); + columnMap.put("introduce", "vp.INTRODUCE"); + columnMap.put("inffile", "vp.INFFILE"); return columnMap.get(field); } @@ -402,35 +406,25 @@ public class VpConstructionServiceImpl implements VpConstructionService { return " ORDER BY NVL(hb.ORDER_INDEX, 999999) ASC, NVL(eng.ORDER_INDEX, 999999) ASC, " + "NVL(vp.ORDER_INDEX, 999999) ASC, vp.STCD ASC"; } - Map sortMap = new HashMap<>(); - sortMap.put("stcd", "vp.STCD"); - sortMap.put("stnm", "vp.STNM"); - sortMap.put("sttpCode", "vp.STTP"); - sortMap.put("sttpName", "sttp.STTP_NAME"); - sortMap.put("baseId", "vp.BASE_ID"); - sortMap.put("baseName", "hb.BASENAME"); - sortMap.put("ennm", "eng.ENNM"); - sortMap.put("dtin", "vp.DTIN"); - sortMap.put("dtinName", "CASE WHEN NVL(vp.DTIN, 0) = 1 THEN '已接入' ELSE '未接入' END"); - sortMap.put("bldstt", "vp.BLDSTT_CODE"); - sortMap.put("bldsttName", "CASE WHEN NVL(vp.BLDSTT_CODE, 0) = 2 THEN '已建' WHEN NVL(vp.BLDSTT_CODE, 0) = 1 THEN '在建' ELSE '未建/规划' END"); - sortMap.put("ststdt", "vp.SWDT"); - sortMap.put("jcdt", "vp.JCDT"); - sortMap.put("baseStepSort", "hb.ORDER_INDEX"); - sortMap.put("rstcdStepSort", "eng.ORDER_INDEX"); - sortMap.put("siteStepSort", "vp.ORDER_INDEX"); - List orderItems = new ArrayList<>(); for (DataSourceRequest.SortDescriptor sort : sorts) { if (sort == null || StrUtil.isBlank(sort.getField())) { continue; } - String column = sortMap.get(sort.getField()); + String column = mapColumn(sort.getField()); + if (StrUtil.isBlank(column)) { + column = switch (sort.getField()) { + case "baseStepSort" -> "hb.ORDER_INDEX"; + case "rstcdStepSort" -> "eng.ORDER_INDEX"; + case "siteStepSort" -> "vp.ORDER_INDEX"; + default -> null; + }; + } if (StrUtil.isBlank(column)) { continue; } - String direction = "desc".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; - orderItems.add(column + " " + direction); + String direction = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; + orderItems.add(column + " " + direction + " NULLS LAST"); } if (orderItems.isEmpty()) { return " ORDER BY NVL(hb.ORDER_INDEX, 999999) ASC, NVL(eng.ORDER_INDEX, 999999) ASC, " @@ -770,15 +764,44 @@ public class VpConstructionServiceImpl implements VpConstructionService { columnMap.put("sttp", "vp.STTP"); columnMap.put("sttpCode", "vp.STTP"); columnMap.put("sttpName", "sttp.STTP_NAME"); + columnMap.put("sttpFullPath", "sttp.FULL_PATH"); + columnMap.put("sttpTreeLevel", "sttp.TREE_LEVEL"); columnMap.put("baseId", "vp.BASE_ID"); columnMap.put("baseName", "hb.BASENAME"); columnMap.put("rstcd", "vp.RSTCD"); columnMap.put("ennm", "eng.ENNM"); columnMap.put("hbrvcd", "vp.HBRVCD"); + columnMap.put("hbrvcdName", "hbrv.HBRVNM"); columnMap.put("rvcd", "eng.REACHCD"); + columnMap.put("rvcdName", "rv.RVNM"); + columnMap.put("lgtd", "vp.LGTD"); + columnMap.put("lttd", "vp.LTTD"); + columnMap.put("stlc", "vp.STLC"); columnMap.put("dtin", "vp.DTIN"); + columnMap.put("dtinName", "CASE WHEN NVL(vp.DTIN, 0) = 1 THEN '已接入' ELSE '未接入' END"); + columnMap.put("dtinTm", "vp.DTIN_TM"); columnMap.put("bldstt", "vp.BLPRD"); columnMap.put("bldsttCcode", "vp.BLDSTT_CODE"); + columnMap.put("bldsttName", "CASE WHEN vp.BLDSTT_CODE IN (1, 10, 11) THEN '已建' WHEN vp.BLDSTT_CODE IN (2, 7, 8) THEN '在建' ELSE '未建/规划' END"); + columnMap.put("bldsttCcodeName", "CASE WHEN vp.BLDSTT_CODE IN (1, 10, 11) THEN '已建' WHEN vp.BLDSTT_CODE IN (2, 7, 8) THEN '在建' ELSE '未建/规划' END"); + columnMap.put("stdsdt", "vp.STDSDT"); + columnMap.put("ststdt", "vp.STDSDT"); + columnMap.put("pststdt", "vp.PSTSTDT"); + columnMap.put("pesstdt", "vp.PESSTDT"); + columnMap.put("esstdt", "vp.ESSTDT"); + columnMap.put("jcdt", "vp.JCDT"); + columnMap.put("logo", "vp.LOGO"); + columnMap.put("introduce", "vp.INTRODUCE"); + columnMap.put("inffile", "vp.INFFILE"); + columnMap.put("inv", "vp.INV"); + columnMap.put("aptl", "vp.APTL"); + columnMap.put("area", "vp.AREA"); + columnMap.put("runState", "vp.RUN_STATE"); + columnMap.put("runStateName", "CASE NVL(vp.RUN_STATE, -1) WHEN 1 THEN '运行' WHEN 0 THEN '未运行' ELSE NULL END"); + columnMap.put("baseStepSort", "hb.ORDER_INDEX"); + columnMap.put("rvcdStepSort", "hbrv.ORDER_INDEX"); + columnMap.put("rstcdStepSort", "eng.ORDER_INDEX"); + columnMap.put("siteStepSort", "vp.ORDER_INDEX"); return columnMap.get(field); } @@ -834,35 +857,17 @@ public class VpConstructionServiceImpl implements VpConstructionService { return " ORDER BY NVL(eng.ORDER_INDEX, 999999) ASC, NVL(eng.ORDER_INDEX, 999999) ASC, " + "NVL(vp.ORDER_INDEX, 999999) ASC, vp.STCD ASC"; } - Map sortMap = new HashMap<>(); - sortMap.put("stcd", "vp.STCD"); - sortMap.put("stnm", "vp.STNM"); - sortMap.put("sttp", "vp.STTP"); - sortMap.put("sttpCode", "vp.STTP"); - sortMap.put("sttpName", "sttp.STTP_NAME"); - sortMap.put("baseId", "vp.BASE_ID"); - sortMap.put("baseName", "hb.BASENAME"); - sortMap.put("rstcd", "vp.RSTCD"); - sortMap.put("ennm", "eng.ENNM"); - sortMap.put("dtin", "vp.DTIN"); - sortMap.put("bldstt", "vp.BLPRD"); - sortMap.put("bldsttCcode", "vp.BLDSTT_CODE"); - sortMap.put("rvcdStepSort", "eng.ORDER_INDEX"); - sortMap.put("rstcdStepSort", "eng.ORDER_INDEX"); - sortMap.put("siteStepSort", "vp.ORDER_INDEX"); - sortMap.put("baseStepSort", "hb.ORDER_INDEX"); - List orderItems = new ArrayList<>(); for (DataSourceRequest.SortDescriptor sort : sorts) { if (sort == null || StrUtil.isBlank(sort.getField())) { continue; } - String column = sortMap.get(sort.getField()); + String column = mapVmsstbprptColumn(sort.getField()); if (StrUtil.isBlank(column)) { continue; } - String direction = "desc".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; - orderItems.add(column + " " + direction); + String direction = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; + orderItems.add(column + " " + direction + " NULLS LAST"); } if (orderItems.isEmpty()) { return " ORDER BY NVL(eng.ORDER_INDEX, 999999) ASC, NVL(eng.ORDER_INDEX, 999999) ASC, " diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/vd/service/impl/VdMonitorServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/vd/service/impl/VdMonitorServiceImpl.java index b69a292e..f5113e3a 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/vd/service/impl/VdMonitorServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/vd/service/impl/VdMonitorServiceImpl.java @@ -844,6 +844,13 @@ public class VdMonitorServiceImpl implements VdMonitorService { case "sttpFullPath" -> "t.sttpFullPath"; case "stcd" -> "t.stcd"; case "stnm" -> "t.stnm"; + case "mntp" -> "t.mntp"; + case "stlc" -> "t.stlc"; + case "lgtd" -> "t.lgtd"; + case "lttd" -> "t.lttd"; + case "elev" -> "t.elev"; + case "jcdt" -> "t.jcdt"; + case "wddt" -> "t.wddt"; case "rstcd" -> "t.rstcd"; case "ennm" -> "t.ennm"; case "fhstcd" -> "t.fhstcd"; @@ -853,14 +860,28 @@ public class VdMonitorServiceImpl implements VdMonitorService { case "baseId" -> "t.baseId"; case "baseName" -> "t.baseName"; case "hbrvcd" -> "t.hbrvcd"; + case "hbrvcdName" -> "t.hbrvcdName"; + case "dtinName" -> "t.dtinName"; + case "bldsttCcode" -> "t.bldsttCcode"; + case "bldsttCcodeName" -> "t.bldsttCcodeName"; + case "stindx" -> "t.stindx"; + case "introduce" -> "t.introduce"; + case "logo" -> "t.logo"; + case "inffile" -> "t.inffile"; + case "dtfrqcy" -> "t.dtfrqcy"; + case "remark" -> "t.remark"; + case "vlsr" -> "t.vlsr"; + case "vlsrTm" -> "t.vlsrTm"; case "rvcd" -> "t.rvcd"; case "addvcd" -> "t.addvcd"; case "dtin" -> "t.dtin"; case "usfl" -> "t.usfl"; - case "bldsttCcode" -> "t.bldsttCcode"; case "url" -> "t.url"; case "playWay" -> "t.playWay"; case "sourceTable" -> "t.sourceTable"; + case "baseStepSort" -> "t.baseStepSort"; + case "rstcdStepSort" -> "t.rstcdStepSort"; + case "siteStepSort" -> "t.siteStepSort"; default -> null; }; } @@ -937,8 +958,8 @@ public class VdMonitorServiceImpl implements VdMonitorService { if (StrUtil.isBlank(column)) { continue; } - String direction = "desc".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; - orderItems.add(column + " " + direction); + String direction = "desc".equalsIgnoreCase(sort.getDir()) || "des".equalsIgnoreCase(sort.getDir()) ? "DESC" : "ASC"; + orderItems.add(column + " " + direction + " NULLS LAST"); } if (orderItems.isEmpty()) { return " ORDER BY t.baseStepSort ASC, t.rstcdStepSort ASC, t.siteStepSort ASC, t.stcd ASC"; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java index 72790e38..2ebee4d2 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/wq/service/impl/EnvWqDataServiceImpl.java @@ -1034,6 +1034,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { case "stcd" -> "T.STCD"; case "tm" -> "T.TM"; case "wqgrd" -> "T.WQGRD"; + case "wqgrdName" -> "T.WQGRD_NAME"; case "ph" -> "T.PH"; case "dox" -> "T.DOX"; case "codmn" -> "T.CODMN"; @@ -1070,14 +1071,23 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { case "tu" -> "T.TU"; case "cyano" -> "T.CYANO"; case "sfdb" -> "T.SFDB"; + case "sfdbName" -> "T.SFDB_NAME"; case "wtmp" -> "T.WTMP"; case "dtinType" -> "T.DTIN_TYPE"; case "tod" -> "T.TOD"; case "wqSfdbhnYs" -> "T.WQ_SFDBHN_YS"; + case "wqSfdbhnYsName" -> "T.WQ_SFDBHN_YS_NAME"; + case "rvcdName" -> "T.RVCD_NAME"; + case "addvcdName" -> "T.ADDVCD_NAME"; + case "qi" -> "T.QI"; + case "qo" -> "T.QO"; case "siteStepSort" -> "T.SITESTEPSORT"; case "baseStepSort" -> "T.BASESTEPSORT"; + case "rvcdStepSort" -> "T.RVCDSTEPSORT"; case "rstcdStepSort" -> "T.RSTCDSTEPSORT"; case "sttpCode" -> "T.STTP_CODE"; + case "minVal" -> "T.MINVAL"; + case "maxVal" -> "T.MAXVAL"; default -> null; }; } @@ -2107,6 +2117,8 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { case "coenvwState", "dtin", "dtinType" -> "CASE WHEN NVL(eng.DTIN, 0) = 1 THEN 1 ELSE 0 END"; case "sttpCode" -> "'ENG'"; case "stcd", "rstcd" -> "eng.STCD"; + case "stCode" -> "eng.STCD"; + case "stName" -> "eng.ENNM"; case "dvtp" -> "eng.DVTP"; case "baseStepSort" -> "hb.ORDER_INDEX"; case "hbrvcd" -> "eng.HBRVCD"; @@ -2125,6 +2137,8 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { case "sttpCode" -> "wq.STTP"; case "stcd" -> "wq.STCD"; case "rstcd" -> "wq.RSTCD"; + case "stCode" -> "wq.STCD"; + case "stName" -> "wq.STNM"; case "dvtp" -> "eng.DVTP"; case "baseStepSort" -> "hb.ORDER_INDEX"; case "hbrvcd" -> "eng.HBRVCD"; @@ -2150,7 +2164,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { continue; } String dir = ("desc".equalsIgnoreCase(sortDescriptor.getDir()) || "des".equalsIgnoreCase(sortDescriptor.getDir())) ? "DESC" : "ASC"; - orderColumns.add(column + " " + dir); + orderColumns.add(column + " " + dir + " NULLS LAST"); } } if (orderColumns.isEmpty()) { @@ -2287,6 +2301,45 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { case "fhstcd" -> "t.FHSTCD"; case "baseId" -> "t.BASE_ID"; case "dtin" -> "t.DTIN"; + case "tm" -> "t.TM"; + case "sttp" -> "t.STTP"; + case "lgtd" -> "t.LGTD"; + case "lttd" -> "t.LTTD"; + case "elev" -> "t.ELEV"; + case "stlc" -> "t.STLC"; + case "wwqtg" -> "t.WWQTG"; + case "wqtype" -> "t.WQTYPE"; + case "jcdt" -> "t.JCDT"; + case "wddt" -> "t.WDDT"; + case "bldsttCode" -> "t.BLDSTT_CODE"; + case "introduce" -> "t.INTRODUCE"; + case "logo" -> "t.LOGO"; + case "inffile" -> "t.INFFILE"; + case "usfl" -> "t.USFL"; + case "dtinSrc" -> "t.DTIN_SRC"; + case "dtinTm" -> "t.DTIN_TM"; + case "stindx" -> "t.STINDX"; + case "orderIndex" -> "t.ORDER_INDEX"; + case "rstcd" -> "t.RSTCD"; + case "ennm" -> "eng.ENNM"; + case "baseName" -> "hb.BASENAME"; + case "hbrvcd" -> "eng.HBRVCD"; + case "hbrvcdName" -> "hbrv.HBRVNM"; + case "rvcd" -> "eng.RVCD"; + case "rvcdName" -> "rv.RVNM"; + case "addvcd" -> "eng.ADDVCD"; + case "addvcdName" -> "addv.ADDVNM"; + case "ispro" -> "t.ISPRO"; + case "dtfrqcy" -> "t.DTFRQCY"; + 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 "deleteUser" -> "t.DELETE_USER"; + case "deleteTime" -> "t.DELETE_TIME"; default -> null; }; } @@ -2441,25 +2494,7 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { if (sortDescriptor == null || StrUtil.isBlank(sortDescriptor.getField())) { continue; } - String column = switch (sortDescriptor.getField()) { - case "stcd" -> "t.STCD"; - case "stnm" -> "t.STNM"; - case "tm" -> "t.TM"; - case "sttp" -> "t.STTP"; - case "jcdt" -> "t.JCDT"; - case "rstcd" -> "t.RSTCD"; - case "ennm" -> "eng.ENNM"; - case "baseId" -> "eng.BASE_ID"; - case "baseName" -> "hb.BASENAME"; - case "hbrvcd" -> "eng.HBRVCD"; - case "rvcd" -> "eng.RVCD"; - case "fhstcd" -> "t.FHSTCD"; - case "mway" -> "t.MWAY"; - case "dtin" -> "t.DTIN"; - case "dtinType" -> "t.DTIN_TYPE"; - case "orderIndex" -> "t.ORDER_INDEX"; - default -> null; - }; + String column = mapMsstbprptColumn(sortDescriptor.getField()); if (StrUtil.isBlank(column)) { continue; } @@ -2519,7 +2554,8 @@ public class EnvWqDataServiceImpl implements EnvWqDataService { sql.append(", "); } sql.append(column).append(" ") - .append("desc".equalsIgnoreCase(sortDescriptor.getDir()) ? "DESC" : "ASC"); + .append(("desc".equalsIgnoreCase(sortDescriptor.getDir()) || "des".equalsIgnoreCase(sortDescriptor.getDir())) ? "DESC" : "ASC") + .append(" NULLS LAST"); appended = true; } return appended ? sql.toString() : ""; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java index d3946de4..1a67c0b7 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/wt/service/impl/SdWtMonitorServiceImpl.java @@ -1660,6 +1660,7 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { case "stnm" -> "t.STNM"; case "baseId" -> "t.BASEID"; case "dt" -> "t.DT"; + case "monthInt", "month" -> "EXTRACT(MONTH FROM t.DT)"; case "wt", "actualTemp" -> "t.WT"; case "sttp" -> "t.STTP"; case "sumVal" -> "t.SUMVAL"; @@ -1873,7 +1874,18 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { case "sttpName" -> "t.STTP_NAME"; case "description" -> "t.DESCRIPTION"; case "parentId" -> "t.PARENT_ID"; -// case "enable" -> "t.ENABLED"; + case "displayRecordUser" -> "t.DISPLAY_RECORD_USER"; + case "isolateType" -> "t.ISOLATE_TYPE"; + case "stbprpCnt" -> "t.STBPRP_CNT"; + case "recordUserName" -> "t.RECORD_USER_NAME"; + case "modifyUserName" -> "t.MODIFY_USER_NAME"; + case "displayDepartment" -> "t.DISPLAY_DEPARTMENT"; + case "enable" -> "t.ENABLE"; + case "filterContent" -> "t.FILTER_CONTENT"; + case "isTempStorage" -> "t.IS_TEMP_STORAGE"; + case "departmentId" -> "t.DEPARTMENT_ID"; + case "systemId" -> "t.SYSTEM_ID"; + case "platformId" -> "t.PLATFORM_ID"; case "treeLevel" -> "t.TREE_LEVEL"; case "hasChildren" -> "t.HAS_CHILDREN"; case "fullPath" -> "t.FULL_PATH"; @@ -1912,23 +1924,55 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService { if (sortList != null) { for (DataSourceRequest.SortDescriptor sortDescriptor : sortList) { String field = sortDescriptor.getField(); - String dir = "desc".equalsIgnoreCase(sortDescriptor.getDir()) ? "DESC" : "ASC"; + String dir = "desc".equalsIgnoreCase(sortDescriptor.getDir()) || "des".equalsIgnoreCase(sortDescriptor.getDir()) ? "DESC" : "ASC"; if ("baseStepSort".equals(field)) { - orderColumns.add("NVL(baseStepSort, 999999) " + dir); + orderColumns.add("NVL(baseStepSort, 999999) " + dir + " NULLS LAST"); } else if ("rvcdStepSort".equals(field)) { -// orderColumns.add("NVL(rvcdStepSort, 999999) " + dir); - } else if ("hbrvcd".equals(field)) { - orderColumns.add("NVL(hbrvcd, '~') " + dir); + orderColumns.add("NVL(rvcdStepSort, 999999) " + dir + " NULLS LAST"); } else if ("rstcdStepSort".equals(field)) { -// orderColumns.add("NVL(rstcdStepSort, 999999) " + dir); + orderColumns.add("NVL(rstcdStepSort, 999999) " + dir + " NULLS LAST"); } else if ("siteStepSort".equals(field)) { - orderColumns.add("NVL(siteStepSort, 999999) " + dir); + orderColumns.add("NVL(siteStepSort, 999999) " + dir + " NULLS LAST"); + } else if ("baseId".equals(field)) { + orderColumns.add("NVL(baseId, '~') " + dir + " NULLS LAST"); + } else if ("hbrvcd".equals(field)) { + orderColumns.add("NVL(hbrvcd, '~') " + dir + " NULLS LAST"); + } else if ("sttpCode".equals(field)) { + orderColumns.add("NVL(sttpCode, '~') " + dir + " NULLS LAST"); + } else if ("sttpName".equals(field)) { + orderColumns.add("NVL(sttpName, '~') " + dir + " NULLS LAST"); + } else if ("sttpFullPath".equals(field)) { + orderColumns.add("NVL(sttpFullPath, '~') " + dir + " NULLS LAST"); } else if ("stnm".equals(field)) { - orderColumns.add("NVL(stnm, '~') " + dir); + orderColumns.add("NVL(stnm, '~') " + dir + " NULLS LAST"); } else if ("ennm".equals(field)) { - orderColumns.add("NVL(ennm, '~') " + dir); + orderColumns.add("NVL(ennm, '~') " + dir + " NULLS LAST"); } else if ("stcd".equals(field)) { - orderColumns.add("NVL(stcd, '~') " + dir); + orderColumns.add("NVL(stcd, '~') " + dir + " NULLS LAST"); + } else if ("fhstcd".equals(field)) { + orderColumns.add("NVL(fhstcd, '~') " + dir + " NULLS LAST"); + } else if ("rstcd".equals(field)) { + orderColumns.add("NVL(rstcd, '~') " + dir + " NULLS LAST"); + } else if ("stCode".equals(field)) { + orderColumns.add("NVL(stCode, '~') " + dir + " NULLS LAST"); + } else if ("stName".equals(field)) { + orderColumns.add("NVL(stName, '~') " + dir + " NULLS LAST"); + } else if ("dvtp".equals(field)) { + orderColumns.add("NVL(dvtp, '~') " + dir + " NULLS LAST"); + } else if ("jcdt".equals(field)) { + orderColumns.add("jcdt " + dir + " NULLS LAST"); + } else if ("stindx".equals(field)) { + orderColumns.add("NVL(stindx, '~') " + dir + " NULLS LAST"); + } else if ("coenvwState".equals(field)) { + orderColumns.add("NVL(coenvwState, -1) " + dir + " NULLS LAST"); + } else if ("bldsttCcode".equals(field)) { + orderColumns.add("NVL(bldsttCcode, '~') " + dir + " NULLS LAST"); + } else if ("bldsttCcodeName".equals(field)) { + orderColumns.add("NVL(bldsttCcodeName, '~') " + dir + " NULLS LAST"); + } else if ("dtin".equals(field)) { + orderColumns.add("NVL(dtin, -1) " + dir + " NULLS LAST"); + } else if ("dtinName".equals(field)) { + orderColumns.add("CASE WHEN NVL(dtin, 0) = 1 THEN '已接入' ELSE '未接入' END " + dir + " NULLS LAST"); } } } diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java index 21e5cd7e..af6eb22c 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java @@ -552,8 +552,11 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { case "hbrvcd" -> "t.HBRVCD"; case "hbrvcdName" -> "t.HBRVCDNAME"; case "bldsttCcode" -> "t.BLDSTTCCODE"; + case "vdid" -> "t.VDID"; case "rzVideo" -> "t.RZVIDEO"; case "speedVideo" -> "t.SPEEDVIDEO"; + case "rzVideoPath" -> "t.RZVIDEOPATH"; + case "speedVideoPath" -> "t.SPEEDVIDEOPATH"; case "baseStepSort" -> "t.BASESTEPSORT"; case "rvcdStepSort" -> "t.RVCDSTEPSORT"; case "rstcdStepSort" -> "t.RSTCDSTEPSORT"; @@ -916,18 +919,51 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { case "stnm" -> "t.STNM"; case "tm" -> "t.TM"; case "sttp", "sttpCode" -> "t.STTP"; + case "lgtd" -> "t.LGTD"; + case "lttd" -> "t.LTTD"; + case "elev" -> "t.ELEV"; + case "stlc" -> "t.STLC"; case "jcdt" -> "t.JCDT"; + case "wddt" -> "t.WDDT"; + case "bldsttCode", "bldsttCcode" -> "t.BLDSTT_CODE"; + case "bldsttCcodeName" -> "CASE WHEN t.BLDSTT_CODE IN ('1', '10', '11') THEN '已建' WHEN t.BLDSTT_CODE IN ('2', '7', '8') THEN '在建' ELSE '未建/规划' END"; + case "introduce" -> "t.INTRODUCE"; + case "logo" -> "t.LOGO"; + case "inffile" -> "t.INFFILE"; + case "usfl" -> "t.USFL"; + case "dtin" -> "t.DTIN"; + case "dtinSrc" -> "t.DTIN_SRC"; + case "dtinType" -> "t.DTIN_TYPE"; + case "dtinTm" -> "t.DTIN_TM"; + case "mway" -> "t.MWAY"; + case "mwayName" -> "CASE NVL(t.MWAY, 0) WHEN 1 THEN '人工' WHEN 2 THEN '自动' ELSE '未知' END"; + case "stindx" -> "t.STINDX"; + case "orderIndex" -> "t.ORDER_INDEX"; + case "dmstcd" -> "t.DMSTCD"; case "rstcd" -> "t.RSTCD"; case "ennm" -> "eng.ENNM"; case "baseId" -> "eng.BASE_ID"; case "baseName" -> "hb.BASENAME"; case "hbrvcd" -> "eng.HBRVCD"; + case "hbrvcdName" -> "hbrv.HBRVNM"; case "rvcd" -> "eng.RVCD"; + case "rvcdName" -> "rv.RVNM"; + case "addvcd" -> "eng.ADDVCD"; + case "addvcdName" -> "addv.ADDVNM"; case "fhstcd" -> "t.FHSTCD"; - case "mway" -> "t.MWAY"; - case "dtin" -> "t.DTIN"; - case "dtinType" -> "t.DTIN_TYPE"; - case "orderIndex" -> "t.ORDER_INDEX"; + case "ispro" -> "t.ISPRO"; + case "project" -> "t.PROJECT"; + case "dtfrqcy" -> "t.DTFRQCY"; + 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"; default -> null; }; if (StrUtil.isBlank(column)) {