rn_supermap
Version:
rn_supermap 一款基于React-Native框架的移动应用开发工具。基于该开发工具,用户可以使用JavaScript开发语言,开发出在Android和IOS操作系统下运行的原生移动GIS应用,入门门槛低,一次开发,处处运行。
209 lines (179 loc) • 8.09 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Source: QueryParameter.js</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Source: QueryParameter.js</h1>
<section>
<article>
<pre class="prettyprint source linenums"><code>/*********************************************************************************
Copyright © SuperMap. All rights reserved.
Author: Will
E-mail: pridehao@gmail.com
**********************************************************************************/
import {NativeModules} from 'react-native';
let QP = NativeModules.JSQueryParameter;
const NAME_QUERYPARAMETER = "QueryParameter";
/**
* @class QueryParameter
* @description 查询参数类。
用于描述一个条件查询的限制条件,如所包含的 SQL 语句,游标方式等。
条件查询,是查询满足一定条件的所有要素的记录,其查询得到的结果是记录集。查询参数类是用来设置条件查询的查询条件从而得到记录集。
SQL查询,又称属性查询,即通过构建包含属性字段、运算符号和数值的 SQL 条件语句来选择记录,从而得到记录集。
*/
export default class QueryParameter {
/**
* 创建一个QueryParameter对象
* @memberOf QueryParameter
* @returns {Promise.<QueryParameter>}
*/
async createObj(){
try{
var {queryParameterId} = await QP.createObj();
var queryParameter = new QueryParameter();
queryParameter._SMQueryParameterId = queryParameterId;
//Return records in batches. by default, 20 records
//first batch would be return(initial with "1")
queryParameter.size = 10;
queryParameter.batch = 1;
return queryParameter;
}catch (e){
console.error(e);
}
}
/**
* 设置属性过滤器
* @memberOf QueryParameter
* @param {string} attributeFilter - 被过滤的字段
* @returns {Promise.<void>}
*/
async setAttributeFilter (attributeFilter){
try{
typeof attributeFilter == "string" &&
await QP.setAttributeFilter(this._SMQueryParameterId,attributeFilter);
}catch (e){
console.error(e);
}
}
/**
* 设置Group聚合项
* @memberOf QueryParameter
* @param {string[]} groups - 传入要聚合的属性
* @returns {Promise.<void>}
*/
async setGroupBy(groups){
try{
if(testArray(groups)){
await QP.setGroupBy(this._SMQueryParameterId,groups);
}
}catch (e){
console.error(e);
}
}
/**
* 设置查询结果是否包含矢量
* @memberOf QueryParameter
* @param {boolean} has - 是否包含矢量
* @returns {Promise.<void>}
*/
async setHasGeometry(has){
try{
await QP.setHasGeometry(this._SMQueryParameterId,has);
}catch (e){
console.error(e);
}
}
/**
* 设置结果集字段
* @memberOf QueryParameter
* @param {string[]} fields - 设置返回的字段名称
* @returns {Promise.<void>}
*/
async setResultFields(fields){
try{
if(testArray(fields)){
await QP.setResultFields(this._SMQueryParameterId,fields);
}
}catch (e){
console.error(e);
}
}
/**
* 设置返回结果排序
* @memberOf QueryParameter
* @param {string[]} fields - 设置排序的字段名称
* @returns {Promise.<void>}
*/
async setOrderBy(fields){
try{
if(testArray(fields)){
await QP.setOrderBy(this._SMQueryParameterId,fields);
}
}catch (e){
console.error(e);
}
}
/**
* 设置空间查询对象
* @memberOf QueryParameter
* @param {object} geometry - 传入空间查询对象
* @returns {Promise.<void>}
*/
async setSpatialQueryObject(geometry){
try{
await QP.setSpatialQueryObject(this._SMQueryParameterId,geometry._SMGeometryId);
}catch (e){
console.error(e);
}
}
/**
*设置空间查询对象模式
* @memberOf QueryParameter
* @param mode - 传入空间查询模式
* @returns {Promise.<void>}
*/
async setSpatialQueryMode(mode){
try{
console.log("QueryParameter:" + mode);
typeof mode == "number" && await QP.setSpatialQueryMode(this._SMQueryParameterId,mode);
}catch (e){
console.error(e);
}
}
}
function testArray(arr) {
if(!(arr instanceof Array)){
console.error(NAME_QUERYPARAMETER + ":only accept a array as the args.");
return false;
}else if(arr.length < 1){
console.error(NAME_QUERYPARAMETER + ":this is an empty array.");
return false;
}else{
return true;
}
}
</code></pre>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="BufferAnalyst.html">BufferAnalyst</a></li><li><a href="BufferAnalystParameter.html">BufferAnalystParameter</a></li><li><a href="DataDownloadService.html">DataDownloadService</a></li><li><a href="Dataset.html">Dataset</a></li><li><a href="DatasetVector.html">DatasetVector</a></li><li><a href="DatasetVectorInfo.html">DatasetVectorInfo</a></li><li><a href="Datasource.html">Datasource</a></li><li><a href="DatasourceConnectionInfo.html">DatasourceConnectionInfo</a></li><li><a href="DataUploadService.html">DataUploadService</a></li><li><a href="Feature.html">Feature</a></li><li><a href="FeatureSet.html">FeatureSet</a></li><li><a href="GeoLine.html">GeoLine</a></li><li><a href="Geometry.html">Geometry</a></li><li><a href="GeoPoint.html">GeoPoint</a></li><li><a href="GeoRegion.html">GeoRegion</a></li><li><a href="GeoStyle.html">GeoStyle</a></li><li><a href="Layer.html">Layer</a></li><li><a href="LayerSetting.html">LayerSetting</a></li><li><a href="LayerSettingVector.html">LayerSettingVector</a></li><li><a href="LocationManager.html">LocationManager</a></li><li><a href="Map.html">Map</a></li><li><a href="MapControl.html">MapControl</a></li><li><a href="MapView.html">MapView</a></li><li><a href="Navigation2.html">Navigation2</a></li><li><a href="OverlayAnalyst.html">OverlayAnalyst</a></li><li><a href="OverlayAnalystParameter.html">OverlayAnalystParameter</a></li><li><a href="Point.html">Point</a></li><li><a href="Point2D.html">Point2D</a></li><li><a href="QueryParameter.html">QueryParameter</a></li><li><a href="QueryService.html">QueryService</a></li><li><a href="Rectangle2D.html">Rectangle2D</a></li><li><a href="Scene.html">Scene</a></li><li><a href="Selection.html">Selection</a></li><li><a href="ServiceBase.html">ServiceBase</a></li><li><a href="ServiceQueryParameter.html">ServiceQueryParameter</a></li><li><a href="Size2D.html">Size2D</a></li><li><a href="Theme.html">Theme</a></li><li><a href="Track.html">Track</a></li><li><a href="TrackingLayer.html">TrackingLayer</a></li><li><a href="TraditionalNavi.html">TraditionalNavi</a></li><li><a href="Workspace.html">Workspace</a></li><li><a href="WorkspaceConnectionInfo.html">WorkspaceConnectionInfo</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.3</a> on Tue Aug 01 2017 16:16:49 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>