UNPKG

@ciniki/iclient-maplibregl

Version:

@supermapgis/iclient-maplibregl 是一套基于 Maplibre GL 的云 GIS 网络客户端开发平台, 支持访问 SuperMap iServer / iEdge / iPortal / iManager / Online 的地图、服务和资源,为用户提供了完整专业的 GIS 能力, 同时提供了优秀的可视化功能。

118 lines (111 loc) 5.16 kB
/* Copyright© 2000 - 2025 SuperMap Software Co.Ltd. All rights reserved. * This program are made available under the terms of the Apache License, Version 2.0 * which accompanies this distribution and is available at http://www.apache.org/licenses/LICENSE-2.0.html.*/ import {ServiceBase} from './ServiceBase'; import { DatasetService as CommonDatasetService } from '@ciniki/iclient-common/iServer/DatasetService'; import { CreateDatasetParameters } from '@ciniki/iclient-common/iServer/CreateDatasetParameters'; import { UpdateDatasetParameters } from '@ciniki/iclient-common/iServer/UpdateDatasetParameters'; /** * @class DatasetService * @category iServer Data Dataset * @classdesc 数据集信息服务类。提供方法:查询数据集集合、查询指定数据集信息,在指定数据源下新增、修改、删除数据集等。 * @version 11.1.0 * @modulecategory Services * @param {string} url - 服务地址。 * @param {Object} options - 参数。 * @param {string} [options.proxy] - 服务代理地址。 * @param {boolean} [options.withCredentials=false] - 请求是否携带 cookie。 * @param {boolean} [options.crossOrigin] - 是否允许跨域请求。 * @param {Object} [options.headers] - 请求头。 * @extends {ServiceBase} * @usage */ export class DatasetService extends ServiceBase { constructor(url, options) { super(url, options); this._datasetService = new CommonDatasetService(this.url, { proxy: this.options.proxy, withCredentials: this.options.withCredentials, crossOrigin: this.options.crossOrigin, headers: this.options.headers }); } /** * @function DatasetService.prototype.getDatasets * @description 数据集查询服务。 * @example * new DatasetService(url).getDatasets(datasourceName,function(result){ * //doSomething * }); * @param {string} datasourceName - 数据源名称。 * @param {RequestCallback} [callback] 回调函数,该参数未传时可通过返回的 promise 获取结果。 */ getDatasets(datasourceName, callback) { if (!datasourceName) { return; } return this._datasetService.getDatasetsService(datasourceName, callback); } /** * @function DatasetService.prototype.getDataset * @description 数据集查询服务。 * @example * new DatasetService(url).getDataset(datasourceName, datasetName, function(result){ * //doSomething * }); * @param {string} datasourceName - 数据源名称。 * @param {string} datasetName - 数据集名称。 * @param {RequestCallback} [callback] 回调函数,该参数未传时可通过返回的 promise 获取结果。 */ getDataset(datasourceName, datasetName, callback) { if (!datasourceName || !datasetName) { return; } return this._datasetService.getDatasetService(datasourceName, datasetName, callback); } /** * @function DatasetService.prototype.setDataset * @description 数据集信息设置服务。可实现修改已存在数据集,新增不存在数据集。 * @example * new DatasetService(url).setDataset(params, function(result){ * //doSomething * }); * @param {CreateDatasetParameters|UpdateDatasetParameters} params - 数据集创建参数类或数据集信息更改参数类。 * @param {RequestCallback} [callback] 回调函数,该参数未传时可通过返回的 promise 获取结果。 */ setDataset(params, callback) { if(!(params instanceof CreateDatasetParameters) && !(params instanceof UpdateDatasetParameters)){ return; }else if (params instanceof CreateDatasetParameters) { var datasetParams = { "datasetType": params.datasetType, "datasetName": params.datasetName, "datasourceName": params.datasourceName } }else if(params instanceof UpdateDatasetParameters){ datasetParams = { "datasetName": params.datasetName, "datasourceName": params.datasourceName, "isFileCache": params.isFileCache, "description": params.description, "prjCoordSys": params.prjCoordSys, "charset": params.charset } } return this._datasetService.setDatasetService(datasetParams, callback); } /** * @function DatasetService.prototype.deleteDataset * @description 指定数据源下的数据集删除服务。 * @example * new DatasetService(url).deleteDataset(datasourceName, datasetName, function(result){ * //doSomething * }); * @param {string} datasourceName - 数据源名称。 * @param {string} datasetName - 数据集名称。 * @param {RequestCallback} [callback] 回调函数,该参数未传时可通过返回的 promise 获取结果。 */ deleteDataset(datasourceName, datasetName, callback) { return this._datasetService.deleteDatasetService(datasourceName, datasetName, callback); } }