@vtx/ol-map 1.0.108 → 1.0.109
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +217 -0
- package/lib/_util/EventEmitter.js +3 -2
- package/lib/_util/EventEmitter.js.map +1 -1
- package/lib/_util/StyleCache.js +3 -2
- package/lib/_util/StyleCache.js.map +1 -1
- package/lib/_util/encryptParams.js +3 -2
- package/lib/_util/encryptParams.js.map +1 -1
- package/lib/_util/getComponentProps.js +1 -1
- package/lib/_util/getCookie.js +2 -1
- package/lib/_util/getCookie.js.map +1 -1
- package/lib/_util/getDefaultMapInfo.js +5 -4
- package/lib/_util/getDefaultMapInfo.js.map +1 -1
- package/lib/_util/getSystemInfo.js +5 -4
- package/lib/_util/getSystemInfo.js.map +1 -1
- package/lib/_util/getToken.js +4 -2
- package/lib/_util/getToken.js.map +1 -1
- package/lib/_util/getUrlParam.js +2 -1
- package/lib/_util/getUrlParam.js.map +1 -1
- package/lib/_util/http.js +5 -4
- package/lib/_util/http.js.map +1 -1
- package/lib/_util/layer.js +12 -8
- package/lib/_util/layer.js.map +1 -1
- package/lib/_util/mapTool.js +2 -1
- package/lib/_util/mapTool.js.map +1 -1
- package/lib/_util/projzh/datum/bd-09.js +2 -1
- package/lib/_util/projzh/datum/bd-09.js.map +1 -1
- package/lib/_util/projzh/datum/gcj-02.js +2 -1
- package/lib/_util/projzh/datum/gcj-02.js.map +1 -1
- package/lib/_util/projzh/datum/index.js +2 -1
- package/lib/_util/projzh/datum/index.js.map +1 -1
- package/lib/_util/projzh/index.js +2 -1
- package/lib/_util/projzh/index.js.map +1 -1
- package/lib/_util/projzh/projection/baidu-mercator.js +2 -1
- package/lib/_util/projzh/projection/baidu-mercator.js.map +1 -1
- package/lib/_util/projzh/projection/index.js +2 -1
- package/lib/_util/projzh/projection/index.js.map +1 -1
- package/lib/_util/projzh/projection/spherical-mercator.js +2 -1
- package/lib/_util/projzh/projection/spherical-mercator.js.map +1 -1
- package/lib/_util/projzh/util.js +2 -1
- package/lib/_util/projzh/util.js.map +1 -1
- package/lib/_util/search.js +10 -7
- package/lib/_util/search.js.map +1 -1
- package/lib/_util/setCookie.js +2 -1
- package/lib/_util/setCookie.js.map +1 -1
- package/lib/_util/stringToFun.js +1 -1
- package/lib/_util/transform.js +5 -4
- package/lib/_util/transform.js.map +1 -1
- package/lib/_util/useColSize.js +2 -1
- package/lib/_util/useColSize.js.map +1 -1
- package/lib/_util/useSet.js +6 -5
- package/lib/_util/useSet.js.map +1 -1
- package/lib/analysis-layer/index.js +16 -11
- package/lib/analysis-layer/index.js.map +1 -1
- package/lib/buffer-draw/BufferDraw.js +5 -4
- package/lib/buffer-draw/BufferDraw.js.map +1 -1
- package/lib/buffer-draw/index.js +8 -8
- package/lib/buffer-draw/index.js.map +1 -1
- package/lib/circle/Circle.js +5 -4
- package/lib/circle/Circle.js.map +1 -1
- package/lib/circle/index.js +3 -3
- package/lib/circle/index.js.map +1 -1
- package/lib/config.js +2 -1
- package/lib/config.js.map +1 -1
- package/lib/convertCamelToCSS.js +2 -1
- package/lib/convertCamelToCSS.js.map +1 -1
- package/lib/dom/Dom.js +3 -2
- package/lib/dom/Dom.js.map +1 -1
- package/lib/dom/index.js +5 -5
- package/lib/dom/index.js.map +1 -1
- package/lib/events/index.js +4 -2
- package/lib/events/index.js.map +1 -1
- package/lib/feature-draw/FeatureDraw.js +7 -5
- package/lib/feature-draw/FeatureDraw.js.map +1 -1
- package/lib/feature-draw/index.js +7 -7
- package/lib/feature-draw/index.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +11 -10
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/MyCluster.js +6 -5
- package/lib/feature-layer/MyCluster.js.map +1 -1
- package/lib/feature-layer/createFeatureCollection.js +24 -16
- package/lib/feature-layer/createFeatureCollection.js.map +1 -1
- package/lib/feature-layer/index.js +6 -6
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/flow-line-layer/FlowLineLayer.js +5 -4
- package/lib/flow-line-layer/FlowLineLayer.js.map +1 -1
- package/lib/flow-line-layer/index.js +6 -6
- package/lib/flow-line-layer/index.js.map +1 -1
- package/lib/fly-line-layer/FlyLineLayer.js +5 -4
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
- package/lib/fly-line-layer/index.js +4 -4
- package/lib/fly-line-layer/index.js.map +1 -1
- package/lib/group-layer/GroupLayer.js +3 -2
- package/lib/group-layer/GroupLayer.js.map +1 -1
- package/lib/group-layer/index.js +4 -4
- package/lib/group-layer/index.js.map +1 -1
- package/lib/heatmap-layer/HeatmapLayer.js +5 -4
- package/lib/heatmap-layer/HeatmapLayer.js.map +1 -1
- package/lib/heatmap-layer/index.js +4 -4
- package/lib/heatmap-layer/index.js.map +1 -1
- package/lib/high-layer/HighLayer.js +5 -4
- package/lib/high-layer/HighLayer.js.map +1 -1
- package/lib/high-layer/index.js +7 -6
- package/lib/high-layer/index.js.map +1 -1
- package/lib/image-layer/ImageLayer.js +7 -5
- package/lib/image-layer/ImageLayer.js.map +1 -1
- package/lib/image-layer/index.js +5 -5
- package/lib/image-layer/index.js.map +1 -1
- package/lib/legend/index.js +20 -13
- package/lib/legend/index.js.map +1 -1
- package/lib/map/Analysis.js +3 -2
- package/lib/map/Analysis.js.map +1 -1
- package/lib/map/Layers.js +4 -3
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/Popup.js +13 -12
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js +2 -1
- package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +2 -1
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js +5 -3
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js +5 -3
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/index.js +7 -5
- package/lib/map/getBaseLayers/index.js.map +1 -1
- package/lib/map/index.js +21 -20
- package/lib/map/index.js.map +1 -1
- package/lib/map-icon/svg/index.js +2 -1
- package/lib/map-icon/svg/index.js.map +1 -1
- package/lib/marker/Marker.js +7 -5
- package/lib/marker/Marker.js.map +1 -1
- package/lib/marker/index.js +3 -3
- package/lib/marker/index.js.map +1 -1
- package/lib/path-line-layer/PathLineLayer.js +5 -4
- package/lib/path-line-layer/PathLineLayer.js.map +1 -1
- package/lib/path-line-layer/getPathLineStyles.js +5 -4
- package/lib/path-line-layer/getPathLineStyles.js.map +1 -1
- package/lib/path-line-layer/index.js +6 -6
- package/lib/path-line-layer/index.js.map +1 -1
- package/lib/path-play-back/PathPlayBack.js +7 -6
- package/lib/path-play-back/PathPlayBack.js.map +1 -1
- package/lib/path-play-back/index.js +5 -4
- package/lib/path-play-back/index.js.map +1 -1
- package/lib/poi-search/Location.js +4 -4
- package/lib/poi-search/Location.js.map +1 -1
- package/lib/poi-search/PoiList.js +4 -4
- package/lib/poi-search/PoiList.js.map +1 -1
- package/lib/poi-search/Search.js +9 -9
- package/lib/poi-search/Search.js.map +1 -1
- package/lib/poi-search/index.js +6 -5
- package/lib/poi-search/index.js.map +1 -1
- package/lib/point/Point.js +5 -4
- package/lib/point/Point.js.map +1 -1
- package/lib/point/index.js +3 -3
- package/lib/point/index.js.map +1 -1
- package/lib/polygon/Polygon.js +5 -4
- package/lib/polygon/Polygon.js.map +1 -1
- package/lib/polygon/index.js +3 -3
- package/lib/polygon/index.js.map +1 -1
- package/lib/polyline/Polyline.js +5 -4
- package/lib/polyline/Polyline.js.map +1 -1
- package/lib/polyline/index.js +3 -3
- package/lib/polyline/index.js.map +1 -1
- package/lib/popup/index.js +7 -6
- package/lib/popup/index.js.map +1 -1
- package/lib/provider/index.js +4 -2
- package/lib/provider/index.js.map +1 -1
- package/lib/renderer/Fill.js +3 -2
- package/lib/renderer/Fill.js.map +1 -1
- package/lib/renderer/Stroke.js +3 -2
- package/lib/renderer/Stroke.js.map +1 -1
- package/lib/renderer/index.js +9 -7
- package/lib/renderer/index.js.map +1 -1
- package/lib/renderer/transformRgb.js +2 -1
- package/lib/renderer/transformRgb.js.map +1 -1
- package/lib/search-map/VtxModal.js +5 -4
- package/lib/search-map/VtxModal.js.map +1 -1
- package/lib/search-map/index.js +6 -5
- package/lib/search-map/index.js.map +1 -1
- package/lib/tile-layer/TileLayer.js +5 -4
- package/lib/tile-layer/TileLayer.js.map +1 -1
- package/lib/tile-layer/index.js +3 -3
- package/lib/tile-layer/index.js.map +1 -1
- package/lib/tools/Layer/LayerService.js +5 -4
- package/lib/tools/Layer/LayerService.js.map +1 -1
- package/lib/tools/Layer/LayersCheckService.js +15 -9
- package/lib/tools/Layer/LayersCheckService.js.map +1 -1
- package/lib/tools/Layer/index.js +4 -4
- package/lib/tools/Layer/index.js.map +1 -1
- package/lib/tools/Search/index.js +11 -10
- package/lib/tools/Search/index.js.map +1 -1
- package/lib/tools/Toolbox/BoxSelect/index.js +2 -1
- package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/CircleSelect/index.js +2 -1
- package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/EagleEye/index.js +6 -5
- package/lib/tools/Toolbox/EagleEye/index.js.map +1 -1
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js +8 -7
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js.map +1 -1
- package/lib/tools/Toolbox/MapBookmark/index.js +14 -13
- package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -1
- package/lib/tools/Toolbox/MapPrint/index.js +6 -6
- package/lib/tools/Toolbox/MapPrint/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Area/index.js +2 -1
- package/lib/tools/Toolbox/Measure/Area/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Distance/index.js +2 -1
- package/lib/tools/Toolbox/Measure/Distance/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Measure.js +3 -2
- package/lib/tools/Toolbox/Measure/Measure.js.map +1 -1
- package/lib/tools/Toolbox/Measure/index.js +6 -5
- package/lib/tools/Toolbox/Measure/index.js.map +1 -1
- package/lib/tools/Toolbox/PolygonSelect/index.js +2 -1
- package/lib/tools/Toolbox/PolygonSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/ScaleLine/index.js +6 -5
- package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -1
- package/lib/tools/Toolbox/SelectTools/index.js +16 -15
- package/lib/tools/Toolbox/SelectTools/index.js.map +1 -1
- package/lib/tools/Toolbox/SpaceQuery/index.js +5 -5
- package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -1
- package/lib/tools/Toolbox/ZoomInput/index.js +6 -5
- package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -1
- package/lib/tools/Toolbox/index.js +9 -7
- package/lib/tools/Toolbox/index.js.map +1 -1
- package/lib/tools/Utils/CreateOverlay.js +3 -2
- package/lib/tools/Utils/CreateOverlay.js.map +1 -1
- package/lib/tools/Utils/Draw.js +7 -5
- package/lib/tools/Utils/Draw.js.map +1 -1
- package/lib/tools/Utils/HighLayer.js +10 -8
- package/lib/tools/Utils/HighLayer.js.map +1 -1
- package/lib/tools/Utils/measure.js +2 -1
- package/lib/tools/Utils/measure.js.map +1 -1
- package/lib/tools/Utils/utils.js +18 -10
- package/lib/tools/Utils/utils.js.map +1 -1
- package/lib/tools/View/index.js +8 -7
- package/lib/tools/View/index.js.map +1 -1
- package/lib/tools/analysis-tool/index.js +10 -9
- package/lib/tools/analysis-tool/index.js.map +1 -1
- package/lib/tools/base-map-switch/index.js +8 -7
- package/lib/tools/base-map-switch/index.js.map +1 -1
- package/lib/tools/components/Icon/index.js +2 -1
- package/lib/tools/components/Icon/index.js.map +1 -1
- package/lib/tools/components/ItemWrap/index.js +6 -5
- package/lib/tools/components/ItemWrap/index.js.map +1 -1
- package/lib/tools/components/Modal/index.js +5 -4
- package/lib/tools/components/Modal/index.js.map +1 -1
- package/lib/tools/components/RequiredLabel/index.js +3 -3
- package/lib/tools/components/RequiredLabel/index.js.map +1 -1
- package/lib/tools/components/Select/index.js +2 -1
- package/lib/tools/components/Select/index.js.map +1 -1
- package/lib/tools/components/Table/index.js +5 -4
- package/lib/tools/components/Table/index.js.map +1 -1
- package/lib/tools/components/ToolItem/index.js +2 -1
- package/lib/tools/components/ToolItem/index.js.map +1 -1
- package/lib/tools/components/ToolsSelect/index.js +2 -1
- package/lib/tools/components/ToolsSelect/index.js.map +1 -1
- package/lib/tools/full-screen/index.js +6 -5
- package/lib/tools/full-screen/index.js.map +1 -1
- package/lib/tools/index.js +4 -4
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/layer-control/index.js +12 -9
- package/lib/tools/layer-control/index.js.map +1 -1
- package/lib/tools/refresh/index.js +7 -6
- package/lib/tools/refresh/index.js.map +1 -1
- package/lib/tools/style/index.less +154 -154
- package/lib/tools-item/index.js +6 -5
- package/lib/tools-item/index.js.map +1 -1
- package/lib/use-props/index.js +2 -1
- package/lib/use-props/index.js.map +1 -1
- package/package.json +119 -119
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -21,10 +21,10 @@ var _ahooks = require("ahooks");
|
|
|
21
21
|
var _ImageLayer = require("../../../image-layer/ImageLayer");
|
|
22
22
|
var _turf = require("@turf/turf");
|
|
23
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
24
|
-
function _getRequireWildcardCache(
|
|
25
|
-
function _interopRequireWildcard(
|
|
26
|
-
function ownKeys(
|
|
27
|
-
function _objectSpread(
|
|
24
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
26
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
27
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
28
28
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
29
29
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
30
30
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
@@ -32,18 +32,18 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
32
32
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
33
33
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
34
34
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
35
|
-
function _iterableToArrayLimit(
|
|
35
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
36
36
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /*
|
|
37
37
|
* @Description:框选、圈选、多边形选择
|
|
38
38
|
*/
|
|
39
39
|
var classPrefix = 'selectTools';
|
|
40
40
|
var getFeatureIntersects = function getFeatureIntersects(polygon, feature) {
|
|
41
41
|
var _feature$getGeometry, _feature$getGeometry2, _feature$getGeometry3, _lngLat$;
|
|
42
|
-
var lngLat = feature === null || feature === void 0
|
|
42
|
+
var lngLat = feature === null || feature === void 0 ? void 0 : (_feature$getGeometry = feature.getGeometry()) === null || _feature$getGeometry === void 0 ? void 0 : _feature$getGeometry.getCoordinates();
|
|
43
43
|
var poly = (0, _turf.polygon)(polygon.getCoordinates());
|
|
44
44
|
var pt;
|
|
45
45
|
var B = false;
|
|
46
|
-
if ((feature === null || feature === void 0
|
|
46
|
+
if ((feature === null || feature === void 0 ? void 0 : (_feature$getGeometry2 = feature.getGeometry()) === null || _feature$getGeometry2 === void 0 ? void 0 : _feature$getGeometry2.getType()) === 'Point') {
|
|
47
47
|
lngLat.map(function (v) {
|
|
48
48
|
return Number(v);
|
|
49
49
|
});
|
|
@@ -56,12 +56,12 @@ var getFeatureIntersects = function getFeatureIntersects(polygon, feature) {
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
if ((feature === null || feature === void 0
|
|
59
|
+
if ((feature === null || feature === void 0 ? void 0 : (_feature$getGeometry3 = feature.getGeometry()) === null || _feature$getGeometry3 === void 0 ? void 0 : _feature$getGeometry3.getType()) === 'Polygon' && lngLat !== null && lngLat !== void 0 && (_lngLat$ = lngLat[0]) !== null && _lngLat$ !== void 0 && _lngLat$.length) {
|
|
60
60
|
var _lngLat$2;
|
|
61
|
-
lngLat === null || lngLat === void 0
|
|
61
|
+
lngLat === null || lngLat === void 0 ? void 0 : lngLat[0].map(function (v) {
|
|
62
62
|
return Number(v);
|
|
63
63
|
});
|
|
64
|
-
lngLat === null || lngLat === void 0
|
|
64
|
+
lngLat === null || lngLat === void 0 ? void 0 : (_lngLat$2 = lngLat[0]) === null || _lngLat$2 === void 0 ? void 0 : _lngLat$2.map(function (item) {
|
|
65
65
|
pt = (0, _turf.point)(item);
|
|
66
66
|
if (poly && pt) {
|
|
67
67
|
var _intersects = (0, _turf.booleanPointInPolygon)(pt, poly);
|
|
@@ -113,7 +113,7 @@ var LayerSelect = function LayerSelect(props) {
|
|
|
113
113
|
clearTimeout(time.current);
|
|
114
114
|
}
|
|
115
115
|
time.current = setTimeout(function () {
|
|
116
|
-
onChange === null || onChange === void 0
|
|
116
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
117
117
|
}, 500);
|
|
118
118
|
};
|
|
119
119
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -143,7 +143,7 @@ var LayerSelect = function LayerSelect(props) {
|
|
|
143
143
|
type: "link"
|
|
144
144
|
}, open ? '收起' : '展开')));
|
|
145
145
|
};
|
|
146
|
-
var _default =
|
|
146
|
+
var _default = function _default(props) {
|
|
147
147
|
var onClose = props.onClose,
|
|
148
148
|
drawType = props.drawType,
|
|
149
149
|
title = props.title,
|
|
@@ -221,7 +221,7 @@ var _default = exports["default"] = function _default(props) {
|
|
|
221
221
|
});
|
|
222
222
|
|
|
223
223
|
// 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key
|
|
224
|
-
var _key = opts === null || opts === void 0
|
|
224
|
+
var _key = opts === null || opts === void 0 ? void 0 : (_opts$ = opts[0]) === null || _opts$ === void 0 ? void 0 : _opts$.value;
|
|
225
225
|
if (currentKey.current) {
|
|
226
226
|
var layer = map.layers.getLayerByKey(currentKey.current);
|
|
227
227
|
if (layer && layer !== null && layer !== void 0 && layer.show) {
|
|
@@ -237,7 +237,7 @@ var _default = exports["default"] = function _default(props) {
|
|
|
237
237
|
var _feature$getGeometry4;
|
|
238
238
|
setDataSource([]);
|
|
239
239
|
if (!feature) return;
|
|
240
|
-
var geometry = feature === null || feature === void 0
|
|
240
|
+
var geometry = feature === null || feature === void 0 ? void 0 : (_feature$getGeometry4 = feature.getGeometry) === null || _feature$getGeometry4 === void 0 ? void 0 : _feature$getGeometry4.call(feature);
|
|
241
241
|
if (!geometry) return;
|
|
242
242
|
setLoading(true);
|
|
243
243
|
var layer = map.layers.getLayerByKey(currentLayerKey);
|
|
@@ -429,4 +429,5 @@ var _default = exports["default"] = function _default(props) {
|
|
|
429
429
|
}
|
|
430
430
|
}, open ? '收起' : '展开', open ? /*#__PURE__*/_react["default"].createElement(_icons.CaretUpOutlined, null) : /*#__PURE__*/_react["default"].createElement(_icons.CaretDownOutlined, null))));
|
|
431
431
|
};
|
|
432
|
+
exports["default"] = _default;
|
|
432
433
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps2","_classnames2","_ahooks","_ImageLayer","_turf","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","iterator","f","next","done","isArray","classPrefix","getFeatureIntersects","polygon","feature","_feature$getGeometry","_feature$getGeometry2","_feature$getGeometry3","_lngLat$","lngLat","getGeometry","getCoordinates","poly","TurfPolygon","pt","B","getType","map","v","TurfPoint","intersects","TurfBooleanPointInPolygon","_lngLat$2","item","LayerSelect","props","_list","_props$options","options","onChange","currentKey","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","index","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","_default","exports","onClose","drawType","title","renderTableActive","_useProps","useProps","_useState5","_useState6","currentLayerKey","setCurrentLayerKey","_useState7","_useState8","dataSource","setDataSource","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","layersOpts","setLayersOpts","_useState15","_useState16","setFeature","draw","useEffect","JSON","stringify","layersChange","getOptions","layers","on","un","Draw","zIndex","destroy","hideTemplate","_opts$","opts","getAllLayers","viewOnly","layerControl","show","_key","layer","getLayerByKey","_feature$getGeometry4","geometry","tableData","Image","getWmsData","Vector","getWfsData","message","info","extent","getExtent","source","getSource","features","getFeatureInfo","listKeys","getKeys","data","labelField","NAME","forEachFeatureIntersectingExtent","featureList","polygonGeometry","fromCircle","featureIntersects","setHighlightFeature","_layer$group","_filter","group","getFilter","coorStr","coordinates","getWFSFeatureInfoByLayer","then","itemk","columns","dataIndex","width","render","text","record","_map$getViewport","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","Spin","spinning","minHeight","rowKey","CaretUpOutlined","CaretDownOutlined"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { message, Space, Divider, Button, Spin } from 'antd';\r\nimport { CaretUpOutlined, CaretDownOutlined } from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport { getWFSFeatureInfoByLayer } from '../../../_util/layer';\r\nimport { Image, Vector } from 'ol/layer';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport { VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';\r\nimport { getFilter } from '../../../image-layer/ImageLayer';\r\nimport {\r\n booleanPointInPolygon as TurfBooleanPointInPolygon,\r\n point as TurfPoint,\r\n polygon as TurfPolygon,\r\n} from '@turf/turf';\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst getFeatureIntersects = (polygon, feature) => {\r\n let lngLat = feature?.getGeometry()?.getCoordinates();\r\n const poly = TurfPolygon(polygon.getCoordinates());\r\n\r\n let pt;\r\n let B = false;\r\n\r\n if (feature?.getGeometry()?.getType() === 'Point') {\r\n lngLat.map(v => Number(v));\r\n pt = TurfPoint(lngLat);\r\n // 判断在点在多边形内\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n }\r\n\r\n if (feature?.getGeometry()?.getType() === 'Polygon' && lngLat?.[0]?.length) {\r\n lngLat?.[0].map(v => Number(v));\r\n lngLat?.[0]?.map(item => {\r\n pt = TurfPoint(item);\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n });\r\n }\r\n\r\n return B;\r\n};\r\n\r\nconst LayerSelect = props => {\r\n const { options = [], value, onChange, currentKey } = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n currentKey.current = value;\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div\r\n className={classnames(`${classPrefix}-layer-select`, {\r\n 'selectTools-layer-select-scroll': open,\r\n })}\r\n >\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{ margin: 0 }}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined /> : <VerticalAlignBottomOutlined />}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default props => {\r\n const { onClose, drawType, title, renderTableActive } = props;\r\n const { map } = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [open, setOpen] = useState(true);\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n const currentKey = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature), layersOpts]);\r\n\r\n useEffect(() => {\r\n const layersChange = () => {\r\n getOptions();\r\n };\r\n\r\n layersChange();\r\n\r\n // 添加图层变化监听事件\r\n map.layers.on('change', layersChange);\r\n\r\n return () => {\r\n // 移除图层变化监听事件\r\n map.layers.un('change', layersChange);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({ map, zIndex: 80 });\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n currentKey.current = null;\r\n };\r\n }, []);\r\n\r\n const getOptions = () => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map.getAllLayers().filter(v => {\r\n return !v.viewOnly && v.key && v.name && v.layerControl && v.show;\r\n });\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n\r\n // 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key\r\n let _key = opts?.[0]?.value;\r\n if (currentKey.current) {\r\n let layer = map.layers.getLayerByKey(currentKey.current);\r\n if (layer && layer?.show) {\r\n _key = currentKey.current;\r\n }\r\n }\r\n currentKey.current = _key;\r\n setCurrentLayerKey(_key);\r\n setLayersOpts(opts);\r\n }\r\n };\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return;\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.destroy();\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.destroy();\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, (feature) => {\r\n let featureList = feature.get('features');\r\n\r\n\r\n if (featureList?.length > 1) {\r\n featureList.forEach(f => {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, f);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n\r\n let data = getFeatureInfo(f);\r\n tableData.push(data);\r\n features.push(f);\r\n });\r\n } else {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, feature);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let _filter = '';\r\n if (layer?.group?.length) {\r\n _filter = getFilter(layer.group);\r\n }\r\n\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = _filter ? `(${_filter}) and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(itemk => {\r\n if (item.get(itemk)) {\r\n data[itemk] = item.get(itemk);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.destroy();\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n let columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 200,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc?.getBoundingClientRect();\r\n let parentRect = map.getViewport()?.getBoundingClientRect();\r\n let left = 400;\r\n if (rect && parentRect) {\r\n left = rect?.left - parentRect?.left + 12 + 350 + 150;\r\n }\r\n map.showTemplate(record.feature, {\r\n fitViewOptions: { padding: [100, 400, 100, left] },\r\n });\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ];\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n <Spin spinning={loading}>\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n currentKey={currentKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n <div style={{ minHeight: 20 }}>\r\n {open && (\r\n <Table\r\n rowKey=\"code\"\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n )}\r\n </div>\r\n\r\n {dataSource?.length > 0 && (\r\n <div className=\"ol-map-search-result-button\" onClick={() => setOpen(!open)}>\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined /> : <CaretDownOutlined />}\r\n </div>\r\n )}\r\n </Spin>\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps2","_classnames2","_ahooks","_ImageLayer","_turf","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","classPrefix","getFeatureIntersects","polygon","feature","_feature$getGeometry","_feature$getGeometry2","_feature$getGeometry3","_lngLat$","lngLat","getGeometry","getCoordinates","poly","TurfPolygon","pt","B","getType","map","v","TurfPoint","intersects","TurfBooleanPointInPolygon","_lngLat$2","item","LayerSelect","props","_list","_props$options","options","onChange","currentKey","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","index","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","_default","onClose","drawType","title","renderTableActive","_useProps","useProps","_useState5","_useState6","currentLayerKey","setCurrentLayerKey","_useState7","_useState8","dataSource","setDataSource","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","layersOpts","setLayersOpts","_useState15","_useState16","setFeature","draw","useEffect","JSON","stringify","layersChange","getOptions","layers","on","un","Draw","zIndex","destroy","hideTemplate","_opts$","opts","getAllLayers","viewOnly","layerControl","show","_key","layer","getLayerByKey","_feature$getGeometry4","geometry","tableData","Image","getWmsData","Vector","getWfsData","message","info","extent","getExtent","getSource","features","getFeatureInfo","listKeys","getKeys","data","labelField","NAME","forEachFeatureIntersectingExtent","featureList","f","polygonGeometry","fromCircle","featureIntersects","setHighlightFeature","_layer$group","_filter","group","getFilter","coorStr","coordinates","getWFSFeatureInfoByLayer","then","itemk","columns","dataIndex","width","render","text","record","_map$getViewport","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","Spin","spinning","minHeight","rowKey","CaretUpOutlined","CaretDownOutlined","exports"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { message, Space, Divider, Button, Spin } from 'antd';\r\nimport { CaretUpOutlined, CaretDownOutlined } from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport { getWFSFeatureInfoByLayer } from '../../../_util/layer';\r\nimport { Image, Vector } from 'ol/layer';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport { VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';\r\nimport { getFilter } from '../../../image-layer/ImageLayer';\r\nimport {\r\n booleanPointInPolygon as TurfBooleanPointInPolygon,\r\n point as TurfPoint,\r\n polygon as TurfPolygon,\r\n} from '@turf/turf';\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst getFeatureIntersects = (polygon, feature) => {\r\n let lngLat = feature?.getGeometry()?.getCoordinates();\r\n const poly = TurfPolygon(polygon.getCoordinates());\r\n\r\n let pt;\r\n let B = false;\r\n\r\n if (feature?.getGeometry()?.getType() === 'Point') {\r\n lngLat.map(v => Number(v));\r\n pt = TurfPoint(lngLat);\r\n // 判断在点在多边形内\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n }\r\n\r\n if (feature?.getGeometry()?.getType() === 'Polygon' && lngLat?.[0]?.length) {\r\n lngLat?.[0].map(v => Number(v));\r\n lngLat?.[0]?.map(item => {\r\n pt = TurfPoint(item);\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n });\r\n }\r\n\r\n return B;\r\n};\r\n\r\nconst LayerSelect = props => {\r\n const { options = [], value, onChange, currentKey } = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n currentKey.current = value;\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div\r\n className={classnames(`${classPrefix}-layer-select`, {\r\n 'selectTools-layer-select-scroll': open,\r\n })}\r\n >\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{ margin: 0 }}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined /> : <VerticalAlignBottomOutlined />}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default props => {\r\n const { onClose, drawType, title, renderTableActive } = props;\r\n const { map } = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [open, setOpen] = useState(true);\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n const currentKey = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature), layersOpts]);\r\n\r\n useEffect(() => {\r\n const layersChange = () => {\r\n getOptions();\r\n };\r\n\r\n layersChange();\r\n\r\n // 添加图层变化监听事件\r\n map.layers.on('change', layersChange);\r\n\r\n return () => {\r\n // 移除图层变化监听事件\r\n map.layers.un('change', layersChange);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({ map, zIndex: 80 });\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n currentKey.current = null;\r\n };\r\n }, []);\r\n\r\n const getOptions = () => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map.getAllLayers().filter(v => {\r\n return !v.viewOnly && v.key && v.name && v.layerControl && v.show;\r\n });\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n\r\n // 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key\r\n let _key = opts?.[0]?.value;\r\n if (currentKey.current) {\r\n let layer = map.layers.getLayerByKey(currentKey.current);\r\n if (layer && layer?.show) {\r\n _key = currentKey.current;\r\n }\r\n }\r\n currentKey.current = _key;\r\n setCurrentLayerKey(_key);\r\n setLayersOpts(opts);\r\n }\r\n };\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return;\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.destroy();\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.destroy();\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, (feature) => {\r\n let featureList = feature.get('features');\r\n\r\n\r\n if (featureList?.length > 1) {\r\n featureList.forEach(f => {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, f);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n\r\n let data = getFeatureInfo(f);\r\n tableData.push(data);\r\n features.push(f);\r\n });\r\n } else {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, feature);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n let data = getFeatureInfo(feature);\r\n tableData.push(data);\r\n features.push(feature);\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let _filter = '';\r\n if (layer?.group?.length) {\r\n _filter = getFilter(layer.group);\r\n }\r\n\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = _filter ? `(${_filter}) and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(itemk => {\r\n if (item.get(itemk)) {\r\n data[itemk] = item.get(itemk);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.destroy();\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n let columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 200,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc?.getBoundingClientRect();\r\n let parentRect = map.getViewport()?.getBoundingClientRect();\r\n let left = 400;\r\n if (rect && parentRect) {\r\n left = rect?.left - parentRect?.left + 12 + 350 + 150;\r\n }\r\n map.showTemplate(record.feature, {\r\n fitViewOptions: { padding: [100, 400, 100, left] },\r\n });\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ];\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n <Spin spinning={loading}>\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n currentKey={currentKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n <div style={{ minHeight: 20 }}>\r\n {open && (\r\n <Table\r\n rowKey=\"code\"\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n )}\r\n </div>\r\n\r\n {dataSource?.length > 0 && (\r\n <div className=\"ol-map-search-result-button\" onClick={() => setOpen(!open)}>\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined /> : <CaretDownOutlined />}\r\n </div>\r\n )}\r\n </Spin>\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -20,8 +20,8 @@ require("./index.less");
|
|
|
20
20
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
21
21
|
var _useProps2 = _interopRequireDefault(require("../../../use-props"));
|
|
22
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
|
-
function _getRequireWildcardCache(
|
|
24
|
-
function _interopRequireWildcard(
|
|
23
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
24
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
25
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
26
26
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
27
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
@@ -30,7 +30,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
30
30
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
31
31
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
32
32
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
33
|
-
function _iterableToArrayLimit(
|
|
33
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
34
34
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
35
|
var CONFIG = {
|
|
36
36
|
'1': {
|
|
@@ -254,7 +254,7 @@ var Table = function Table(props) {
|
|
|
254
254
|
}) : [];
|
|
255
255
|
|
|
256
256
|
// 设置操作符数据
|
|
257
|
-
var options = (CONFIG === null || CONFIG === void 0
|
|
257
|
+
var options = (CONFIG === null || CONFIG === void 0 ? void 0 : (_CONFIG$type = CONFIG[type]) === null || _CONFIG$type === void 0 ? void 0 : _CONFIG$type.operator) || [];
|
|
258
258
|
options = options.map(function (v) {
|
|
259
259
|
return {
|
|
260
260
|
label: v,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_antd","_RequiredLabel","_Select","_Table","_ToolsSelect","_http","_analysisLayer","_Draw","_Polygon","_classnames","_useProps2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","toString","slice","constructor","name","test","len","length","arr2","l","f","next","done","push","value","CONFIG","operator","LAYER","GSGW","label","table_name","layer","WSGX","GSGD","WSGD","dataToCQLFilter","data","whereValue","cql_filter","map","v","type","field","String","concat","join","where","Field","props","options","status","onChange","createElement","Select","style","width","Operator","Value","mode","Input","target","Table","layerList","layerKey","onAnalysis","_useState","useState","_useState2","dataSource","setDataSource","_useState3","_useState4","fieldList","setFieldList","_useState5","_useState6","setWhereValue","useEffect","key","Date","getTime","_layerList$find","find","getColumnRelationByTableName","tableName","url","params","http","body","then","res","_res$data","_fieldList","result","columnName","values","onFieldChange","index","_fieldList$find","_CONFIG$type","_dataSource","field_status","_ref","enumList","operatorList","onOperatorChange","operator_status","onValueChange","value_status","verifyData","error","onFinish","message","info","Fragment","className","classnames","Radio","Group","paddingLeft","Button","onClick","size","columns","title","dataIndex","align","render","_","_2","text","record","disabled","padding","splice","pagination","toolbar","scroll","y","getViewport","clientHeight","footer","newTableData","JSON","parse","stringify","_default","onClose","_useProps","useProps","_useState7","_useState8","setLayerKey","_useState9","_useState10","toolsKey","setToolsKey","_useState11","_useState12","loading","setLoading","_useState13","_useState14","_useState15","_useState16","setLayerList","analysisLayer","useRef","drawRef","onLayerInit","on","current","AnalysisLayer","layerName","Draw","destroy","_layerList","getAllLayers","onLayerChange","onToolsChange","drawType","features","source","getFeatures","geometry","getGeometry","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","forEach","_layerList$find2","typeName","layers","QUERY_LAYERS","setLayerData","isActive","icon","Tabs","TabPane","tab","setCenterByCode"],"sources":["tools/Toolbox/SpaceQuery/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport Modal from '../../components/Modal';\r\nimport {\r\n message,\r\n Tabs,\r\n Table as AntdTable,\r\n Button,\r\n Select as AntdSelect,\r\n Input,\r\n Radio,\r\n} from 'antd';\r\nimport RequiredLabel from '../../components/RequiredLabel';\r\nimport Select from '../../components/Select';\r\nimport MyTable from '../../components/Table';\r\nimport ToolsSelect from '../../components/ToolsSelect';\r\nimport http from '../../../_util/http';\r\nimport AnalysisLayer from '../../../analysis-layer';\r\nimport Draw from '../../Utils/Draw';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport './index.less';\r\nimport classnames from 'classnames';\r\nimport useProps from \"../../../use-props\";\r\n\r\nconst CONFIG = {\r\n '1': {\r\n name: '数值',\r\n operator: ['=', '>', '<', '>=', '<='],\r\n },\r\n '2': {\r\n name: '字符串',\r\n operator: ['=', '包含'],\r\n },\r\n '3': {\r\n name: '枚举',\r\n operator: ['=', '包含'],\r\n },\r\n '4': {\r\n name: '布尔',\r\n operator: ['='],\r\n },\r\n};\r\n\r\nconst LAYER = {\r\n GSGW: {\r\n label: '供水管线',\r\n value: 'GSGW',\r\n table_name: 'zhsw_water_supply_line',\r\n layer: 'zhsw:putian_water_supply_line',\r\n },\r\n WSGX: {\r\n label: '污水管线',\r\n value: 'WSGX',\r\n table_name: 'zhsw_line',\r\n layer: 'zhsw:putian_ws_line',\r\n },\r\n GSGD: {\r\n label: '供水管点',\r\n value: 'GSGD',\r\n table_name: 'zhsw_water_supply_point',\r\n layer: 'zhsw:putian_water_supply_point',\r\n },\r\n WSGD: {\r\n label: '污水管点',\r\n value: 'WSGD',\r\n table_name: 'zhsw_point',\r\n layer: 'zhsw:putian_ws_point',\r\n },\r\n};\r\n// 数据转条件\r\nconst dataToCQLFilter = (data, whereValue) => {\r\n let cql_filter = '';\r\n if (data?.length) {\r\n data.map(v => {\r\n let { type, field, operator, value } = v;\r\n\r\n if (operator === '包含') {\r\n if (String(type) === '3') {\r\n operator = 'in';\r\n value = `(${value.join(',')})`;\r\n } else {\r\n operator = 'like';\r\n value = `'%${value}%'`;\r\n }\r\n }\r\n let where = `${field} ${operator} ${value}`;\r\n cql_filter = cql_filter ? `${cql_filter} ${whereValue} ${where}` : where;\r\n });\r\n }\r\n\r\n return cql_filter;\r\n};\r\n\r\n// 字段\r\nconst Field = props => {\r\n const { options, value, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 操作符\r\nconst Operator = props => {\r\n const { value, options, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n value={value}\r\n status={status}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 值\r\nconst Value = props => {\r\n const { type, operator, options, value, status, onChange } = props;\r\n\r\n if (type === '3') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n mode={operator === '包含' ? 'multiple' : null}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n }\r\n\r\n if (type === '4') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={[\r\n { label: '否', value: 0 },\r\n { label: '是', value: 1 },\r\n ]}\r\n />\r\n );\r\n }\r\n\r\n return <Input value={value} status={status} onChange={e => onChange(e.target.value)} />;\r\n};\r\n\r\nconst Table = props => {\r\n const { map, layerList, layerKey, onAnalysis } = props;\r\n const [dataSource, setDataSource] = useState([]);\r\n const [fieldList, setFieldList] = useState([]);\r\n const [whereValue, setWhereValue] = useState('and');\r\n\r\n useEffect(() => {\r\n setDataSource([\r\n {\r\n key: new Date().getTime(),\r\n },\r\n ]);\r\n\r\n if (layerKey) {\r\n let { table_name } = layerList.find(v => v.value === layerKey);\r\n getColumnRelationByTableName(table_name);\r\n }\r\n }, [layerKey]);\r\n\r\n const getColumnRelationByTableName = tableName => {\r\n const url = `/cloud/zhsw-jcss/api/tableColumnRelation/getColumnRelationByTableName`;\r\n const params = {\r\n tableName,\r\n };\r\n\r\n http.get(url, { body: params }).then(res => {\r\n let _fieldList = [];\r\n if (res?.result === 0 && res?.data?.length) {\r\n res.data.map(v => {\r\n _fieldList.push({ label: v.name, value: v.columnName, values: v });\r\n });\r\n }\r\n setFieldList(_fieldList);\r\n });\r\n };\r\n\r\n // 字段选择\r\n const onFieldChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].field = value;\r\n _dataSource[index].field_status = '';\r\n\r\n // 设置类型和枚举项\r\n let { type, enumList } = fieldList.find(v => v.value === value)?.values || {};\r\n _dataSource[index].type = type;\r\n _dataSource[index].enumList = enumList\r\n ? enumList.map(v => ({ label: v.key, value: v.value }))\r\n : [];\r\n\r\n // 设置操作符数据\r\n let options = CONFIG?.[type]?.operator || [];\r\n options = options.map(v => ({ label: v, value: v }));\r\n _dataSource[index].operatorList = options;\r\n\r\n // 清空数据\r\n _dataSource[index].operator = '';\r\n _dataSource[index].value = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n // 操作符选择\r\n const onOperatorChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].operator = value;\r\n _dataSource[index].operator_status = '';\r\n _dataSource[index].value = value === '包含' ? [] : '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const onValueChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].value = value;\r\n _dataSource[index].value_status = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const verifyData = () => {\r\n let _dataSource = [...dataSource];\r\n let error = false;\r\n _dataSource.map(v => {\r\n ['field', 'operator', 'value'].map(f => {\r\n if (!v[f]) {\r\n v[`${f}_status`] = 'error';\r\n error = true;\r\n }\r\n });\r\n });\r\n\r\n setDataSource(_dataSource);\r\n\r\n return error;\r\n };\r\n\r\n const onFinish = () => {\r\n let error = verifyData();\r\n if (!error) {\r\n let cql_filter = dataToCQLFilter(dataSource, whereValue);\r\n onAnalysis(cql_filter);\r\n } else {\r\n message.info('查询条件存在空项');\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n <div className={classnames('space-query-row')}>\r\n <RequiredLabel label=\"条件关系\">\r\n <Radio.Group\r\n style={{ paddingLeft: 6 }}\r\n onChange={e => setWhereValue(e.target.value)}\r\n value={whereValue}\r\n >\r\n <Radio value=\"and\">并且</Radio>\r\n <Radio value=\"or\">或者</Radio>\r\n </Radio.Group>\r\n </RequiredLabel>\r\n <Button type=\"primary\" onClick={onFinish}>\r\n 查询\r\n </Button>\r\n </div>\r\n\r\n <AntdTable\r\n className={classnames('space-query-table')}\r\n size=\"middle\"\r\n columns={[\r\n {\r\n title: '序号',\r\n dataIndex: 'num',\r\n width: 50,\r\n align: 'center',\r\n render: (_, _2, index) => index + 1,\r\n },\r\n {\r\n title: <RequiredLabel label=\"字段\" />,\r\n dataIndex: 'field',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => (\r\n <Field\r\n value={text}\r\n status={record.field_status}\r\n options={fieldList}\r\n onChange={value => onFieldChange(value, index)}\r\n />\r\n ),\r\n },\r\n {\r\n title: <RequiredLabel label=\"操作符\" />,\r\n dataIndex: 'operator',\r\n width: 100,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Operator\r\n value={text}\r\n status={record.operator_status}\r\n options={record.operatorList || []}\r\n onChange={value => onOperatorChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: <RequiredLabel label=\"值\" />,\r\n dataIndex: 'value',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Value\r\n value={text}\r\n status={record.value_status}\r\n type={record.type && String(record.type)}\r\n operator={record.operator}\r\n record={record}\r\n options={record.enumList || []}\r\n onChange={value => onValueChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: 'c',\r\n width: 50,\r\n align: 'left',\r\n render: (_, _2, index) => (\r\n <Button\r\n type=\"link\"\r\n disabled={dataSource.length === 1}\r\n style={{ padding: 0 }}\r\n onClick={() => {\r\n let _dataSource = [...dataSource];\r\n _dataSource.splice(index, 1);\r\n setDataSource(_dataSource);\r\n }}\r\n >\r\n 删除\r\n </Button>\r\n ),\r\n },\r\n ]}\r\n dataSource={dataSource}\r\n pagination={false}\r\n toolbar={false}\r\n scroll={{ y: map.getViewport().clientHeight - 362 }}\r\n footer={() => {\r\n return (\r\n <div\r\n onClick={() => {\r\n let newTableData = JSON.parse(JSON.stringify(dataSource));\r\n newTableData.push({\r\n key: new Date().getTime(),\r\n });\r\n setDataSource(newTableData);\r\n }}\r\n >\r\n +添加\r\n </div>\r\n );\r\n }}\r\n />\r\n </>\r\n );\r\n};\r\nexport default function(props) {\r\n const { onClose } = props;\r\n const { map } = useProps();\r\n const [layerKey, setLayerKey] = useState('');\r\n const [toolsKey, setToolsKey] = useState('');\r\n const [loading, setLoading] = useState(false);\r\n const [dataSource, setDataSource] = useState([]);\r\n const [layerList, setLayerList] = useState([]);\r\n\r\n const analysisLayer = useRef();\r\n const drawRef = useRef();\r\n\r\n useEffect(() => {\r\n onLayerInit();\r\n\r\n map.on('loadstart', () => {\r\n onLayerInit();\r\n });\r\n\r\n analysisLayer.current = new AnalysisLayer({\r\n map,\r\n layerName: 'zhsw:putian_network_access_enterprise',\r\n });\r\n\r\n drawRef.current = new Draw({ map });\r\n\r\n return () => {\r\n analysisLayer.current.destroy();\r\n\r\n drawRef.current.destroy();\r\n };\r\n }, []);\r\n\r\n const onLayerInit = () => {\r\n let _layerList = [];\r\n map.getAllLayers().map(layer => {\r\n if (layer.key && LAYER[layer.key]) {\r\n _layerList.push(LAYER[layer.key]);\r\n }\r\n });\r\n setLayerList(_layerList);\r\n };\r\n\r\n const onLayerChange = key => {\r\n setLayerKey(key);\r\n };\r\n\r\n const onToolsChange = key => {\r\n drawRef.current.drawType = key;\r\n setToolsKey(key);\r\n };\r\n\r\n const onAnalysis = cql_filter => {\r\n if (!layerKey) {\r\n return message.info('请选择查询图层');\r\n }\r\n\r\n let features = drawRef.current.source.getFeatures();\r\n if (!features?.length) {\r\n return message.info('请绘制查询范围');\r\n }\r\n\r\n let geometry = features[0].getGeometry();\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (toolsKey === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i === 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n\r\n setLoading(true);\r\n let { layer } = layerList.find(v => v.value === layerKey);\r\n let params = {\r\n typeName: layer,\r\n layers: layer,\r\n QUERY_LAYERS: layer,\r\n cql_filter: `${cql_filter} and INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n };\r\n analysisLayer.current.setLayerData(params).then(data => {\r\n setDataSource(data);\r\n setLoading(false);\r\n });\r\n };\r\n return (\r\n <Modal title=\"空间定位查询\" onClose={onClose} width={500}>\r\n <div className={classnames('space-query-row')}>\r\n <Select\r\n options={layerList}\r\n title=\"图层选择\"\r\n value={layerKey}\r\n onChange={onLayerChange}\r\n />\r\n\r\n <ToolsSelect\r\n title=\"地图选择\"\r\n value={toolsKey}\r\n onChange={onToolsChange}\r\n options={[\r\n { label: '框选', key: 'DragBox', isActive: false, icon: 'icon-kuangxuan' },\r\n { label: '圈选', key: 'Circle', isActive: false, icon: 'icon-quanxuan' },\r\n {\r\n label: '多边形选择',\r\n key: 'Polygon',\r\n isActive: false,\r\n icon: 'icon-duobianxingxuanze',\r\n },\r\n ]}\r\n />\r\n </div>\r\n\r\n <Tabs>\r\n <Tabs.TabPane tab=\"查询条件\" key=\"1\">\r\n <Table\r\n map={map}\r\n layerKey={layerKey}\r\n layerList={layerList}\r\n onAnalysis={onAnalysis}\r\n />\r\n </Tabs.TabPane>\r\n <Tabs.TabPane tab=\"查询结果\" key=\"2\">\r\n <MyTable\r\n columns={[\r\n {\r\n title: '编码',\r\n dataIndex: ['values_', 'code'],\r\n width: 100,\r\n render: text => (\r\n <a onClick={() => analysisLayer.current.setCenterByCode(text)}>\r\n {text}\r\n </a>\r\n ),\r\n },\r\n ]}\r\n loading={loading}\r\n dataSource={dataSource}\r\n scroll={{ y: map.getViewport().clientHeight - 330 }}\r\n />\r\n </Tabs.TabPane>\r\n </Tabs>\r\n </Modal>\r\n );\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_antd","_RequiredLabel","_Select","_Table","_ToolsSelect","_http","_analysisLayer","_Draw","_Polygon","_classnames","_useProps2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","CONFIG","operator","LAYER","GSGW","label","table_name","layer","WSGX","GSGD","WSGD","dataToCQLFilter","data","whereValue","cql_filter","map","v","type","field","String","concat","join","where","Field","props","options","status","onChange","createElement","Select","style","width","Operator","Value","mode","Input","e","target","Table","layerList","layerKey","onAnalysis","_useState","useState","_useState2","dataSource","setDataSource","_useState3","_useState4","fieldList","setFieldList","_useState5","_useState6","setWhereValue","useEffect","Date","getTime","_layerList$find","find","getColumnRelationByTableName","tableName","url","params","http","body","then","res","_res$data","_fieldList","result","columnName","values","onFieldChange","index","_fieldList$find","_CONFIG$type","_dataSource","field_status","_ref","enumList","operatorList","onOperatorChange","operator_status","onValueChange","value_status","verifyData","error","f","onFinish","message","info","Fragment","className","classnames","Radio","Group","paddingLeft","Button","onClick","size","columns","title","dataIndex","align","render","_","_2","text","record","disabled","padding","splice","pagination","toolbar","scroll","y","getViewport","clientHeight","footer","newTableData","JSON","parse","stringify","_default","onClose","_useProps","useProps","_useState7","_useState8","setLayerKey","_useState9","_useState10","toolsKey","setToolsKey","_useState11","_useState12","loading","setLoading","_useState13","_useState14","_useState15","_useState16","setLayerList","analysisLayer","useRef","drawRef","onLayerInit","on","current","AnalysisLayer","layerName","Draw","destroy","_layerList","getAllLayers","onLayerChange","onToolsChange","drawType","features","source","getFeatures","geometry","getGeometry","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","forEach","_layerList$find2","typeName","layers","QUERY_LAYERS","setLayerData","isActive","icon","Tabs","TabPane","tab","setCenterByCode"],"sources":["tools/Toolbox/SpaceQuery/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport Modal from '../../components/Modal';\r\nimport {\r\n message,\r\n Tabs,\r\n Table as AntdTable,\r\n Button,\r\n Select as AntdSelect,\r\n Input,\r\n Radio,\r\n} from 'antd';\r\nimport RequiredLabel from '../../components/RequiredLabel';\r\nimport Select from '../../components/Select';\r\nimport MyTable from '../../components/Table';\r\nimport ToolsSelect from '../../components/ToolsSelect';\r\nimport http from '../../../_util/http';\r\nimport AnalysisLayer from '../../../analysis-layer';\r\nimport Draw from '../../Utils/Draw';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport './index.less';\r\nimport classnames from 'classnames';\r\nimport useProps from \"../../../use-props\";\r\n\r\nconst CONFIG = {\r\n '1': {\r\n name: '数值',\r\n operator: ['=', '>', '<', '>=', '<='],\r\n },\r\n '2': {\r\n name: '字符串',\r\n operator: ['=', '包含'],\r\n },\r\n '3': {\r\n name: '枚举',\r\n operator: ['=', '包含'],\r\n },\r\n '4': {\r\n name: '布尔',\r\n operator: ['='],\r\n },\r\n};\r\n\r\nconst LAYER = {\r\n GSGW: {\r\n label: '供水管线',\r\n value: 'GSGW',\r\n table_name: 'zhsw_water_supply_line',\r\n layer: 'zhsw:putian_water_supply_line',\r\n },\r\n WSGX: {\r\n label: '污水管线',\r\n value: 'WSGX',\r\n table_name: 'zhsw_line',\r\n layer: 'zhsw:putian_ws_line',\r\n },\r\n GSGD: {\r\n label: '供水管点',\r\n value: 'GSGD',\r\n table_name: 'zhsw_water_supply_point',\r\n layer: 'zhsw:putian_water_supply_point',\r\n },\r\n WSGD: {\r\n label: '污水管点',\r\n value: 'WSGD',\r\n table_name: 'zhsw_point',\r\n layer: 'zhsw:putian_ws_point',\r\n },\r\n};\r\n// 数据转条件\r\nconst dataToCQLFilter = (data, whereValue) => {\r\n let cql_filter = '';\r\n if (data?.length) {\r\n data.map(v => {\r\n let { type, field, operator, value } = v;\r\n\r\n if (operator === '包含') {\r\n if (String(type) === '3') {\r\n operator = 'in';\r\n value = `(${value.join(',')})`;\r\n } else {\r\n operator = 'like';\r\n value = `'%${value}%'`;\r\n }\r\n }\r\n let where = `${field} ${operator} ${value}`;\r\n cql_filter = cql_filter ? `${cql_filter} ${whereValue} ${where}` : where;\r\n });\r\n }\r\n\r\n return cql_filter;\r\n};\r\n\r\n// 字段\r\nconst Field = props => {\r\n const { options, value, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 操作符\r\nconst Operator = props => {\r\n const { value, options, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n value={value}\r\n status={status}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 值\r\nconst Value = props => {\r\n const { type, operator, options, value, status, onChange } = props;\r\n\r\n if (type === '3') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n mode={operator === '包含' ? 'multiple' : null}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n }\r\n\r\n if (type === '4') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={[\r\n { label: '否', value: 0 },\r\n { label: '是', value: 1 },\r\n ]}\r\n />\r\n );\r\n }\r\n\r\n return <Input value={value} status={status} onChange={e => onChange(e.target.value)} />;\r\n};\r\n\r\nconst Table = props => {\r\n const { map, layerList, layerKey, onAnalysis } = props;\r\n const [dataSource, setDataSource] = useState([]);\r\n const [fieldList, setFieldList] = useState([]);\r\n const [whereValue, setWhereValue] = useState('and');\r\n\r\n useEffect(() => {\r\n setDataSource([\r\n {\r\n key: new Date().getTime(),\r\n },\r\n ]);\r\n\r\n if (layerKey) {\r\n let { table_name } = layerList.find(v => v.value === layerKey);\r\n getColumnRelationByTableName(table_name);\r\n }\r\n }, [layerKey]);\r\n\r\n const getColumnRelationByTableName = tableName => {\r\n const url = `/cloud/zhsw-jcss/api/tableColumnRelation/getColumnRelationByTableName`;\r\n const params = {\r\n tableName,\r\n };\r\n\r\n http.get(url, { body: params }).then(res => {\r\n let _fieldList = [];\r\n if (res?.result === 0 && res?.data?.length) {\r\n res.data.map(v => {\r\n _fieldList.push({ label: v.name, value: v.columnName, values: v });\r\n });\r\n }\r\n setFieldList(_fieldList);\r\n });\r\n };\r\n\r\n // 字段选择\r\n const onFieldChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].field = value;\r\n _dataSource[index].field_status = '';\r\n\r\n // 设置类型和枚举项\r\n let { type, enumList } = fieldList.find(v => v.value === value)?.values || {};\r\n _dataSource[index].type = type;\r\n _dataSource[index].enumList = enumList\r\n ? enumList.map(v => ({ label: v.key, value: v.value }))\r\n : [];\r\n\r\n // 设置操作符数据\r\n let options = CONFIG?.[type]?.operator || [];\r\n options = options.map(v => ({ label: v, value: v }));\r\n _dataSource[index].operatorList = options;\r\n\r\n // 清空数据\r\n _dataSource[index].operator = '';\r\n _dataSource[index].value = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n // 操作符选择\r\n const onOperatorChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].operator = value;\r\n _dataSource[index].operator_status = '';\r\n _dataSource[index].value = value === '包含' ? [] : '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const onValueChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].value = value;\r\n _dataSource[index].value_status = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const verifyData = () => {\r\n let _dataSource = [...dataSource];\r\n let error = false;\r\n _dataSource.map(v => {\r\n ['field', 'operator', 'value'].map(f => {\r\n if (!v[f]) {\r\n v[`${f}_status`] = 'error';\r\n error = true;\r\n }\r\n });\r\n });\r\n\r\n setDataSource(_dataSource);\r\n\r\n return error;\r\n };\r\n\r\n const onFinish = () => {\r\n let error = verifyData();\r\n if (!error) {\r\n let cql_filter = dataToCQLFilter(dataSource, whereValue);\r\n onAnalysis(cql_filter);\r\n } else {\r\n message.info('查询条件存在空项');\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n <div className={classnames('space-query-row')}>\r\n <RequiredLabel label=\"条件关系\">\r\n <Radio.Group\r\n style={{ paddingLeft: 6 }}\r\n onChange={e => setWhereValue(e.target.value)}\r\n value={whereValue}\r\n >\r\n <Radio value=\"and\">并且</Radio>\r\n <Radio value=\"or\">或者</Radio>\r\n </Radio.Group>\r\n </RequiredLabel>\r\n <Button type=\"primary\" onClick={onFinish}>\r\n 查询\r\n </Button>\r\n </div>\r\n\r\n <AntdTable\r\n className={classnames('space-query-table')}\r\n size=\"middle\"\r\n columns={[\r\n {\r\n title: '序号',\r\n dataIndex: 'num',\r\n width: 50,\r\n align: 'center',\r\n render: (_, _2, index) => index + 1,\r\n },\r\n {\r\n title: <RequiredLabel label=\"字段\" />,\r\n dataIndex: 'field',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => (\r\n <Field\r\n value={text}\r\n status={record.field_status}\r\n options={fieldList}\r\n onChange={value => onFieldChange(value, index)}\r\n />\r\n ),\r\n },\r\n {\r\n title: <RequiredLabel label=\"操作符\" />,\r\n dataIndex: 'operator',\r\n width: 100,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Operator\r\n value={text}\r\n status={record.operator_status}\r\n options={record.operatorList || []}\r\n onChange={value => onOperatorChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: <RequiredLabel label=\"值\" />,\r\n dataIndex: 'value',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Value\r\n value={text}\r\n status={record.value_status}\r\n type={record.type && String(record.type)}\r\n operator={record.operator}\r\n record={record}\r\n options={record.enumList || []}\r\n onChange={value => onValueChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: 'c',\r\n width: 50,\r\n align: 'left',\r\n render: (_, _2, index) => (\r\n <Button\r\n type=\"link\"\r\n disabled={dataSource.length === 1}\r\n style={{ padding: 0 }}\r\n onClick={() => {\r\n let _dataSource = [...dataSource];\r\n _dataSource.splice(index, 1);\r\n setDataSource(_dataSource);\r\n }}\r\n >\r\n 删除\r\n </Button>\r\n ),\r\n },\r\n ]}\r\n dataSource={dataSource}\r\n pagination={false}\r\n toolbar={false}\r\n scroll={{ y: map.getViewport().clientHeight - 362 }}\r\n footer={() => {\r\n return (\r\n <div\r\n onClick={() => {\r\n let newTableData = JSON.parse(JSON.stringify(dataSource));\r\n newTableData.push({\r\n key: new Date().getTime(),\r\n });\r\n setDataSource(newTableData);\r\n }}\r\n >\r\n +添加\r\n </div>\r\n );\r\n }}\r\n />\r\n </>\r\n );\r\n};\r\nexport default function(props) {\r\n const { onClose } = props;\r\n const { map } = useProps();\r\n const [layerKey, setLayerKey] = useState('');\r\n const [toolsKey, setToolsKey] = useState('');\r\n const [loading, setLoading] = useState(false);\r\n const [dataSource, setDataSource] = useState([]);\r\n const [layerList, setLayerList] = useState([]);\r\n\r\n const analysisLayer = useRef();\r\n const drawRef = useRef();\r\n\r\n useEffect(() => {\r\n onLayerInit();\r\n\r\n map.on('loadstart', () => {\r\n onLayerInit();\r\n });\r\n\r\n analysisLayer.current = new AnalysisLayer({\r\n map,\r\n layerName: 'zhsw:putian_network_access_enterprise',\r\n });\r\n\r\n drawRef.current = new Draw({ map });\r\n\r\n return () => {\r\n analysisLayer.current.destroy();\r\n\r\n drawRef.current.destroy();\r\n };\r\n }, []);\r\n\r\n const onLayerInit = () => {\r\n let _layerList = [];\r\n map.getAllLayers().map(layer => {\r\n if (layer.key && LAYER[layer.key]) {\r\n _layerList.push(LAYER[layer.key]);\r\n }\r\n });\r\n setLayerList(_layerList);\r\n };\r\n\r\n const onLayerChange = key => {\r\n setLayerKey(key);\r\n };\r\n\r\n const onToolsChange = key => {\r\n drawRef.current.drawType = key;\r\n setToolsKey(key);\r\n };\r\n\r\n const onAnalysis = cql_filter => {\r\n if (!layerKey) {\r\n return message.info('请选择查询图层');\r\n }\r\n\r\n let features = drawRef.current.source.getFeatures();\r\n if (!features?.length) {\r\n return message.info('请绘制查询范围');\r\n }\r\n\r\n let geometry = features[0].getGeometry();\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (toolsKey === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i === 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n\r\n setLoading(true);\r\n let { layer } = layerList.find(v => v.value === layerKey);\r\n let params = {\r\n typeName: layer,\r\n layers: layer,\r\n QUERY_LAYERS: layer,\r\n cql_filter: `${cql_filter} and INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n };\r\n analysisLayer.current.setLayerData(params).then(data => {\r\n setDataSource(data);\r\n setLoading(false);\r\n });\r\n };\r\n return (\r\n <Modal title=\"空间定位查询\" onClose={onClose} width={500}>\r\n <div className={classnames('space-query-row')}>\r\n <Select\r\n options={layerList}\r\n title=\"图层选择\"\r\n value={layerKey}\r\n onChange={onLayerChange}\r\n />\r\n\r\n <ToolsSelect\r\n title=\"地图选择\"\r\n value={toolsKey}\r\n onChange={onToolsChange}\r\n options={[\r\n { label: '框选', key: 'DragBox', isActive: false, icon: 'icon-kuangxuan' },\r\n { label: '圈选', key: 'Circle', isActive: false, icon: 'icon-quanxuan' },\r\n {\r\n label: '多边形选择',\r\n key: 'Polygon',\r\n isActive: false,\r\n icon: 'icon-duobianxingxuanze',\r\n },\r\n ]}\r\n />\r\n </div>\r\n\r\n <Tabs>\r\n <Tabs.TabPane tab=\"查询条件\" key=\"1\">\r\n <Table\r\n map={map}\r\n layerKey={layerKey}\r\n layerList={layerList}\r\n onAnalysis={onAnalysis}\r\n />\r\n </Tabs.TabPane>\r\n <Tabs.TabPane tab=\"查询结果\" key=\"2\">\r\n <MyTable\r\n columns={[\r\n {\r\n title: '编码',\r\n dataIndex: ['values_', 'code'],\r\n width: 100,\r\n render: text => (\r\n <a onClick={() => analysisLayer.current.setCenterByCode(text)}>\r\n {text}\r\n </a>\r\n ),\r\n },\r\n ]}\r\n loading={loading}\r\n dataSource={dataSource}\r\n scroll={{ y: map.getViewport().clientHeight - 330 }}\r\n />\r\n </Tabs.TabPane>\r\n </Tabs>\r\n </Modal>\r\n );\r\n}\r\n"],"mappings":"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"}
|